Phát hiện lỗ hổng XSS chính xác, nhanh gọn với Burp Suite và PhantomJS

annninhmang-add_burp_extenderPhát hiện lỗ hổng XSS chính xác, nhanh gọn với Burp Suite và PhantomJS


XSS hiện nay là một loại lỗ hổng web ngày càng trở nên phổ biến và nguy hiểm. Trong bài này mình sẽ hướng dẫn các bạn cách tìm lỗ hổng web một cách nhanh chóng, tiện lợi và chính xác sử dụng Burp Suite và PhantomJS.

Yêu cầu:

  • Java 7.0 trở lên
  • PhantomJS (thông tin thêm tại http://phantomjs.org)
  • BurpSuite
  • Có kiến thức cơ bản về việc sử dụng Burp Suite và kiến thức về XSS



Trước tiên bạn cần tải file .jar này tại https://www.dropbox.com/s/fkuxovnhck…sValidator.jar . Lưu ý rằng file .jar này được xây dựng với điều kiện giả định rằng PhantomJS server đang được nghe trên 127.0.0.1:8093. 

Cài đặt tiện ích mở rộng

Mở Burp Suite, điều hướng tới tab extender sau đó click nút Add, như hình dưới đây:

annninhmang-add_burp_extender

Chắc chắn rằng, loại của tiện ích mở rộng phải là Java, sau đó click Select file và chỉ tới đường dẫn file xssValidator.jar mà bạn vừa tải ở bước trên.

anninhmang-load-burp-extender

Click Add và một cửa sổ sẽ xuất hiện. Chắc chắn rằng không có bất kỳ một lỗi nào xảy ra khi click vào tab error. Nếu có lổi xảy ra thì khả năng cao là do bản java của bạn không phù hợp.

Sau khi thêm tiện ích mở rộng này, bạn sẽ nhìn thấy một items mới xuất hiện trong giao diện của Burp Suite Extensions, như hình dươi:

anhninhmang-successful-extender-import

Chuẩn bị tấn công:

Tạo một Intruder attack cho yêu cầu mục tiêu. Xác định mục tiêu như bạn muốn và điều hướng tới tab Payload. Lựa chọn loại payload là extension-generated, như hình dưới:

loading-payload

Click vào Select Generator, và chọn XSS Validator Payload trong payload generator

Xem Thêm Bài Viết  Hướng dẫn sử dụng Task View, đa nhiệm 4 cửa sổ và desktop ảo trong Windows 10


select-payload-generator


Click Add và chọn Invoke Burp Extension thì menu thả xuống. Chọn XSS Validator processor, và click ok.


 anninhmang-define-payload-position

Xác định vị trí Payload, trong ví dụ này mình sử dụng file xsstest.php file có lỗ hổng XSS ở tham số GET. 



Dưới tab options, điều hướng tới mục Grep – Match, và nhập ký tự “fy7sdufsuidfhuisdf. Ký tự này sẽ được trả về nếu lỗ hổng XSS được khai thác thành công.

anninhmang-grep-match-payload-trigger-phrase

Khởi động PhantomJS server, bằng việc điều hướng tới đường dẫn của phantomjs và khởi chạy phantomjs xss.js. Sau khi thực hiện lệnh này, bạn sẽ thấy như hình dưới:

anninhmang-phantom-js-start

Quay trở lại Burp Suite Intruder Attack và bắt đầu chạy tấn công. Payload mà kích hoạt thành công XSS sẽ được làm nổi bật bằng việc đánh dấu tích ở “fy7sdufsuidfhuisdf“flag, như hình dưới:

anninhmang-intruder-attack-findings

Để kiểm tra lại, bạn đơn giản chỉ cần lấy payload ở những dòng này và kích hoạt lại trên trình duyệt là ok.

Theo whitehat

Lượt xem (1470)

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *