Bài viết này Hướng dẫn khai thác lỗi CSRF trang banbuon.tk, mình sẽ gửi source website ở cuối bài để các bạn lấy về demo.
CSRF ( Cross Site Request Forgery ): là hình thức tấn công web dựa vào quyền của một ai đó để thực thi những câu lệnh mà mình không làm được, là hình thức “mượn gió bẻ măng” hay “mượn dao giết người”( hihi nói vui thôi) nhưng bản chất của nó là vậy.
– Phát hiện website bị lỗi CSRF: Nếu website cho phép thực hiện các chức năng thông qua các request GET hoặc POST cố định thì có khả năng mắc lỗi CSRF. Tức là nếu mình replay lại được request POST hoặc GET trên thì có khả năng là website sẽ mắc lỗi.
– VD: Dịch vụ Internet Banking của một ngân hàng có chức năng chuyển tiền giữa các tài khoản. Đường link chuyển tiền từ tài khoản A sang tài khoản B có dạng sau: http://www.nganhang.com/bank/chuyentien/sendfund.php?sender=A&receiver=B&amuont=100000000
trong đó sender là người gửi tiền, receiver là người nhận tiền và amount là số tiền chuyển. Hiển nhiên là đường link này chỉ được người A thực thi, vì thế nên phải có một thao tác kiểm tra sender chính là người thực thi đường link.
Tuy vậy, bằng một cách nào đó, hacker lừa được A chạy đường link trên (có thể là chèn một iframe tới đường link này, tại bài viết trong một forum và lừa cho A đọc bài viết), thao tác xác thực được vượt qua và hacker có thể chuyển tiền từ A đến bất kỳ tài khoản nào.
– quay lại với trang banbuon.tk, đối với trang này nếu muốn xóa một sản phẩm trên trang web thì phải có quyền admin và câu lệnh để xóa sản phẩm được truyền từ trình duyệt có dạng sau: http://www.banbuon.tk/quanly/index.php?thamso=xoa_san_pham&id=idsanpham
Chúng ta muốn muốn xóa sản phảm nào thì chỉ cần thay idsanpham=giá trị id của sản phảm đó.
Vd: http://www.banbuon.tk/quanly/index.php?thamso=xoa_san_pham&id=476
Và gửi link này cho admin. Điều kiện admin phải đăng nhập vào quản trị website và click vào link trên thì sản phẩm mới được xóa bởi admin.
ở đây sử dụng luôn lỗi XSS để gửi cho admin nử sau: chúng ta chọn mua một sản phẩm nào đó và tại ô nội dung chúng ta sẽ chèn link này vào. Khi admin check đơn hàng thì sản phảm có id trong link sẽ bị xóa.
Chèn link xóa sản phẩm vào ô nội dung: <a href=”http://banbuon.tk/quanly/index.php?thamso=xoa_san_pham&id=476″>xem hinh cua toi</a> (476 là id của sản phẩm cần xóa, bạn có thể thay bằng giá trị id khác )
khi admin check đơn hàng và click vào link trên thì sản phẩm sẽ bị xóa.
vậy là xong phần tấn công, còn đây là source demo: http://www.mediafire.com/download/nttoakq3gq6eb8e/shopquanao.zip
công lực mình chỉ đến đây, các cao thủ đóng góp ý kiến ngen
có chổ nào không hiểu các bạn gửi về duyminh264@yahoo.com.