|
[135]. Ancaman-Ancaman
dibalik Source Code HTML
------------------------------------------------------
Author : SPYRO KiD
Contact : spyro_zone@Yahoo.COM
==> www.spyrozone.tk
CopyLEFT (c) 2006
www.spyrozone.tk All Rights Reserved
� 15/07/2006 01:02:59 WIB
------------------------------------------------------
|-------[Table of
Contents]-------|
-----------------------------------
1. Preface
2. Dibalik topeng tampilan web
3. Sumber-sumber ancaman
---3.1 Meta Tag
---3.2 Hidden Field
---3.3 Hyperlink
---3.4 HTML Comment
---3.5 Script Client Side
---3.6 Banner code situs lain
4. Bagaimana cara mendapatkannya?
5. Upaya pencegahan
---5.1 Konfigurasi Robots.txt
---5.2 Mengikuti sudut pandang haCKER
6. Penutup
---6.1 Kesimpulan
---6.2 Referensi
---6.3 Shoutz
-----------------------------------
|---[1]-[Preface]---|
Anggapan bahwa script HTML tidak memiliki ancaman berarti tampaknya harus segera
dibuang jauh-jauh. Bahkan walaupun situs anda dibuat menggunakan bahasa HTML
murni sekalipun tidak menjamin bahwa website anda benar2 aman. Pembahasan saya
kali ini memang tidak membahas khusus tentag web dengan HTML murni(statis),
namun pada beberapa kasus terdapat persamaan ancaman.
---< Seorang haCKER mempunyai pola pikir yang luar biasa. Sedikit saja anda
membiarkan celah terbuka, maka "taman bermain" anda akan direbut oleh mereka.
>---
|---[2]-[Dibalik topeng tampilan web]---|
Setiap hari anda berkelana dari situs satu ke situs lain. Hampir semuanya di
desain semanis mungkin, namun tahukah anda bahwa segala keindahan itu hanyalah
terjemahan browser anda dari serangkaian kode-kode HTML dan script-script yang
tersusun rapi. Ada banyak sekali hal yang tidak ditunjukkan browser anda.
Setiap browser mempunyai opsi untuk menampilkan source code HTML dari halaman
yang sedang diperlihatkannya. Misalnya pengguna internet explorer, anda bisa
melihat source codenya dengan klik [view] [source]. Jelajahilah fitur browser
anda.
|---[3]-[Sumber2 Ancaman]---|
3.1 Meta Tag
------------
Meta tag terletak pada header suatu halaman web. Meta Tag adalah tempat bagi
webmaster untuk memberi informasi singkat mengenai isi situsnya (bisa berupa
kata kunci(keyword), deskripsi singkat dan lain sebagainya). Ini bertujuan agar
informasi tersebut ditangkap oleh search engine, sehingga memperbesar peluang
situsnya untuk ditemukan oleh orang yang kebetulan sedang mencari sesuatu yang
sesuai dengan isi situs tersebut.
Kadangkala Meta tag juga berisi tanggal pembuatan halaman, author, software
penyusun HTML, deskripsi singkat, dll. Pada beberapa kasus, informasi yang
berlebihan bisa membuka celah keamanan. Tidak jarang seorang webmaster yang
menginginkan anonymitas malah membocorkan nama asli atau handle pada meta tag
situsnya.
Example:
<HTML><HEAD><TITLE>WWW.SPYROZONE.TK-The Official Site of SPYRO Kid</TITLE><br>
</HEAD>
Semakin pintar anda memasukkan
kata kunci dan informasi pada meta tag, semakin besar kemungkinan situs anda
muncul dalam hasil crawling Search Engine.
3.2 Hidden Field
----------------
Hidden Field (Field tersembunyi) adakalnya memberikan informasi yang sangat
sensitif. Perhatikan contoh berikut:
<input type = Hidden Name = software Value = �SPYROSoft�><br> <input type =
Hidden Name = ItemCode Value = �GNU255�>
Hidden field diatas tidak memmbocorkan informasi yang membahayakan. Namun
adakalanya seorang webmaster membuat kesalahan fatal.
<input type = Hidden Name = price Value = �69�>
Siapapun dapat dengan mudah mendownload halaman HTML diatas kemudian mengubahnya
sesuka hati :). Kesalahan lain yang lebih membahayakan antara lain:
<input tipe = Hidden Name = _inifile
Value = �cart.ini�>
Kesalahan ini akan menuntun haCKER mengambil konfigurasi troli belanja yang ada
pada cart, dimana kemudian mendapatkan nomor2 kartu kredit. Pada kasus lain
haCKER bisa dengan mudah merusak atau mengirim informasi2 palsu kepada aplikasi
back end. Hal itu tentu sangat membahayakan.
3.3 Hyperlink
-------------
HYperlink dipergunakan untuk menghubungkan sumber2 web, baik dengan website yang
sama ataupun berbeda. Secara umum hyperlink dibagi menjadi dua, yaitu:
1.Hyperlink Internal
Ditandai dengan tag <a href = http://mail.yahoo.com/config/login?/suatu link>
keterangan misalnya untuk menuju halaman utama SPYROZONE.tk saya menggunakan tag
berikut:
<a href = http://mail.yahoo.com/config/login?/�index.HTML�>
Home </a>
Maka ketika anda melakukan klik
terhadap link Home anda akan dibawa menuju lokasi berikut: http://www.SPYROZONE,tk/index.HTML
2.Hyperlink Eksternal
Biasa ditemukan dalam tag form. Misalnya:
<form action=http://mail.yahoo.com/config/login?/cgi-bin/SPYRO.pl method=post><br>
<input type=�text� name=�whatevah� size=�12�><br> <input type=submit value=Bring
It On!><br> </form>
Hyperlink tersebut akan dipanggil dengan menentukan submit informasi yang
nantinya akan terkirim ke http://WWW.SPYROZONE.TK/cgi-bin/SPYRO.pl
Kedua hyperlink diatas memang telah menjadi hal mutlak dalam halaman web. Lalu
sejauh mana Hyperlink membantu seorang haCKER?
Dengan mempelajari dan menelusuri Hyperlink, seorang haCKER dapat menentukan
wilayah aplikasi, mengelompokkannya berdasarkan tipe-tipe tertentu, mencoba
mengerti bagaimana informasi2 itu dilewatkan, dan akhirnya mencari kelemahan
atau mengidentifikasi wilayah2 yang lemah sebagai sasaran penyerangan.
3.4 HTML Comment
----------------
Untuk menuliskan komentar pada HTML, kita tinggal meletakkan komentar didalam
tag . Browser tidak akan menampilkan isi tag tersebut atau dengan kata lain yang
ada diantara tag tersebut tidak akan diproses. Jadi kita hanya bisa tahu dengan
melihat source codenya.
Lalu apa kegunaannya dan sejauh mana hal ini akan sangat-sangat membantu
penyerang?? Para webmaster biasanya meninggalkan revisi history di tag tersbut
sehingga tak jarang haCKER menemukan informasi penting didalamnya.
Para developer juga sering meninggalkan pesan2 yg harusnya hanya boleh diketahui
oleh admin. Tujuan utamanya memang mempermudah admin, misalnya:
<br> <!-- Last Changed by
SPYROkid June 30,2006 --><br> <!-- WWW.SPYROZONE.TK/staff/SPYROkid/oldpage.zip-->
Dengan adanya informasi seperti ini, tim pengelola WWW.SPYROZONE.TK akan tahu
bahwa SPYRO telah melakukan perubahan file pada 30 juni 2006 dan backup halaman
lama ada pada lokasi:
http://WWW.SPYROZONE.TK/staff/SPYROKid/oldpage.zip
Namun ancaman mulai timbul
karena siapapun yang melihat adanya info ini bisa dengan mudah mendownload
halaman backup tersebut untuk mengumpulkan informasi berharga yang memungkinkan.
Tidak hanya itu, dengan melihat struktur url sang attacker bisa mengetahuai
bahwa ternyata ada user bernama SPYROKid di situs tersebut yang berkedudukan
sebagai webmaster. Dengan mengetahui username tersebut, tentunya akan
mempermudah sang attacker jika nantinya akan melakukan brute force misalnya.
pada kasus tertentu, ancaman yang lebih serius adalah sang attacker bisa
mengidentifikasi teknologi dibalik web anda dengan mempelajari HTML comment yang
biasa dibangkitkan oleh web tools secara otomatis.
3.5 Script Client Side
----------------------
Menggunakan Script Client Side adakalanya akan sangat menguntungkan. Kita bisa
memanipulir Cookies, merefresh page otomatis, melakukan perhitungan, dan
melakukan penguraian-penguraian kode tanpa harus berhubungan dengan server. Hal
ini akan membuat sever tidak terlalu sibuk dan menghemat CPU sever karena
semuanya bisa dikerjakan oleh browser Client.
Namun ancaman yang ditimbulkan cukup mengerikan, HaCKER bisa dengan mudah
menyimpan salinan kode web kemudian memanipulasi dan memodifikasi Script Client
Side, membukanya kembali lewat browser lalu men-submit ke server sehingga sever
akan memperoleh informasi keliru yang bisa menguntungkan sang HaCKER.
3.6 Banner Code Situs Lain
--------------------------
Adakalanya situs-situs besar menyertakan banner code untuk memudahkan pengunjung
yang berniat membantu mempromosikan situs tersebut. User bisa mengcopy code
banner yang telah disediakan kemudian mem-paste ke dalam halaman situsnya
sendiri. Biasanya Code Banner akan menampilkan gambar yang akan menuju situs
yang dipromosikan saat di-klik. Contoh code banner yang �aman� ialah :
<br> <a href=http://mail.yahoo.com/config/login?/�http://WWW.SPYROZONE.TK� _ <img
src=http://mail.yahoo.com/config/login?/�http://WWW.SPYROZONE.TK/SPYROlink.gif�
width=�39� height=�30� alt=�Share with us in SPYRO Zone!�></a><br>
Banner code diatas menyertakan kode ukuran banner pada tag width=�30� Mengapa
dikatakan aman? sebelum menjawabnya kita perhatikan dulu code yang sedikit
membahayakan berikut :
<br> <a href=http://mail.yahoo.com/config/login?/�http://WWW.SPYROZONE.TK�
_ src=http://mail.yahoo.com/config/login?/�http://WWW.SPYROZONE.TK/SPYROlink.gif
alt=�Enter SPYRO Zone!�></a><br>
Kode banner kedua tidak menyertakan deskripsi ukuran dimensi file SPYROlink.gif
yang akn ditampilkan pada halaman web. Hal ini berbahaya karena jika seorang
penyerang berhasil merusak halaman situs WWW.SPYROZONE.TK, maka ia tidak hanya
berhasil merusak halaman situs WWW.SPYROZONE.TK saja tetapi juga semua situs
yang menyertakan banner WWW.SPYROZONE.TK.
Penyerang bisa me-replace file banner.gif dengan sebuah gambar berukuran super
jumbo. Karena script banner tidak menentukan ukuran banner, maka gambar milik
attacker aka tampil apa adanya dan bisa merusak tampilan web.
Berbeda jika script banner yang digunakan mendeskripsikan secara jelas ukuran
bannernya seperti pada saat script pertama. Walaupun penyerang mereplace file
banner pada sever WWW.SPYROZONE.TK dengan gambar berukuran raksasa, gambar itu
hanya akan tampil sesuai dengan script yaitu dengan lebar �39� dan tinggi �30�.
|---[ 4 ]---[ Bagaimana Cara Mendapatkannya ? ]---|
Cukup merepotkan memang bila kita harus menelusuri satu persatu halaman web
untuk mengumpulkan informasi-informasi diatas. Tapi saya memiliki tips bagi anda
:
1. Gunakan Search Engine
----------------------------
Anda bisa memanfaatkan ketangguhan Google.com untuk mendapatkan informasi
tersebut. Tapi cara ini hanya efektif jika web korban anda cukup popular.
Misalnya anda ingin mencari field-field tersembunyi pada situs korban.net maka
ketik saja keyword pada google :
�type=hidden� and �name=price� site : korban.net
Maka akan ditampilkan semua hidden field yang berkaitan dengan harga barang pada
situs korban.net.
2. Tool Otomatis
--------------------
Anda bias juga memanfaatkan beragam tool yang biasa digunakan para HaCKER.
Misalnya dengan Wget dari GNU untuk melakukan mirror copy situs korban dan
menyampaikan ke system local untuk kemudian menelusuri kode-kode atau mencari
sumber-sumber informasi yang anda inginkan dengan memakai grep.
Misalnya kini situs korban sudah dibuat mirror pada system local, anda ingin
mencari informasi Hidden field. Maka anda bisa menggunakan perintah grep dengan
pola syntaks sebagai berikut :
Grep � r � i �hidden� *
|---[ 5 ]--- [ Upaya-upaya Pencegahan ] ---|
5.1 Konfigurasi Robots.txt
-----------------------------
Untuk mencegah web crawler menjelajahi halaman tertentu, anda bisa mengaturnya
pada konfigurasi file robots.txt. Lebih jauh mengenai hal ini and abaca pada
tulisan saya dengan judul �Mencegah Google Hacking� yang ada pada situs saya
WWW.SPYROZONE.TK. Anda juga bisa menggunakan Robots.txt generator yang telah
saya sediakan di member area pada situs yang sama.
5.2 Mengikuti Sudur Pandang HaCKER
-------------------------------------
Ini merupakan cara yang paling efektif. Pandanglah aplikasi web anda seperti
layaknya seorang HaCKER memandang aplikasi anda. Selalu utamakan keamanan
walaupun anda sedang dikejar deadline sekalipun. Jangan mudah percaya pada
setting-setting default dan hindari penggunaan script Client Slide untuk halaman
dengan informasi yang sensitif. Gunakan Script Client Side hanya sebatas sebagai
penghias situs agar terlihat lebih hidup atau untuk validasi informasi yang
tidak terlalu penting.
|---[ 6 ]---[ Penutup ]---|
6.1 Kesimpulan
-----------------
Seorang HaCKER selalu mampu berpikir keluar dari kerangka permasalahan. Sedikit
saja anda membiarkan serpihan-serpihan kecil itu bisa jadi akan disusun secara
menakjubkan oleh sang HaCKER yang berujung pada seragam mematikan. Karena itu
selalu waspadalah.
6.2 Referensi
-------------
>> www.w3.org
>> www.securityfocus.com
6.3 Shoutz
-------------
- Vindika Anastasya, Noviyati & Nadifah, you are the deepest love I�v ever had
:)
- Vermounth Anastasya, my young sister, Rahma Octaviani.
- Semua staff Crack Sky
- All people in SMAN 2 Sidoarjo khususnya 3 IPA 3, semua zoners and Echoers..
and sectorers.. keep learning & happy Hacking !
/* ------------------------------|EOF|------------------------------ */
|