- vừa được xem lúc

Burp Suite Cơ Bản - Dò Lỗ Hổng Bảo Mật Trên Ứng Dụng Web

0 1 677

Người đăng: Lê Ngọc Sơn

Theo Viblo Asia

Đây không phải là 300 bài code thiếu nhi hay đại loại vậy, mà mình sẽ nói về BurpSuite - 1 công cụ đắc lực cho tester cũng như pentester. Các kiến thức sẽ là basic mới bắt đầu cho người mới học như mình nhé ( tôi đùa đấy ? )

  • Vậy tại sao lại chọn Burpsuite? Dễ thôi, vì nó free mà :v
  • Thế nên, trong bài viết này mình sẽ tóm gọn lại các chức năng cơ bản mà BurpSuite có thể làm được nhé.

OK Let's Go....

1. BurpSuite là gì?

Lần này mình sẽ đi thẳng vào vấn đề, không lòng vòng hải phòng nữa nhé.

  • Thứ nhất: Burp Suite là một công cụ pentest ứng dụng web.
  • Thứ 2: Không như các công cụ khác, burp chỉ hỗ trợ trong quá trình pentest chứ không được chạy auto như các tool scan hay web scan.
  • Thứ 3: Giao diện đẹp, trực quanm thân thiện (+1 respect) ?
  • Đó là do mình tóm gọn, còn thực tế theo lý thuyết thì .....

Burp Suite được hiểu là một ứng dụng được tích hợp nhiều tính năng phục vụ kiểm tra tính bảo mật của ứng dụng web. Các tính năng này sẽ phục vụ kiểm tra bảo mật những thành phần khác nhau trong ứng dụng web hiện đại ngày nay.

Burp Suite giúp người dùng đánh giá các tiêu chí bảo mật web như: Tiến hành kiểm tra cơ chế xác thực, kiểm tra các vấn đề về phiên bản người dùng hay liệt kê cũng như đánh giá các tham số đầu vào của ứng dụng trang web.

À thôi, lý thuyết nhiêu đấy chắc là đủ rồi, chúng ta sẽ cùng tùm hiểu xem các cài đặt và sử dụng một số chức năng cơ bản của BurpSuite nha !!!

2. Cài Đặt Và Cấu Hình BurpSuite

2.1 Cài Đặt

Chúng ta sẽ cài Burp từ trang chủ của PortSwigger. Truy cập vào website http://portswigger.net/ để download Burp Suite bản mới nhất về.

Sẽ có 3 lựa chọn phiên bản Enterprise + Professional ( tốn phí hoặc có thuốc luôn rồi nha ?) và Community (bản miễn phí)

À mà tôi đang dùng bản Pro nha, đừng ai nghĩ tôi dùng thuốc nhá ?

Do Burp Suite viết bằng Java. Vậy nên, máy phải cài Java nếu muốn sử dụng Burp nhé. Sau khi download, chỉ cần chạy file .JAV ✌️ à nhầm .JAR lên để mở chương trình.

Chọn tempo project rồi cứ next cho đến khi vào dashboard.

2.2 Cấu Hình

Burp được thiết kế để sử dụng cùng với trình duyệt. Nó hoạt động giống như một HTTP proxy server, và tất cả HTTP(S) traffic đều sẽ đi qua Burp. Trước khi tiến hành làm việc với Burp, cần cấu hình để trình duyệt của mình làm việc với nó.

Bước 1: Kiểm tra option proxy của Burp

Bước 2: Thay đổi proxy setting của Web Browser với proxy là 127.0.0.1 và port 8080 sao cho khớp với option proxy của BurpSuite

Hoặc còn cách nữa là sử dụng extension "Fox Proxy" để chuyển đổi qua lại giữ proxy thường và proxy của Burp nhé. (Fox Proxy có trong cửa hàng Extension của Chrome và Addon của Firefox). Mình toàn xài cái này, vì nó tiện khỏi phải đổi qua đổi lại setting.

Bước 3: Test thử đã bắt được request chưa bằng cách bật ON ở tab intercept lên ở proxy lúc nãy lên sau đó lên 1 trang web nào đó.

Quay sang Burp kiểm tra đã bắt được request chưa ( không liên quan nhưng bài này hay cực nha ? )

OK, vậy là xong phần cài đặt, chúng ta cùng vào món chính nào !!

3. Các Chức Năng Cơ Bản Của Burp Suite

3.1 TARGET

TARGET : là nơi chứa các thông tin tổng quan về web. Cho phép xem site map và điều chỉnh phạm vi mục tiêu và có thể được xác định bằng cách điền loại giao thức, host/IP, port.

3.2 Proxy

PROXY : Tab Proxy hiển thị chi tiết các request đi qua Burp Proxy. Tại đây, bạn có các tùy chọn Forward, Drop, Chỉnh sửa hay chuyển sang các action khác (repeater, intruder, etc...) (lấy lại cái hình lúc nãy)

Thông tin về header và các thông tin của request được show lên ở phần bên phải là INSPECTOR

3.3 Intruder

Intruder : cho phép test ứng dụng web bằng cách gửi các payloads đã được định nghĩa trước lên server, sau đó xem xét kết quả trả về ( kiểu như brute-force vậy nha )

VÍ DỤ : Thử đăng nhập vào 1 trang web bằng tài khoản và mật khẩu đơn giản

Đầu tiên ta sẽ bắt gói tin khi login rồi sau đó ném sang Intruder

Sau khi sang tab Intruder ta sẽ thấy đường link và port của website

Custom lại chỗ cần inject payloads vào Ở đây là phần uname và pass được đặt trong cặp dấu $ ( tượng trưng chứ không phải nha ? ) ta có thể định dạng lại chỗ cần inject vào bằng cách thêm cặp dấu đô-la vào bằng cách bấm vào nút Add đô-la hay clear đô-la

Sang phần payloads, có thể chọn payloads có sẵn hoặc tự custom => Sau đó bấm vào Start attack

Chúng ta sẽ kiểm tra request mà có status code trả về thành công => 200

Đúng như mong đợi, username và pass đã login thành công đúng như tài khoản ban đầu.

3.4 Repeater

Repeater : Có thể tùy ý thay đổi và gửi lại những request khác nhau tới server. Đồng thời sẽ nhận về response từ server để có thể phân tích được gói tin ( cái này như reqbin vậy đó ). Chúng ta có thể bấm sang tab repeater bấm vào dấu edit để thêm host và port của target, sau đó nhập vào phần request ở khung bên trái rồi gửi đi.

Nhưng không, ở đây chúng tôi ít làm thế ? , đa số sẽ là redierect action bằng cách chuột phải vào phần request chọn vào Send To Repeater thì nó bay thẳng sang luôn sẽ có request sẵn từ trước nên không cần phải nhập lại nữa.

3.5 Scan (Passive/Active) với các Profile builtin

Các phiên bản Burp sau này người ta đã lược đi các tab Scanner và Spider rồi, nên nếu xem các video hướng dẫn cũ sẽ không thấy tab Scanner và Spider đâu cã, thay vào đó nó nằm ở Dashboard phần new scan nhé :v

VÍ DỤ : Scan Audit trang lab của portswigger với url là https://portswigger-labs.net/

Có thể cấu hình lại hình thức scan bằng cách bấm vào tab Scan Configuation và chọn vào New -> Audit và chọn vào mục Issue Reported rồi chọn phương pháp scan nào tùy mọi người nhé.

Hoặc có thể scan theo Library Built-in hay là Custom nhé

Ví dụ mình chọn 1 cái Build-in rồi chọn OK sau đó quay về Dashboard chờ đợi scan.

Ở bên phải phần Issue Activity sẽ xuất hiện danh sách các Issue phát hiện được trong lúc scan, chúng ta có thể bấm vào và xem các mô tả và request ở tab phía dưới.

Sau khi Scan xong ở bên tab Tartget sẽ có sitemap của website mà chúng ta đã scan

4. Tổng Kết

Tuy là chỉ dừng ở mức cơ bản, trong BurpSuite vẫn còn rất nhiều cái hay nhưng mà viết tới đây thì mình mỏi tay quá rồi ? .

Hy vọng bài viết sẽ giúp ích được gì đó cho các bạn đang bắt đầu học về tester cũng như là về BurpSuite.

Bài viết sẽ có nhiều sơ sót, các bạn có thể đóng góp ý kiến thêm để các bài viết sau tốt hơn ạ. Chúc các bạn thành công!!!

5. Tham Khảo

Bình luận

Bài viết tương tự

- vừa được xem lúc

Điều gì sẽ xảy ra nếu khách hàng không thể tái tạo lỗi của bạn?

Kiểm tra và đảm bảo chất lượng phần mềm là một thủ tục phức tạp đòi hỏi sự tận tâm, chuyên môn kỹ thuật, con mắt nhìn chi tiết và hàng giờ làm việc. Người thử nghiệm là những người đi sâu vào sản phẩm của bạn và có tác động lớn đến kết quả cuối cùng của dự án.

0 0 34

- vừa được xem lúc

Quá tam ba bận, sao 1 task của bạn phải làm tới tận 3 lần ???

I: 1 task làm 3 lần, làm gì có chuyện đó . Tiêu đề của bài viết có lẽ sẽ khiến một số anh em chưa hiểu vì sao lại có chuyện 1 task làm tới 3 lần.

0 0 38

- vừa được xem lúc

Vòng đời của bug/defect trong Kiểm thử phần mềm

A. Vòng đời của bug/defect là gì. Các trạng thái của bug xuyên suốt 1 vòng đời. Các trạng thái của một bug/defect thường sẽ thay đổi tùy từng dự án.

0 0 30

- vừa được xem lúc

Xử lý lỗi PendingIntent không thể gửi tới activity khi ứng dụng đang ở foreground

Nếu ứng dụng của bạn đang ở foreground và bạn muốn xử lý sự kiện nhấn vào thông báo bằng cách khởi chạy một activity cụ thể, bạn có thể sử dụng các bước sau đây:. 1.

0 0 16

- vừa được xem lúc

Tôi đã vô tình Hack của sàn S****e 500K. Và câu chuyện về xử lý case Timeout(504)

Lưu ý: Bài viết mang tính cảnh báo, việc sử dụng lỗi đã nêu cho mục đích gây thiệt hại cho cá nhân/tổ chức là vi phạm pháp luật và chủ tus sẽ không chịu trách nhiệm. 1.

0 0 5

- vừa được xem lúc

Bạn cần gì để có thể trở thành một hacker mũ trắng?

Tổng quan. Trong quá trình làm việc cũng như tham gia giảng dạy các khóa học, mình thưỡng xuyên nhận được những câu hỏi của các bạn như: Làm sao bắt đầu học bảo mật vậy anh? Hay làm hacker thì cần bắt

1 1 289