Advertisement

Responsive Advertisement

Burp Suite: The Basics - Tryhackme-phần 2

 

Task 6  Getting Started Navigation

Sử dụng Burp Suite GUI được thực hiện hoàn toàn bằng cách sử dụng các thanh menu:

Những điều này cho phép bạn chuyển đổi giữa các mô-đun (dọc theo hàng trên cùng của hình ảnh đính kèm). Nếu mô-đun đã chọn có nhiều tab phụ, thì chúng có thể được chọn bằng cách sử dụng thanh menu thứ hai xuất hiện ngay bên dưới thanh gốc (hàng dưới cùng của hình ảnh ở trên). Thông thường các cài đặt dành riêng cho mô-đun sẽ được cung cấp trong các tab phụ này (như trường hợp của Tùy chọn proxy ở trên).

Các tab cũng có thể được bật ra thành các cửa sổ riêng biệt nếu bạn muốn xem nhiều tab riêng biệt. Điều này có thể được thực hiện bằng cách nhấp vào "Window" trong menu ứng dụng ở đầu màn hình, sau đó chọn để "Detach" các tab:
Chúng có thể được gắn lại theo cách tương tự.

Ngoài thanh menu, Burp Suite còn có các phím tắt cho phép điều hướng nhanh đến các tab khác. 


Task 7  Getting Started Options

Trước khi bắt đầu tìm hiểu về Burp Proxy, chúng ta hãy xem xét các tùy chọn có sẵn để định cấu hình Burp Suite.

  • Cài đặt chung có thể được tìm thấy trong tab User options dọc theo thanh menu trên cùng.
  • Bạn có thể tìm thấy các cài đặt dành riêng cho dự án trong tab Project options.
Các tùy chọn được cung cấp trong tab Tùy chọn người dùng sẽ áp dụng mỗi khi mình mở Burp Suite. Ngược lại, các tùy chọn Dự án sẽ chỉ áp dụng cho dự án hiện tại. Do mình không thể lưu các dự án trong Cộng đồng Burp, điều này có nghĩa là các tùy chọn dự án của mình sẽ đặt lại mỗi khi mìnhđóng Burp.

Có quá nhiều tùy chọn để bao gồm tất cả, vì vậy chúng ta hãy chỉ xem xét các danh mục có sẵn và đánh dấu một vài trong số ít cài đặt quan trọng hơn. Chúng tôi sẽ bắt đầu với tab User Options.



Các cài đặt ở đây áp dụng trên toàn cầu (tức là chúng kiểm soát ứng dụng Burp Suite - không chỉ dự án). Điều đó nói rằng, nhiều người trong số họ có thể bị ghi đè trong cài đặt dự án.

Có bốn phần phụ chính của tab User options:

  • Các tùy chọn trong tab phụ Connections cho phép mình kiểm soát cách Burp tạo kết nối với các mục tiêu. Ví dụ: có thể đặt một proxy cho Burp Suite để kết nối thông qua; điều này rất hữu ích nếu chúng ta muốn sử dụng Burp Suite thông qua một trục mạng.
  • Tab phụ TLS cho phép mình bật và tắt các tùy chọn TLS (Bảo mật lớp truyền tải) khác nhau, cũng như cung cấp cho chúng tôi một nơi để tải lên các chứng chỉ ứng dụng khách nếu ứng dụng web yêu cầu chúng tôi sử dụng một cho các kết nối.
  • Một tập hợp các tùy chọn cần thiết: Display cho phép mình thay đổi giao diện của Burp Suite. Các tùy chọn ở đây bao gồm những thứ như thay đổi phông chữ và tỷ lệ, cũng như thiết lập chủ đề cho khuôn khổ (ví dụ: chế độ tối) và định cấu hình các tùy chọn khác nhau để thực hiện với công cụ kết xuất trong Bộ lặp (thông tin thêm về điều này sau!).
  • Tab phụ Misc chứa nhiều cài đặt khác nhau, bao gồm cả bảng liên kết phím (HotKeys), cho phép chúng tôi xem và thay đổi các phím tắt được sử dụng bởi Burp Suite. Bạn nên tự làm quen với các cài đặt này, vì việc sử dụng các keybinds có thể đẩy nhanh tiến độ công việc của bạn.
Với những tùy chọn này, chúng tôi có thể tùy chỉnh cài đặt Burp của mình cho phù hợp với sở thích cá nhân của mình.

Hãy chuyển sang xem xét các cấu hình dành riêng cho dự án có sẵn trong tab Tùy chọn dự án.

Có năm tab phụ ở đây:

  • Connections chứa nhiều tùy chọn giống như phần tương đương của tab User options: những tùy chọn này có thể được sử dụng để ghi đè cài đặt trên toàn ứng dụng. Ví dụ: có thể đặt proxy chỉ cho dự án, ghi đè bất kỳ cài đặt proxy nào bạn đặt trong tab User options. Tuy nhiên, có một số khác biệt giữa tab phụ này và tab User. Ví dụ: tùy chọn "Hostname Resolution" (cho phép bạn ánh xạ miền tới IP trực tiếp trong Burp Suite) có thể rất tiện dụng - cũng như cài đặt "Out-of-Scope Requests", cho phép mình xác định xem Burp có gửi yêu cầu đối với bất kỳ thứ gì minh không nhắm mục tiêu rõ ràng.
  • Tab phụ HTTP xác định cách Burp xử lý các khía cạnh khác nhau của giao thức HTTP: ví dụ: liệu nó có tuân theo các chuyển hướng hay cách xử lý các mã phản hồi bất thường.
  • TLS cho phép mình ghi đè các tùy chọn TLS trên toàn ứng dụng, cũng như hiển thị cho chúng tôi danh sách các chứng chỉ máy chủ công cộng cho các trang web mà mình đã truy cập.
  • Tab Sessions cung cấp cho mình các tùy chọn để xử lý phiên. Nó cho phép mình xác định cách Burp lấy, lưu và sử dụng cookie phiên mà nó nhận được từ các trang mục tiêu. Nó cũng cho phép mình xác định các macro mà mình có thể sử dụng để tự động hóa những thứ như đăng nhập vào các ứng dụng web (cung cấp cho mình một phiên được xác thực tức thì, giả sử mình có bằng chứng xác thực hợp lệ).
  • Có ít tùy chọn trong tab phụ Misc hơn trong tab tương đương cho phần "User options". Nhiều tùy chọn ở đây cũng chỉ khả dụng nếu bạn có quyền truy cập vào Burp Pro (chẳng hạn như những tùy chọn định cấu hình Cộng tác viên). Điều đó nói rằng, có một số tùy chọn liên quan đến ghi nhật ký và trình duyệt nhúng (mà chúng ta sẽ xem xét trong một số tác vụ) rất đáng để xem xét.

Task 8  Proxy Introduction to the Burp Proxy

Burp Proxy là công cụ cơ bản nhất (và quan trọng nhất!) Trong số các công cụ có sẵn trong Burp Suite. Nó cho phép bạn nắm bắt các yêu cầu và phản hồi giữa chính bạn và mục tiêu khai thác. Sau đó, chúng có thể được thao tác hoặc gửi đến các công cụ khác để xử lý thêm trước khi được phép tiếp tục đến đích của chúng. Ví dụ: nếu mình yêu cầu https://tryhackme.com thông qua Burp Proxy, yêu cầu của mình sẽ được ghi lại và sẽ không được phép tiếp tục đến máy chủ TryHackMe cho đến khi mình cho phép rõ ràng. Mình có thể chọn làm điều tương tự với phản hồi từ máy chủ, mặc dù điều này không hoạt động theo mặc định. Khả năng chặn yêu cầu này cuối cùng có nghĩa là mình có thể kiểm soát hoàn toàn lưu lượng truy cập web của mình - một khả năng vô giá khi nói đến kiểm thử các ứng dụng web.

Có một vài cấu hình chúng ta cần thực hiện trước khi có thể sử dụng proxy, nhưng hãy bắt đầu bằng cách xem giao diện.

Lưu ý: Bạn không cần phải làm theo tác vụ này - chỉ cần đọc thông tin và hiểu Proxy được sử dụng để làm gì.

Khi bạn lần đầu tiên mở tab Proxy, Burp cung cấp cho bạn một loạt thông tin hữu ích và kiến thức cơ bản. Thông tin này rất đáng để đọc qua; tuy nhiên, điều kỳ diệu thực sự xảy ra sau khi bạn nắm bắt được một yêu cầu:


Khi proxy đang hoạt động, một yêu cầu đã được gửi đến trang web TryHackMe. Tại thời điểm này, trình duyệt thực hiện yêu cầu sẽ bị treo và yêu cầu sẽ xuất hiện trong tab Proxy cho chúng ta chế độ xem được hiển thị trong ảnh chụp màn hình ở trên. Sau đó, mình có thể chọn chuyển tiếp hoặc bỏ yêu cầu (có thể là sau khi chỉnh sửa). Mình cũng có thể làm nhiều việc khác ở đây, chẳng hạn như gửi yêu cầu đến một trong các mô-đun Burp khác, sao chép nó dưới dạng lệnh cURL, lưu nó vào một tệp và nhiều thứ khác.

Khi mình đã làm việc xong với Proxy, mình có thể nhấp vào nút "Intercept is on" để vô hiệu hóa Intercept, điều này sẽ cho phép các yêu cầu đi qua proxy mà không bị dừng lại.

Burp Suite sẽ vẫn (theo mặc định) ghi nhật ký các yêu cầu được thực hiện thông qua proxy khi tính năng chặn bị tắt. Điều này có thể rất hữu ích để quay lại và phân tích các yêu cầu trước đó, ngay cả khi mình không nắm bắt cụ thể thời điểm chúng được thực hiện.

Burp cũng sẽ ghi lại và ghi lại giao tiếp WebSocket, một lần nữa, có thể cực kỳ hữu ích khi phân tích một ứng dụng web.

Có thể xem nhật ký bằng cách chuyển đến tab phụ "HTTP history" và "WebSockets history":



Cần lưu ý rằng bất kỳ yêu cầu nào được ghi lại ở đây đều có thể được gửi đến các công cụ khác trong khuôn khổ bằng cách nhấp chuột phải vào chúng và chọn "Send to ...". Ví dụ: chúng ta có thể lấy một yêu cầu HTTP trước đó đã được ủy quyền cho đích và gửi nó đến Bộ lặp.

Cuối cùng, cũng có các tùy chọn cụ thể về Proxy, chúng ta có thể xem trong tab phụ "Options".

Các tùy chọn này cung cấp cho mình nhiều quyền kiểm soát đối với cách proxy hoạt động, vì vậy bạn nên tự làm quen với các tùy chọn này.

Ví dụ: proxy sẽ không chặn phản hồi của máy chủ theo mặc định trừ khi mình yêu cầu nó một cách rõ ràng trên cơ sở từng yêu cầu. Mình có thể ghi đè cài đặt mặc định bằng cách chọn hộp kiểm "Intercept responses based on the following rules" và chọn một hoặc nhiều quy tắc. Quy tắc "Or Request Was Intercepted" là rất tốt để bắt phản hồi cho tất cả các yêu cầu đã bị chặn bởi proxy:


 "And URL Is in target scope" là một quy tắc mặc định rất tốt khác.

Bạn có thể đưa ra các quy tắc của riêng mình cho hầu hết các tùy chọn Proxy, vì vậy đây là một phần mà việc xem xét xung quanh và thử nghiệm sẽ thực sự phục vụ bạn rất tốt!

Một phần đặc biệt hữu ích khác của tab phụ này là phần "Match and Replace"; điều này cho phép bạn thực hiện regexes đối với các yêu cầu gửi đến và gửi đi. Ví dụ: bạn có thể tự động thay đổi tác nhân người dùng của mình để mô phỏng một trình duyệt web khác trong các yêu cầu gửi đi hoặc xóa tất cả cookie đang được đặt trong các yêu cầu đến. Một lần nữa, bạn có thể tự do đưa ra các quy tắc của riêng mình tại đây.

Task 9  Proxy Connecting through the Proxy (FoxyProxy)

Bạn đã học lý thuyết; bây giờ đã đến lúc bắt đầu sử dụng proxy cho chính bạn.

Có hai cách để ủy quyền lưu lượng truy cập của bạn thông qua Burp Suite.

  1. Bạn có thể sử dụng trình duyệt (mình sẽ đề cập đến vấn đề này trong nhiệm vụ sau).
  2. Bạn có thể định cấu hình trình duyệt web cục bộ của mình để ủy quyền lưu lượng truy cập thông qua Burp; điều này phổ biến hơn và vì vậy sẽ là trọng tâm của nhiệm vụ này.
Burp Proxy hoạt động bằng cách mở giao diện web trên  127.0.0.1:8080 (theo mặc định). Như ngụ ý rằng đây là một "proxy", bạni cần chuyển hướng tất cả lưu lượng trình duyệt của mình qua cổng này trước khi có thể bắt đầu chặn nó bằng Burp. Bạn có thể thực hiện việc này bằng cách thay đổi cài đặt trình duyệt của mình hoặc phổ biến hơn là sử dụng tiện ích mở rộng trình duyệt Firefox có tên là FoxyProxy. FoxyProxy cho phép bạn lưu cấu hình proxy, có nghĩa là bạn có thể nhanh chóng và dễ dàng chuyển sang cấu hình "Burp Suite" chỉ bằng một cú nhấp chuột, sau đó vô hiệu hóa proxy một cách dễ dàng.

Lưu ý: Tất cả các hướng dẫn sẽ được đưa ra với Firefox, vì đây là trình duyệt mặc định cho cả Kali Linux và TryHackMe AttackBox. Nếu bạn đang sử dụng cục bộ trình duyệt khác thì bạn nên sử dụng AttackBox, hoặc nếu không, bạn có thể cần tìm các phương pháp thay thế cho những phương pháp được trình bày trong tác vụ này. Nếu bạn không thể làm cho proxy hoạt động trong trình duyệt cục bộ của mình và không muốn sử dụng AttackBox, thì bạn có thể chuyển sang tác vụ Trình duyệt Burp Suite.

Có hai phiên bản FoxyProxy: Basic và Standard. Cả hai phiên bản đều cho phép bạn thay đổi cài đặt proxy của mình một cách nhanh chóng; tuy nhiên, FoxyProxy Standard cung cấp cho bạn nhiều quyền kiểm soát hơn đối với lưu lượng truy cập được gửi qua proxy. Ví dụ: nó sẽ cho phép bạn thiết lập các quy tắc đối sánh mẫu để xác định xem một yêu cầu có nên được ủy quyền hay không: điều này phức tạp hơn so với cấu hình proxy đơn giản được cung cấp bởi FoxyProxy basic.

Phiên bản cơ bản là quá đủ cho việc sử dụng. Nó được cài đặt sẵn và định cấu hình trong trình duyệt Firefox của AttackBox, vì vậy nếu bạn đang sử dụng AttackBox, vui lòng bỏ qua phần cuối cùng của tác vụ này.

Nếu bạn đang sử dụng máy của riêng mình, bạn có thể tải xuống FoxyProxy Basic tại đây.

Sau khi cài đặt, một nút sẽ xuất hiện ở trên cùng bên phải của màn hình cho phép bạn truy cập cấu hình proxy của mình:



Không có cấu hình mặc định, vì vậy hãy nhấp vào nút "Options" để tạo cấu hình Burp Proxy của bạn.

Thao tác này sẽ mở một tab trình duyệt mới với trang tùy chọn FoxyProxy:

Nhấp vào nút "Thêm" và điền vào các giá trị sau:
  • Tiêu đề: Burp(hoặc bất kỳ thứ gì khác mà bạn thích)
  • IP proxy:  127.0.0.1
  • Cổng: 8080

Bây giờ hãy nhấp vào "save".

Khi bạn nhấp vào biểu tượng FoxyProxy ở đầu màn hình, bạn sẽ thấy rằng có một cấu hình có sẵn cho Burp:



Nếu bạn nhấp vào cấu hình "Burp", trình duyệt của bạn sẽ bắt đầu điều hướng tất cả lưu lượng truy cập của bạn thông qua 127.0.0.1:8080. Cảnh báo: nếu Burp Suite không chạy, trình duyệt của bạn sẽ không thể thực hiện bất kỳ yêu cầu nào khi cấu hình này được kích hoạt!

Kích hoạt cấu hình này ngay bây giờ - biểu tượng trong menu sẽ thay đổi để cho biết rằng chúng tôi có một proxy đang chạy:

Tiếp theo, chuyển sang Burp Suite và đảm bảo rằng Intercept đang Bật:

Bây giờ, hãy thử truy cập trang chủ  http://MACHINE_IP/ trong Firefox. Trình duyệt của bạn sẽ bị treo và proxy của bạn sẽ chứa các tiêu đề yêu cầu truy cập.

Xin chúc mừng, bạn vừa chặn được yêu cầu đầu tiên của mình!

Từ đây, bạn có thể chọn chuyển tiếp hoặc bỏ yêu cầu. Ngoài ra, bạn có thể gửi nó đến một công cụ khác hoặc thực hiện bất kỳ hành động nào khác bằng cách nhấp chuột phải vào yêu cầu và chọn một tùy chọn từ menu chuột phải.

Hãy nhớ rằng: Trong khi bạn được kết nối với proxy và đã bật Chặn ủy quyền, trình duyệt của bạn sẽ bị treo bất cứ khi nào bạn đưa ra yêu cầu. Một sai lầm rất phổ biến khi bạn đang học sử dụng Burp Suite (và thực sự là sau này!) Là vô tình để nút chặn được bật và không thể thực hiện bất kỳ yêu cầu web nào thông qua trình duyệt của bạn. Nếu trình duyệt của bạn bị treo và bạn không biết tại sao: hãy kiểm tra proxy của bạn!

Còn tiếp .... 

Post a Comment

0 Comments