Thursday, October 12, 2017

WRITE-UP CHALLENGE 2 WEBHACKING

Đề bài:



Sau khi mình kiểm tra page source, mình nhận thấy có 1 trang admin bị ẩn giấu, cùng với một dòng chú thích rất khả nghi, đó là: 
<!--2017-10-12 09:38:52-->




Trang /admin bắt mình nhập một password gì đó.


Bây giờ mình tìm thử trong HTTP Header xem thì thấy trong Cookie có thêm giá trị là time:

time = 1507811932;

Sau một hồi kiểm tra các trang còn lại mình phát hiện ra có một trang  board có 1 thẻ input cho phép nhập:




Sau một hồi convert time các kiểu, mình chả phát hiện ra được gì...@@ có các trang cho nhập password thì mình nghĩ nó có liên qua đến SQL injection, Sau đó mình gặp được dạng SQL injection ở cookie. mình thử test ở giá trị time trong Cookie xem như thế nào và mình phát hiện được điều mình mong muốn.

Cụ thể như sau: 

+ Mình thử giá trị time trong Cookie time = 1507811932 and 1=1;

Nhận được trong page source của trang index là:

 <!--2070-01-01 09:00:01-->
+Sau đó mình thử với time = 1507811932 and 1=0; và nhận được:
<!--2070-01-01 09:00:00-->
Nếu câu truy vấn của mình đúng thì trả về  <!--2070-01-01 09:00:01--> ngược lại, nếu mình sai sẽ trả về <!--2070-01-01 09:00:00--> => đây là dạng SQL injection Blind. đặc biệt ở đâu là chúng ta sẽ Blind trên Cookie.
Mục tiêu của mình là Blind 2 cái password:
+Một là password đăng nhập trang admin.
+Hai là password trang FreeB0aRd.
Ở đây mình đoán là tên các bảng chứ có chứa password là admin và  FreeB0aRd.
Code python Blind Password:

Sau khi chạy code mình có kết quả bao gồm: tên database, password của trang admin, cùng với password ở trang FreeB0aRd.

Mình đăng nhập vào thẻ input ở trang FreeB0aRd và có được 1 link tải về manual:


Còn password admin mình đăng nhập vào trang admin để xem có gì @@:

Bảo mình xem cái manual kia: @@. tải về xem^.^

Mình không ngờ nó chơi lầy:

Quay lại trang lúc nãy mình thấy có cái pass kia. Vác nó sang thử xem và ok!!!

Cuối cùng cũng xong: