Pertama kalinya, saya tidak mendeface,
dan tidak akan pernah melakukannya. Jadi bagaimana saya mengetahui cara
mendeface? saya kira saya hanya melihat cara orang-orang mendeface dan
saya bukanlah ahlinya dalam hal ini. Jika saya melakukan kesalahan maka
saya mohon maaf. Ini adalah cara sederhana saat anda memikirkan bahwa
mendeface itu hanya sekedar mengganti file di suatu computer. Saat ini,
mencari exploit merupakan hal pertama, exploit yang sesungguhnya buah
dari keterampilan, pengetahuan para hacker yang sejati. Saya tidak
menganjurkan agar anda mendeface semua website, apalagi untuk
mendapatkan credit card, password, source code, info billing, database
email dsb... (sungguh anda benar-benar perusak yang tidak tahu diri).
Tutorial ini terdiri dari 3 bagian utama, yaitu:1. Celah Keamanan Host2. Menyusup3. Menghapus Jejak
Sangat mudah, dan saya akan menunjukkan hal tersebut kepada anda.
1. Celah Keamanan HostAda dua kategori script kiddies: pertama,
seseorang yang melakukan scan di internet pada suatu host yang memiliki
celah keamanan dengan exploit tertentu dan mencari website tertentu
untuk mencoba berbagai exploit. Kelompok pertama ini melakukan scanning
ribuan situs dengan suatu exploit tertentu. Mereka tidak peduli siapa
yang mereka hack, dan untuk apa. Mereka tidak memasang target dan tidak
memiliki tujuan yang pasti. Menurut pendapat saya orang-orang ini
memiliki alasan yang terlalu dibuat-buat seperti:
- "Saya hanya memastikan agar mereka mengupdate web security-nya"-
"Saya hanya menyampaikan pesan politis saja kok!"- "Saya melakukan
deface untuk mendapatkan perhatian media massa"
Orang-orang yang mendeface menjadi terkenal atau untuk menunjukkan
bahwa mereka sangat terampil dan hebat, perlu kedewasaan dan menyatakan
bahwa ada cara yang lebih baik ketimbang melakukan deface dengan alasan
yang dibuat-buat.
Scanning Script Kiddie: Anda perlu mengetahui adanya celah keamanan,
entah itu pada service yang dijalankan, sistem operasi atau file
CGI-nya. Bagaimana cara anda mengetahui adanya celah keamanan? Versi
berapa yang dijalankan? anda perlu mengetahui bagaimana mencarinya
exploit web di internet (dengan google.com). Menggunakan suatu script
untuk scanning range ip pada port tertentu yang memiliki celah keamanan.
Atau menggunakan
http://www.netcraft.com/
untuk mengetahui jenis server, sistem operasi dan aplikasi yang
dijalankan (frontpage, php, asp, dsb..). nMap dan port scanner lainnya
dapat melakukan scanning dengan cepat terhadap ribuan ip pada suatu port
yang terbuka. Ini merupakan teknik favorit bagi mereka yang ingin
melakukan hacking secara massal.
Website Target Script Kiddie: Sebaiknya para script kiddies melakukan
hack pada berbagai website lawas. Langkah utama adalah mengumpulkan
informasi situs tersebut sebanyak mungkin. Mencari sistem operasi yang
dijalankan melalui netcraft.com atau menggunakan: telnet
http://www.site.com/
80 kemudian GET /HTTP/1.1 mencari service apa yang dijalankan melalui
port scan. Mencari spesifikasi service dengan melakukan telnet. Mencari
berbagai script CGI, atau file-file lainnya yang memungkinkan anda
mengakses server tersebut dengan mengeksploitasi /cgi /cgi-bin dan
browsing ke website tersebut.
Setelah mencari berbagai informasi yang anda miliki selanjutnya anda dapat melakukan:
2. PenyusupanUntuk melakukan hal ini anda dapat mencari berbagai
exploit yang dapat digunakan untuk mengakses website tersebut. JIka anda
melakukan scanning dan anda akan mengetahui exploit apa yang tepat
untuk digunakan. Dua temnpat utama untuk mencari exploit adalah melalui
website
http://www.securityfocus.com/ dan
http://www.packetstormsecurity.org/.
Setelah mendapatkan exploit, periksa dan pastikan bahwa exploit
tersebut memang untuk versi service, sistem operasi, script dsb yang
dijalankan. Exploit umumnya dibuat menggunakan dua bahasa pemrograman
yaitu C dan Perl. Script Perl memiliki ekstensi .pl atau .cgi, sedangkan
C memiliki ekstensi .c, untuk mengkompilasi suatu file C (pada sistem
*nix) gunakan perintah gcc -o exploit12 file.c lalu: ./exploit12.
Sedangkan untuk Perl cukup melakukan perintah chmod 700 file.pl
(sebenarnya tidak diperlukan) lalu: file Perl.pl. Ini hanyalah teknik
kompilasi yang sederhana atau hanya teori kemungkinan exploit. Lakukan
saja sedikit penelitian bagaimana cara menggunakannya. Hal lain yanganda
perlukan untuk memeriksa apakah exploit tersebut merupakan remote atau
local. Jika exploit lokal maka anda harusmemiliki suatu account atau
akses secara fisik pada computer tersebut. Jika remote maka anda dapat
melakukannya melalui jaringan (internet).
Jangan hanya bisa mengkompilasi exploit, ada satu hal penting yang perlu anda ketahui yaitu:
Menghapus JejakSetelah anda mendapatkan informasi mengenai host
dengan tujuan mencari suatu exploit yang cocok yang memungkinkan anda
menyusup. Mengapa tidak segera melakukannya? masalahnya adalah menghapus
jejak hacking anda tergolong sulit, sulit diprediksi. Hanya karena anda
meng-"kill" sys log tidak berartibahwa anda tidak terlacak oleh logger
atau IDS (Intrusion Detection System) yang dijalankan. Banyak sekali
script kiddies yang meremehkan kemampuan para admin yang hostnya mereka
jadikan sasaran. Sebagai gantinya para script kiddie mencoba menggunakan
account isp kedua untuk memulai hacking, memang akan terlacak tapi
takkan tertangkap. JIka anda tidak memiliki fasilitas ini maka anda
HARUS memiliki banyak wingate, shell account atau trojan untuk melakukan
bounce off. Menghubungkannya secara bersamaan akan menyulitkan
seseorang melacak keberadaan anda.Log pada wingate dan shell seringkali
dihapus setelah 2-7 hari. Meski log dipelihara seluruhnya, tetap sulit
bagi admin untuk melacak lebih jauh wingate atau shell-nya script kiddie
sebelum log tersebut harus dihapus. Dan jarang sekali seorang admin
memperhatikan dengan seksama terjadinya suatu serangan, bahkan kecil
kemungkinannya mau mengejar attacker, yang penting bagi mereka adalah
mengamankan box mereka dan melupakan yang telah terjadi.
Untuk alasan keamanan, jika anda menggunakan wingate dan shell,
jangan melakukan apapun untuk mem-"pissed off" admin terlalu banyak
(yang membuat mereka memanggil otorisasi atau mencoba melacak keberadaan
anda) dan hapuslah log anda agar aman. Bagaimana cara melakukannya?
Ringkasnya, kita memerlukan beberapa wingate. Wingate secara alami
cenderung mengubah ip atau shutdown sepanjang waktu, jadi diperlukan
daftar terbaru atau program yang melakukan scan di internet. Anda dapat
mendapatkan daftar wingate yang up to date di
http://www.cyberarmy.com/lists/wingate/ atau anda juga bisa menggunakan program yang disebut winscan. Nah anggaplah anda memiliki 3 wingate:
212.96.195.33 port 23 202.134.244.215 port 1080 203.87.131.9 port 23
Untuk menggunakannya jalankan telnet dan hubungkan ke port 23, akan terlihat respon seperti ini:
CSM Proxy Server >
Untuk menghubungkan ke wingate berikutnya kita ketikkan ip:port seperti ini:
CSM Proxy Server >202.134.244.215:1080
JIka terjadi error maka proxy yang coba anda hubungi tidak ada atau
anda harus login ke proxy. Jika semuanya berjalan dengan baik, anda akan
mendapatkan 3 rangkaian dan shell account yang terhubung. Pada shell
account tersebut anda dapat melakukan link shell bersamaan dengan:
[j00@server j00]$ ssh 212.23.53.74
Anda memperoleh free shell yang bekerja hingga mendapatkan shell
lainnya yang dihack, berikut ini daftar dari free shell account. Ingat,
mendaftarlah dengan informasi palsu dan jika memungkinkan, melalui suatu
wingate.
SDF (freeshell.org) -
http://sdf.lonestar.org/ GREX (cyberspace.org) -
http://www.grex.org/ NYX -
http://www.nxy.net/ ShellYeah -
http://www.shellyeah.org/ HOBBITON.org -
http://www.hobbiton.org/ FreeShells -
http://www.freeshells.net/ DucTape -
http://www.ductape.net/ Free.Net.Pl (Polish server) -
http://www.free.net.pl/ XOX.pl (Polish server) -
http://www.xox.pl/ IProtection -
http://www.iprotection.com/ CORONUS -
http://www.coronus.com/ ODD.org -
http://www.odd.org/ MARMOSET -
http://www.marmoset.net/ flame.org -
http://www.flame.org/ freeshells -
http://freeshells.net.pk/ LinuxShell -
http://www.linuxshell.org/ takiweb -
http://www.takiweb.com/ FreePort -
http://freeport.xenos.net/ BSDSHELL -
http://free.bsdshell.net/ ROOTshell.be -
http://www.rootshell.be/ shellasylum.com -
http://www.shellasylum.com/ Daforest -
http://www.daforest.org/ FreedomShell.com -
http://www.freedomshell.com/ LuxAdmin -
http://www.luxadmin.org/ shellweb -
http://shellweb.net/ blekko -
http://blekko.net/
Setelah sebelumnya mendapatkan shell, anda dapat mengkompilasi
exploit, dan anda menjadi sulit dilacak. Agar lebih yakin, hapuslah
semua bukuti yang menunjukkan keberadaan anda.
Baiklah, ada beberapa hal pada sisi server yang para script kiddies
perlu ketahui. Keharusan untuk mengedit atau menghapus log. Script
Kiddies sejati munkin menggunakan suatu rootkit yang secara otomatis
dapat menghapus log. Ada 2 log utama daemon yang akan saya jelaskan,
yaitu klogd yang berupa log kernel, dan syslogd yang berupa log sistem.
Langkah pertama untuk melakukan "kill" daemon tersebut agar tidak me-log
apapun tindakan anda.
[root@hacked root]# ps -def | grep syslogd [root@hacked root]# kill -9 pid_of_syslogd
Pada baris pertama kita menemukan pid syslogd, sedangkan baris kedua
kita melakukan "kill" daemon tersebut, anda juga dapat menggunakan
/etc/syslog.pid untuk mencari pid syslogd.
[root@hacked root]# ps -def | grep klogd [root@hacked root]# kill -9 pid_of_klogd
Langkah yang sama kita gunakan pula terhadap klogd
Sekarang default logger telah di kill, maka script kiddies perlu
menghapusnya dari log. Untuk mencari dimana syslogd menaruh log, periksa
file /etc/syslog.conf. Tentunya jika anda tidak peduli kalau admin
mengetahui bahwa anda menghapus seluruh log. Dalam hal ini anda
benar-benar seorang "perusak", seorang defacer sialan, sang admin akan
mengetahui bahwa box mereka disusupi saat website tersebut terdeface.
Jadi tidak ada point yang ditambahkan log tersebut, mereka akan
menghapusnya. Adapun alasannya adalah agar para admin tidak mengetahui
bahwa telah terjadi pembobolan. Saya akan menuliskan alasan utama
orang-orang ini membobol suatu box (system).
Mendeface website - lamer, tidak ada tujuan, hanya ingin merusak sistem.
Sniffing password jaringan - ada beberapa program yang memungkinkan
anda melakukan sniff password yang dikirimkan dari dan ke suatu sistem.
Jika sistem ini berada pada jaringan ethernet maka anda dapat melakukan
sniff packet (yang berisikan password) yang diperuntukkan pada berbagai
sistem dalam segment tersebut.
Melakukan DDoS attack. - lamer, sang admin memiliki banyak kesempatan
untuk memperhatikan bagaimana anda mengirimkan ratusan MB melalui
koneksinya.
Melakukan serangan lain pada suatu sistem - teknik ini dan sniffing
diatas sangat umum digunakan, bukan pekerjaan lamer. Anda mengetahui
bagaimana dengan suatu rootshell anda dapat melancarakan serangan dari
sistem ini sebagai ganti dari keterbatasan freeshell. Anda memiliki
kendali mutlak terhadap log dari shell tersebut.
Memperoleh Informasi Sensitif - Beberapa sistem perusahaan memiliki
informasi berharga seperti database Credit Card, source code piranti
lunak, daftar username/password, dan informasi rahasia lainnya yang
diinginkan seorang hacker.
Untuk belajar dan bersenang-senang - banyak orang melakukannya demi
sensasi hacking dan menambah pengalaman. Saya tidak melihat hal ini
sebagai suatu kejahatan sepanjang tidak merusak apapun. Kenyataannya
beberapa orang hacker bahkan menolong admin tersebut melakukan patch
terhadap 'hole' yang ditemukan. Meski tergolong ilegal, asalkan tidak
menghancurkan sistem orang lain.
Saya akan menjelaskan dasar-dasar file log seperti: utmp, wtmp,
lastlog, dan .bash_history. File-file ini biasanya berada di /var/log/
tapi saya dengar juga bisa ada di /etc/ /usr/bin dan tempat lainnya.
Pada kebanyakan sistem yang berbeda langkah terbaik adalah melakukan
find / -iname 'utmp'|find / -iname 'wtmp'|find / -iname 'lastlog'. dan
juga mencari melalui direktori /usr/ /var/ dan /etc/ pada log lainnya.
Sekarang akan saya jelaskan ketiga file ini:
utmp merupakan file log yang mencatat siapa saja yang mengakses
sistem, saya pikir anda dapat melihat mengapa log ini harus ditambahkan.
Karena anda tidak ingin membiarkan siapapun mengatahui bahwa anda
berada dalam sistem tersebut.
wtmp merupakan file log yang mencatat proses login dan logout,
tentunya anda tidak ingin pula hal ini diketahui oleh admin. Harus
diedit untuk menunjukkan bahwa anda tidak pernah login atau logout dan
lastlog yang merupakan suatu file yang mencatat rekaman seluruh
aktifitas login. Selain itu history dari shell yang anda gunakan juga
mencatat seluruh perintah yang anda ketikkan, anda harus mencari pada
direktori $ HOME dan mengeditnya.
.sh_history, .history, dan .bash_history merupakan nama umum, yang
harus diedit bukan dihapus. Jika anda menghapusnya sama saja
memberitahukan kepada admin bahwa "Yuhuuu, Sistem Anda Kebobolan!". Para
Newbie Script Kiddies seringkali mendeface dan diikuti rm -rf/ agar
aman. Sebisa mungkin hindari hal ini kecuali anda memang rada-rada
sinting. Dalam kasus ini saya sarankan agar tidak mencoba
mengeksploitasi sistem lagi. Cara lain untuk mencari file log adalah
menjalankan suatu script yang memeriksa file-file terbuka (dan secara
manual melihatnya untuk menentukan apa saja yang di-log) atau mencari
file yang sudah diedit, melalui perintah seperti: find / -ctime 0 -print
Ada beberapa script populer yang dapat menyembunyikan keberadaan anda
dari log seperti: zap, clear, dan cloak. Zap berfungsi untuk mengganti
keberadaan anda pada log dengan angka 0, sedangkan Clear akan menghapus
log dari keberadaan anda, dan Cloak akan mengganti kehadiran anda dengan
informasi lain. Menurut pengalaman saya, acct-cleaner cukup berat
digunakan script untuk menghapus log account. Banyak rootikit yang
memiliki script penghapus log, dan saat menginstallnya log tidak akan
mengetahui keberadaan anda. Jika anda berada pada sistem NT, maka file
log-nya ada di C:\winNT\system32\LogFiles\, hapus file ini, para admin
NT seringkali tidak memeriksa atau mengetahui artinya bila terhapus.
Hal terakhir mengenai penghapusan jejak, saya tidak akan menjelaskan
secara rinci mengenai hal ini karena membutuhkan suatu pembahasan
tersendiri. Saya hanya membicarakan mengenai rootkit. Apakah rootkit
itu? Mereka ini digunakan secara luas guna menghapus jejak anda saat
memasuki suatu sistem. Menjadikan anda tetap "hidden" dalam sistem.
Login tanpa password, tidak di log oleh wtmp atau lastlog dan bahkan
tanpa perlu ada pada file /etc/passwd. Dengan rootkit ini membuat
perintah seperti ps untuk menyembunyikan proses, jadi tak seorangpun
mengetahui program apa yang sedang anda jalankan. Mereka mengirimkan
laporan palsu pada netstat, ls dan seolah-olah semuanya berjalan dengan
normal. Oh, jangan senang dulu, ada beberapa kelemahan dari rootkit,
pada beberapa perintah yang dilakukan menimbulkan keanehan karena binary
tidak bekerja secara benar. Mereka juga meninggalkan fingerprint (cara
mengetahui bahwa file ada dalam rootkit). Hanya admin yang hebat saja
yang dapat memeriksa rootkit, jadi hal ini bukanlah ancaman serius, tapi
patut dipertimbangkan. Rootkit dibuat dengan suatu LKM (loadable kernel
modul) yang sangat ideal untuk menyembunyikan keberadaan anda dan
kebanyakan admin tidak mengetahui adanya aktifitas mencurigakan.
Dalam menulis tutorial ini saya mengikutkan perasaan. Saya tidak
ingin ada lagi script kiddies yang melakukan scanning ratusan website
untuk dieksploitasi. Saya tidak ingin nama dan nickname saya dicatut.
Saya sudah lelah mendengar orang-orang berkata seperti ini, "Tidak ada
sistem komputer yang aman 100%, Update webserver anda, Hacked by
....dst." Meninggalkan nick atau nama kelompok mereka kemudian kabur
begitu saja. Saya rasa banyak orang-orang yang ingin mempelajari segala
sesuatu dengan tujuan membobol sistem, yang seringkali disamarkan atas
nama ilmu pengetahuan.
Tutorial ini mencoba mengatakan bahwa betapa sederhananya memasuki
suatu sistem. Namun bukanlah panduan lengkap, saya tidak menjelaskan
banyak hal. Saya harap admin menemukan tutorial ini dan merasa terbantu,
mempelajari bahwa website-nya harus dijaga dan sering melakukan patch.
Melindungi diri sendiri dengan IDS dan menemukan berbagai celah keamanan
pada sistem anda sendiri (menggunakan vuln scanner). Juga mengatur
setting sistem eksternal untuk melakukan log bukanlah ide yang buruk.
Para admin seharusnya melihat beberapa pemikiran script kiddies dan
mempelajari beberapa hal yang mereka lakukan... dan menangkap basah
mereka yang membobol sistem anda. Adil khan?
Ingatlah, Mendeface sama dengan perusak (lamer). Saya banyak
mengetahui orang-orang yang melakukan deface dan sekarang menyesalinya.
Anda hanya akan menjadi script kiddie dan tetap seorang lamer abadi.
sekian. trima kasih!!!