An introduction to using Burp Suite for Web Application pentesting
Task 1 Introduction Outline
Task 2 Getting Started What is Burp Suite?
Nói một cách đơn giản: Burp Suite là một nền tảng được viết bằng Java nhằm mục đích cung cấp một điểm duy nhất để kiểm tra sự thâm nhập của ứng dụng web. Theo nhiều cách, mục tiêu này đạt được vì Burp rất là công cụ tiêu chuẩn của ngành để đánh giá bảo mật ứng dụng web. Burp Suite cũng thường được sử dụng khi đánh giá các ứng dụng di động, vì các tính năng tương tự khiến nó trở nên hấp dẫn đối với thử nghiệm ứng dụng web,hoàn hảo cho việc thử nghiệm API (Giao diện lập trình ứng dụng) cung cấp cho hầu hết các ứng dụng di động.
Ở cấp độ đơn giản nhất, Burp có thể nắm bắt và điều khiển tất cả lưu lượng truy cập giữa kẻ tấn công và máy chủ web: đây là cốt lõi của ứng dụng. Sau khi nắm bắt các yêu cầu, chúng có thể chọn gửi chúng đến nhiều phần khác nhau của Burp Suite - Mình sẽ giới thiệu một số chức năng công cụ này trong nội dung sắp tới. Khả năng chặn, xem và sửa đổi các yêu cầu web trước khi chúng được gửi đến máy chủ đích (hoặc, trong một số trường hợp, phản hồi trước khi chúng được trình duyệt của nhận được), làm cho Burp Suite trở nên hoàn hảo cho bất kỳ loại thử nghiệm ứng dụng web nào .
Có nhiều phiên bản khác nhau của Burp Suite. Mình sẽ làm việc với phiên bản Burp Suite Community, vì phiên bản này được sử dụng miễn phí cho bất kỳ mục đích sử dụng phi thương mại (hợp pháp) nào. Cả hai phiên bản Burp Suite Professional và Enterprise đều yêu cầu giấy phép và đắt tiền nhưng đi kèm với các tính năng bổ sung mạnh mẽ:
Burp Suite Professional: là phiên bản không hạn chế của Cộng đồng Burp Suite. Nó đi kèm với các tính năng như:
- Quét lỗ hổng bảo mật tự động
- Khả năng fuzzer/bruteforcer không bị giới hạn về tỷ lệ
- Tiết kiệm các dự án để sử dụng trong tương lai; tạo báo cáo
- Một API tích hợp để cho phép tích hợp với các công cụ khác
- Quyền truy cập không hạn chế để thêm các tiện ích mở rộng mới cho chức năng tốt hơn.
- Quyền truy cập vào Burp Suite Collaborator (cung cấp hiệu quả trình bắt yêu cầu duy nhất tự lưu trữ hoặc chạy trên máy chủ do Portswigger sở hữu).
Tóm lại, Burp Pro là một công cụ cực kỳ mạnh mẽ - đó là lý do tại sao nó đi kèm với thẻ giá £319/$399 cho mỗi người dùng cho đăng ký một năm. Vì lý do này, Burp Pro thường chỉ được sử dụng bởi các chuyên gia (với giấy phép thường được cung cấp bởi các nhà tuyển dụng).
Burp Suite Enterprise hơi khác một chút. Không giống như các phiên bản cộng đồng và chuyên nghiệp, Burp Enterprise được sử dụng để quét liên tục. Nó cung cấp một máy quét tự động có thể quét định kỳ các ứng dụng web để tìm lỗ hổng bảo mật theo cách tương tự như phần mềm như Nessus thực hiện quét cơ sở hạ tầng tự động. Không giống như các phiên bản khác của Burp Suite cho phép bạn thực hiện các cuộc tấn công thủ công từ máy tính của chính mình, Enterprise đặt trên một máy chủ và liên tục quét các ứng dụng web mục tiêu để tìm các lỗ hổng.
Do các chi phí nghiêm ngặt liên quan đến một trong hai phiên bản này của Burp Suite, chúng tôi sẽ tuân thủ bộ tính năng cốt lõi do Cộng đồng Burp Suite cung cấp.
Lưu ý: Burp Suite cho Windows được làm nổi bật trong ảnh chụp màn hình cho nhiều cuộc tấn công; tuy nhiên, không có sự khác biệt nào giữa bản này và bản sao của Burp Suite được cài đặt trên AttackBox.
Task 3Getting Started Features of Burp Community
Mặc dù Burp Community có một bộ tính năng tương đối hạn chế so với phiên bản Professional, nó vẫn có sẵn nhiều công cụ tuyệt vời. Bao gồm:
- Proxy: Khía cạnh nổi tiếng nhất của Burp Suite, Burp Proxy cho phép mình chặn và sửa đổi các yêu cầu / phản hồi khi tương tác với các ứng dụng web.
- Repeater: Tính năng này Burp nổi tiếng thứ hai - cho phép mình nắm bắt, sửa đổi, sau đó gửi lại cùng một yêu cầu nhiều lần. Tính năng này có thể hoàn toàn vô giá, đặc biệt là khi chúng ta cần tạo một tải trọng thông qua thử và sai (ví dụ: trong SQLi - Truyền ngôn ngữ truy vấn có cấu trúc) hoặc khi kiểm tra chức năng của một điểm cuối để tìm lỗi.
- Intruder: Mặc dù bị giới hạn tỷ lệ nghiêm ngặt trong phiên bản Burp Community, Intruder cho phép mình gửi một loạt các yêu cầu. Điều này thường được sử dụng cho các cuộc tấn công bruteforce hoặc xác các điểm có thể khai thác trên URL web.
- Decoder: Mặc dù ít được sử dụng hơn các tính năng đã đề cập trước đây, Bộ giải mã vẫn cung cấp một dịch vụ có giá trị khi chuyển đổi dữ liệu - về mặt giải mã thông tin đã thu thập hoặc mã hóa tải trọng trước khi gửi đến mục tiêu. Trong khi có các dịch vụ khác có sẵn để thực hiện công việc tương tự, thực hiện công việc này trực tiếp trong Burp Suite có thể rất hiệu quả.
- Comparer: Như tên cho thấy, Comparer cho phép chúng ta so sánh hai phần dữ liệu ở cấp độ từ hoặc byte. Một lần nữa, đây không phải là thứ duy nhất đối với Burp Suite, nhưng việc có thể gửi trực tiếp các phần dữ liệu (có khả năng rất lớn) vào một công cụ so sánh với một phím tắt duy nhất có thể tăng tốc độ đáng kể.
- Sequencer: Mình thường sử dụng Sequencer khi đánh giá tính ngẫu nhiên của các mã thông báo như giá trị cookie hoặc dữ liệu được cho là ngẫu nhiên khác được tạo ra. Nếu thuật toán không tạo ra các giá trị ngẫu nhiên an toàn, thì điều này có thể mở ra một số con đường tấn công.
Ngoài vô số tính năng được tích hợp sẵn, cơ sở mã Java cũng giúp bạn dễ dàng viết các phần mở rộng để thêm vào chức năng của Burp. Chúng có thể được viết bằng Java, Python (sử dụng trình thông dịch Java Jython) hoặc Ruby (sử dụng trình thông dịch Java JRuby). Mô-đun Burp Suite Extender có thể nhanh chóng và dễ dàng tải các tiện ích mở rộng vào khuôn khổ, cũng như cung cấp một thị trường để tải xuống các mô-đun của bên thứ ba (được gọi là "BApp Store"). Mặc dù nhiều tiện ích mở rộng này yêu cầu giấy phép chuyên nghiệp để tải xuống và thêm vào, nhưng vẫn có một số lượng hợp lý có thể được tích hợp với Cộng đồng Burp. Ví dụ: mình có thể muốn mở rộng chức năng ghi nhật ký sẵn có của Burp Suite với mô-đun Logger ++
Task 4 Getting Started Installation
Lưu ý: AttackBox đã được cài đặt Burp Suite, vì vậy vui lòng bỏ qua tác vụ này nếu bạn không có ý định sử dụng Burp Suite cục bộ.
Burp Suite là một trong những công cụ rất hữu ích để có xung quanh, cho dù bạn đang đánh giá rõ ràng một ứng dụng web hoặc ứng dụng di động để lấy tiền thưởng nhiều nhất/lỗi hay chỉ đơn giản là muốn gỡ lỗi một tính năng mới trong ứng dụng web mà bạn đang phát triển. Vì lý do này, điều quan trọng là phải biết cách cài đặt Burp Suite trên nhiều nền tảng khác nhau, thay vì chỉ sử dụng nó bên trong một hệ điều hành áp dụng như Kali hoặc Parrot. Bạn không bao giờ biết khi nào bạn có thể cần nó!
May mắn thay, PortSwigger đã giúp cài đặt Burp Suite cực kỳ dễ dàng trên Linux, macOS và Windows, cung cấp các trình cài đặt chuyên dụng cho cả ba. Là một ứng dụng Java, Burp cũng có thể được tải xuống dưới dạng kho lưu trữ JAR và chạy hiệu quả trên bất kỳ thứ gì sẽ hỗ trợ môi trường thời gian chạy Java.
Burp Suite được đóng gói sẵn với Kali Linux, vì vậy bạn không cần phải cài đặt nó ở đó. Nếu vì lý do nào đó, Burp bị thiếu trong cài đặt Kali của bạn, bạn có thể dễ dàng cài đặt nó từ kho lưu trữ Kali apt.
Đối với các hệ thống khác, chúng tôi có thể tải xuống trình cài đặt từ trang Tải xuống Burp Suite.
Từ menu thả xuống, chúng ta có thể chọn hệ điều hành của mình, cũng như muốn Burp Suite Community hay Burp Suite Professional:
Sau đó, chúng ta có thể nhấp vào nút "Tải xuống" để bắt đầu tải xuống trình cài đặt Burp Suite. Cho dù bạn đang sử dụng hệ điều hành nào, hãy đảm bảo sử dụng Burp Suite Community Edition.
Khi chúng tôi đã xác minh tính toàn vẹn của bản tải xuống, bạn có thể cài đặt nó theo cách bình thường cho hệ điều hành của mình (ví dụ: Chạy tệp thực thi trong Windows hoặc thực thi tập lệnh từ thiết bị đầu cuối với sudo trong Linux).
Lưu ý: Nếu cài đặt trong Linux, bạn có thể chọn cài đặt có hoặc không có quyền của người dùng cấp cao. Nếu bạn quyết định không sử dụng sudo khi thực thi tập lệnh, Burp Suite sẽ được cài đặt trong thư mục chính của bạn tại ~/BurpSuiteCommunity/BurpSuiteCommunity
và sẽ không được thêm vào PATH của bạn.
Trình hướng dẫn cài đặt rất trực quan. Nói chung là an toàn để chấp nhận các giá trị mặc định được đề xuất, bất kể hệ điều hành của bạn là gì; tuy nhiên, bạn vẫn nên đọc kỹ trình cài đặt.
Với Burp Suite đã được cài đặt, bây giờ chúng ta có thể khởi động ứng dụng. Lần đầu tiên bạn sử dụng, Burp Suite sẽ yêu cầu bạn đọc và chấp nhận các điều khoản và điều kiện của nó; hãy chắc chắn rằng bạn làm như vậy trước khi chấp nhận hoặc từ chối chúng!
Với các điều khoản và điều kiện được chấp nhận, chúng tôi được giới thiệu với một menu khác. Chúng ta sẽ xem xét vấn đề này trong nhiệm vụ tiếp theo.
Task 5 Getting Started The Dashboard
Khi mình mở Burp Suite và đã chấp nhận các điều khoản và điều kiện, mình sẽ gặp một cửa sổ yêu cầu mình chọn loại dự án.
Cửa sổ này không cung cấp cho mình nhiều tùy chọn trong Burp Community. Burp Pro sẽ cho phép mình lưu công việc vào đĩa hoặc tải một dự án đã lưu trước đó tại thời điểm này. Tuy nhiên, tất cả những gì chúng ta có thể làm ở đây là nhấp vào "Tiếp theo".
Cửa sổ tiếp theo cho phép mình chọn cấu hình cho Burp Suite. Để điều này ở chế độ mặc định là hoàn hảo cho hầu hết các trường hợp:
Nhấp vào "Start Burp", và giao diện Burp Suite chính sẽ mở ra!
Trong lần đầu tiên mở Burp Suite, bạn có thể thấy một màn hình các tùy chọn. Đây là những điều đáng để đọc qua nếu bạn có thời gian.
Nếu không (và trong bất kỳ phiên tiếp theo nào bất kể), bạn sẽ được giới thiệu với Bảng điều khiển Burp hơi khó khăn:
- Menu Nhiệm vụ cho phép chúng tôi xác định các tác vụ nền mà Burp Suite sẽ chạy trong khi chúng tôi sử dụng ứng dụng. Phiên bản Pro cũng sẽ cho phép bạn tạo các bản quét theo yêu cầu. "Thu thập thông tin thụ động trực tiếp" mặc định (tự động ghi lại các trang mà bạn truy cập) sẽ phù hợp hơn với mục đích sử dụng của chúng tôi trong mô-đun này.
- Nhật ký sự kiện cho chúng tôi biết Burp Suite đang làm gì (ví dụ: khởi động Proxy), cũng như thông tin về bất kỳ kết nối nào mà chúng tôi đang thực hiện thông qua Burp.
- Phần Hoạt động sự cố chỉ dành riêng cho Burp Pro. Nó sẽ không cung cấp cho chúng tôi bất cứ điều gì khi sử dụng Burp Community, nhưng trong Burp Professional, nó sẽ liệt kê tất cả các lỗ hổng được tìm thấy bởi máy quét tự động. Chúng sẽ được xếp hạng theo mức độ nghiêm trọng và có thể lọc theo mức độ chắc chắn của Burp rằng thành phần dễ bị tổn thương.
- Phần Tư vấn cung cấp thêm thông tin về các lỗ hổng được tìm thấy, cũng như các tài liệu tham khảo và các biện pháp khắc phục được đề xuất. Sau đó, chúng có thể được xuất thành một báo cáo.
0 Comments