Grep Extract trong Intruder của Burp Suite là một tính năng cho phép bạn tự động trích xuất dữ liệu cụ thể từ các phản hồi (responses) HTTP mà Intruder nhận được khi thực hiện một cuộc tấn công.
Với chức năng này, bạn có thể dễ dàng tìm kiếm và thu thập thông tin quan trọng, như tokens, IDs, hoặc bất kỳ dữ liệu cụ thể nào mà bạn muốn quan sát, thu thập trong quá trình tấn công.
Trong ví dụ dưới đây, mình mô phỏng quá quá trình kiểm thử ứng dụng. Bạn phát hiện API nào đó bị lỗ hổng IDOR trả về dữ liệu cá nhân (email, phone, username) của bất kỳ ai. Lỗ hổng này không quá khó để khai thác. Bạn muốn xem dữ liệu của người nào chỉ cần đổi tham số ID của API HTTP Request là được.
Khởi động Burp Suite và mở Intruder
- Đầu tiên, khởi động Burp Suite và điều hướng đến phần Intruder bằng cách chọn tab Intruder trên thanh menu chính.
- Chọn một HTTP Request có lỗ hổng IDOR để tấn công. Bạn có thể quan sát trong tab Proxy -> HTTP History, sau đó click chuột phải chọn Send to Intruder hoặc Ctrl+R
Cài đặt tấn công trong Intruder
- Trong tab Positions, đánh dấu vị trí bạn muốn thay đổi giá trị bằng cách sử dụng các nút § (có dạng chữ §value§). Ví dụ trong trường hợp này, giá trị bị lỗi IDOR là ID.
- Tiếp theo, chọn loại tấn công bạn muốn sử dụng, ví dụ: Sniper, Battering ram, Pitchfork, hoặc Cluster bomb. Trong trường hợp này bạn chỉ có một tham số, nên chúng ta sẽ chọn kiểu tấn công Attack Type là Sniper
- Trong tab Payloads, bạn chọn kiểu Payload là Number vì ID là số tự nhiên tăng dần. Sau đó thiết lập số bắt đầu, số kết thúc và bước nhảy của số.
- Sau đó thực hiện Grep Extract theo hướng dẫn bên dưới
Trong công cụ Intruder của Burp Suite có chức năng Grep Extract. Không cần lập trình Script để crawl dữ liệu. Cũng không cần phải viết Regex Parse Data loằng ngoằng. Đúng như cái tên, nó sẽ giúp bạn tự động tìm đúng tới đoạn dữ liệu cần lấy, sau đó bóc tách (extract) để hiển thị cho bạn.
Cách thực hiện
- chọn Settings trong tab Intruder
- Kéo xuống tìm tới Grep Extract
- Bấm Add để thêm loại dữ liệu cần thu thập
- Bạn lựa chọn đúng đoạn dữ liệu cần lấy trong HTTP Response.
- Sau đó bấm OK để thêm mới
Ví dụ, dữ liệu cần lấy nằm trong đoạn mã HTML hoặc JSON …email=”[email protected]”, phone=””… Hãy chỉ bôi đen đoạn [email protected]
Sau khi Start Attack, bạn sẽ có thêm một cột hiển thị dữ liệu mà bạn extract. Intruder cũng hỗ trợ bạn Save Data hoặc đơn giản Ctrl-A, Ctrl-C và Ctrl-V
Mình hay dùng cách này để thu thập thông tin username hoặc email để phục vụ cho các bài test Sparying Attack
What do you think?
It is nice to know your opinion. Leave a comment.