3 Januari 2011

Eksekusi BUG Pada CMS Sebelum Terjadi Serangan


Allhamdulillah.... Sampai juga kita di Tahun 2011, Halo Kawan !! Bagaimana liburan kalian ??
Anggap lah ini sebuah episod, meski hanya sebuah tulisan dan bukan sebuah sinetron, semoga bisa memberi manfaat, Amin...

Baiklah guys, blog ini akan sedikit menyinggung mengenai ke amanan WEB. Buat ente yang sering bermain dengan script php untuk konsumsi hosting, tidak ada salahnya bila ente menyunting nya kembali. Pertimbangan ini dilakukan karena alasan keamanan web, sebab tidak menutup kemungkinan script tersebut tidak terdapat Bug yang justru di manfaatkan para includer-includer dunia maya untuk melakukan Exploit Ria terhadap system abang. Hacker selalu saja mengitai sebuah system guna mencari bug yang ada, dari sini lah sang demit melumpuhkan system dan selanjutnya melakukan exploit dan bla bla bla....

Sebelum kita melakukan Pertolongan pertama pada Kasus ini (P3K,, xixixixi... Biar enggak infeksi), baiknya kita kupas setajam silet _(apa lagi nih, kayak nge-gosip aja :-P) tentang Bug-Bug yang sering menjadi sasaran exploit sang hacker, diantaranya: XSS (Cross Site Scripting), SQL Injection, RFI ( Remote File Inclusion).

Baik, pisau dan siletnya sudah siap? Kita akan kupas sekarang.

Cross Site Scriping

Lebih dikenal dengan sebutan XSS. Kesalahan ini terjadi karena tidak adanya filtering pada html maupun java script. Tetapi pada dasarnya defacing ( perubahan kontent ) hanya terjadi disisi client saja. Yang paling fatal dari bug ini adalah hacker dapat mencuri cookie kemudian menggunakannya untuk berbuat sesuatu yang … ~~

SQL Injection

SQL Injection sebenarnya terjadi karena seorang attacker yang mencoba melakukan inject query sql melalui form ataupun via address bar pada browser internet. Sebagai contohnya ketika si hacker mencoba login sebagai admin pada situs pemerintah Sumatra Selatan ( http://www.sumsel.go.id ). Dengan menggunakan query ‘ or 1=1 Dia pun berhasil login. Pada dasarnya ‘ atau single quote dan or 1=1 itu berfungsi untuk membingungkan si server sql, sehingga yang dilakukan oleh server sql adalah menjalankan query ” select * “. Yang terjadi adalah si hacker diloloskan untuk login sebagai admin.

RFI ( Remote File Inclusion )

include_one RFI sendiri terjadi karena kesalahan programmer ketika melakukan coding, yakni menggunakan variable dalam fungsi-fungsi tersebut. Apabila user memasukkan url evil script miliknya pada variable yang digunakan dalam fungsi require ataupun include, yang terjadi adalah evil script tersebut dapat dieksekusi secara remote, dengan kata lain, attacker dapat menjalan command di server milik anda untuk merubah konten situs atau bahkan merusaknya. ~~ lebih jauh mengenai include_one RFI ntar ane bikinin postingan khusus di lain waktu.

Pengecekan BUG

Pengecekan bug sendiri bisa dilakukan secara manual. Hmmm … tentunya ini akan memakan banyak waktu. Disini kita memakai bantuan sebuah tools yang dapat secara cepat dan otomatis menemukan bug-bug yang terselip di php script secara tidak sengaja maupun sengaja.
~ Pada dasarnya untuk mengecek bug dapat dilakukan secara online maupun offline. Ane sarankan pengecekan bug ini dilakukan di localhost ente ( offline ) saja.

Cek Bug XSS

Tools untuk mengecek XSS pada script php milik anda adalah sebuah addons mozilla firefox yang disediakan secara gratis. Penginstallannya pun tergolong mudah, berikut juga cara penggunaannya. Tools tersebut dapat anda download disini :
http://www.securitycompass.com/ exploit_me/xssme/xssme-0.2.1.xpi

Cek Bug SQL Injection

Untuk periode saat ini defacing dengan SQL Injection digolongkan paling favorit dan tentunya paling banyak digunakan, mungkin karena penyerangan yang dilakukan cukup mudah, cukup memiliki dasar pengetahuan syntax sql. Lagi-lagi sebuah addons mozilla firefox yang cukup ampuh dan mudah digunakan telah disediakan untuk melakukan cek bug sql injection. Anda dapat mendownloadnya disini :
http://www.securitycompass.com/exploit_me/sqlime/sqlime-0.2.xpi
Penggunaanya pun tidak terlalu sulit. Cek BUG Remote File Inclusion Sebelumya anda download terlebih dahulu scriptnya disini http:// www.newhack.org/dl_jump.php?id
Setelah itu silahkan download active perl, compiler interpreter ini nantinya digunakan untuk menjalankan script inclusionscanner.pl. Dan kemudian copykan inclusionscanner.pl tersebut ke direktori c:\perl\bin

Langkah selanjutnya :
1. Masukkan script yang akan anda scan kedalam sebuah direktori di c:\perl php.
exp :
c:\perl\wordpress.
2. Masuk ke command prompt, start | run | cmd | enter
3. Setelah itu masuk ke direktory c:\perl\bin, cd
c:\perl\bin
4. Jalankan scriptnya,


C:\Perl\bin>perl.exe inclusionscanner.pl

#Will check a directory for all includes and unsets
#Coded by Ironfist (ironsecurity.nl)
#Usage: create a folder in your perlfolder and put the files to be scanned in it
, next type the folder name below (eg myfolder)
#GIVES ERRORS WHEN CHECKING SUBFOLDERS: IGNORE THEM Directory to read?
c:\perl\wp
kemudian lihat hasilnya di
c:\perl\bin \result.html

berikut hasil scan ketika penulis mencoba untuk melakukan cek inclusion pada wordpress-2.3.3 :

FOUND: require_once($locale_file);
in c:\perl\wp/wp-settings.php
FOUND: require_once($import_root . ‘ /’ . $file);
in c:\perl\wp/wp-admin/import.php
FOUND: include_once($this- >PluginDir . “class-smtp.php”);
in c:\perl\wp/wp-includes/class- phpmailer.php
FOUND: include ($lang_path. ’phpmailer.lang-’. $lang_type.’.php’);
in c:\perl\wp/wp-includes/class- phpmailer.php
FOUND: include ($lang_path. ’phpmailer.lang- en.php’);
in c:\perl\wp/wp-includes/class- phpmailer.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: include ($template);
in c:\perl\wp/wp-includes/template- loader.php
FOUND: require_once ($_template_file);
in c:\perl\wp/wp-includes/ theme.php

woww !!! ~~ silahkan di exploit deh di patch script milik anda. ~~

1 komentar:

farid mengatakan...

makasih gan infonya
bermanfaat skali

My Profile

Foto Saya
Mac Osqy
Kalibaru, Banyuwangi, Indonesia
Aku orang nya biasa-biasa aja, kepada siapa aja ramah, santun dan segan... normal-normal aja sepertinya sama seperti yang lain. travelling adalah hoby ku, meski dengan modal pas-pasan dan bondo tekat, lawan aja asal hati senang.... dunia nyata sampai maya pun aku coba tembus dengan sebuah harapan tertentu... hal terburuk yang paling membingungkan adalah target, hmmm... bikin badan Keook aja, ampun deh pokoknya! seni merupakan mainan kecilku tanpa harus tau apa itu C+, C++, binary dan asembly yang menjadi buyut sebuah bahasa... Namanya juga LAMER bisa apa??? tapi aku harus tetap berkarya meski hanya dengan modal mesin dari keluarga Penryn, dan selalu berharap bisa meminang keluarga Clarksfield nantinya.
Lihat profil lengkapku

Music

Diberdayakan oleh Blogger.

Pageviews

Facebook

Banner 468x60

Navigation

Popular Posts

Blogroll

About

Blogger templates

IP

Blogger news

user online

Followers