1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Học phần: An toàn mạng Đề tài: Tìm hiểu công cụ hỗ trợ tìm kiếm và khai thác lỗ hổng bảo mật ứng dụng web Burp Suite

48 80 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 48
Dung lượng 3,96 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

1 HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA CÔNG NGHỆ THÔNG TIN 1 Học phần: An toàn mạng Đề tài: Tìm hiểu công cụ hỗ trợ tìm kiếm và khai thác lỗ hổng bảo mật ứng dụng web Burp Su

Trang 1

1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA CÔNG NGHỆ THÔNG TIN 1

Học phần: An toàn mạng

Đề tài: Tìm hiểu công cụ hỗ trợ tìm kiếm và khai thác lỗ hổng

bảo mật ứng dụng web Burp Suite

Chủ đề: Tính năng Repeater và một số Extensions phổ biến

Trang 2

MỤC LỤC

DANH MỤC ẢNH MINH HỌA 3

LỜI MỞ ĐẦU 5

CHƯƠNG 1: GIỚI THIỆU KHÁI QUÁT VỀ CÔNG CỤ BURP SUITE 6

1 Tổng quan về Burp Suite 6

2 Một số tính năng nổi bật của Burpsuite 8

CHƯƠNG 2: CÀI ĐẶT BURP SUITE, SỬ DỤNG TÍNH NĂNG REPEATER VÀ CÁC EXTENSION PHỔ BIẾN 9

1 Cài đặt Burp Suite 9

1.1 Môi trường cài đặt 9

1.2 Cài đặt chức năng proxy 9

2 Tính năng repeater 12

2.1 Sử dụng Burp Repeater với các gói tin HTTP 14

2.2 Gửi HTTP requests 15

2.3 Lịch sử request 15

2.4 Repeater options 16

2.5 Thanh công cụ phân tích gói tin 16

3 Cài đặt và sử dụng một số extension phổ biến 19

2.6 Giới thiệu tính năng extender 19

2.7 Extension Autorize 20

2.8 Extension Param Miner 28

2.9 Burp Bounty 32

CHƯƠNG 3: THỬ NGHIỆM CÔNG CỤ BURPSUITE VỚI TÍNH NĂNG REPEATER VÀ EXTENSION 35

1 Khai thác lỗ hổng Broken Access Control sử dụng extension Autorize kết hợp với tính năng Repeater 35

2 Rà quét lỗ hổng XSS với extension Burp Bounty 41

KẾT LUẬN 47

DANH MỤC TÀI LIỆU THAM KHẢO 48

Trang 3

3

DANH MỤC ẢNH MINH HỌA

Hình 1 1 Giao diện công cụ Burp Suite 6

Hình 1 2 So sánh phiên bản Enterprise Edition với phiên bản Professional Edition 7

Hình 1 3 request và Respone được bắt bởi công cụ Burp Suite 7

Hình 2 1 Cấu hình proxy trên Browser 10

Hình 2 2 Cấu hình proxy trên Windows 11

Hình 2 3 Thiết lập cấu hình trên BurpSuite 12

Hình 2 4 Trang web download chứng chỉ 12

Hình 2 5 Giao diện chính của trang repeater 13

Hình 2 6 Cấu hình target của repeater 13

Hình 2 7 Gửi request đến repeater 14

Hình 2 8 Request từ repeater và response trả về 15

Hình 2 9 Danh sách lịch sử các request thực hiện bởi Repeater 15

Hình 2 10 Gói tin phản hồi hiển thị dạng Raw 17

Hình 2 11 Gói tin phản hồi hiển thị dạng Pretty 18

Hình 2 12 Gói tin phản hồi hiển thị dạng Hex 18

Hình 2 13 Gói tin phản hồi hiển thị dạng Render 19

Hình 2 14.Giao diện quản lý Extension 19

Hình 2 15.Giao diện PApp Store 20

Hình 2 16 Thiết lập môi trường Python 21

Hình 2 17 Cài đặt Autorize trong Bapp Store 22

Hình 2 18 Giao diện chính extension Autorize 22

Hình 2 19 Các cấu hình cơ bản của extension Autorize 23

Hình 2 20 Trạng thái đang hoạt động 23

Hình 2 21 Thanh cấu hình cookies 24

Hình 2 22 Tạo cookie 24

Hình 2 23 Trạng thái các request 24

Hình 2 24.Bảng phân tích gói tin request 25

Hình 2 25.Bảng phân tích gói tin response 26

Hình 2 26 Chi tiết gói tin request được sửa đổi cookie 27

Hình 2 27.Bảng cấu hình filter 28

Hình 2 28.Cài đặt Param Miner 29

Hình 2 29 Sử dụng Param Miner – Bước 1 29

Hình 2 30 Sử dụng Param Miner – Bước 2 30

Trang 4

Hình 2 31 Kết quả 31

Hình 2 32 Cài đặt Burp Bounty 32

Hình 2 33 Giao diện chính Burp Bounty 33

Hình 2 31 Chi tiết engine tìm bug Tomcat_Groovy_CVE-2020-9484 33

Hình 2 32 Chi tiết engine tìm bug Tomcat_Groovy_CVE-2020-9484 34

Hình 3 1 Giao diện sau khi đăng nhập với user thường 35

Hình 3 2 Copy trường cookie 36

Hình 3 3 khởi tạo cookie user thường trong Autorize 36

Hình 3 4 Nâng quyền user carlos lên admin 37

Hình 3 5 Phân tích chưa khai thác được lỗ hổng 37

Hình 3 6 Gửi request gốc vào repeater 38

Hình 3 7 Thao tác trong repeater 39

Hình 3 8 Phân tích Autorize 39

Hình 3 9 Gửi request nâng quyền user wiener 40

Hình 3 10 User wiener được nâng quyền admin thành công 40

Hình 3 11 Thực hiện chức năng tìm kiếm với keyword “test” 41

Hình 3 11 Gửi request vào repeater 41

Hình 3 12 Cấu hình request Burp Bounty 42

Hình 3 13 Cấu hình response Burp Bounty 43

Hình 3 14 Cấu hình Issue Burp Bounty 43

Hình 3 15 Scan request 44

Hình 3 16 Cấu hình chỉ rà quét từ các extension 44

Hình 3 17 Các thông số, chi tiết request ở bên dưới góc phải 45

Hình 3 18 Payload gửi từ request được reflect tại response 45

Hình 3 19 Chèn payload XSS vào cùng vị trí extension tìm được 46

Hình 3 20 Hệ thống thực thi payload vừa gửi lên 46

Trang 5

5

LỜI MỞ ĐẦU

Thế giới bước vào cuộc Cách mạng công nghiệp lần thứ tư với sự phát triển mạnh mẽ của không gian mạng đã mang lại những lợi ích to lớn trên nhiều lĩnh vực của đời sống xã hội, làm thay đổi diện mạo mới của nhiều quốc gia, đem lại những thành tựu vượt bậc cho nhân loại Tuy nhiên, với tính toàn cầu và khả năng kết nối vô hạn của không gian mạng có thể nói không bị giới hạn bởi không gian, thời gian và bản chất xã hội của không gian mạng cũng đặt ra nhiều thách thức rất lớn đối với an ninh của các quốc gia trên thế giới như: chiến tranh mạng, chiến tranh thông tin, khủng bố mạng, tội phạm mạng…vấn đề phát triển và làm chủ không gian mạng đã trở thành một trong những nhiệm vụ cấp bách được nhiều quốc gia đặc biệt quan tâm

Phát biểu Tổng thống Mỹ Barack Obama: “Đe dọa về an ninh mạng trở thành một trong các thách thức về kinh tế và ANQG nguy hiểm nhất đối với nước Mỹ Internet hiện giờ trở thành vũ khí hủy diệt hàng loạt”

Phát biểu Tổng thống Nga Pustin: “Trong điều kiện hiện nay, sức sát thương của các cuộc tấn công mạng có thể cao hơn bất kỳ loại vũ khí thông thường nào”

Xét đến sự gia tăng nhanh chóng của việc triển khai công nghệ, an toàn, an ninh mạng đã trở thành một nhu cầu thiết yếu toàn cầu trong nỗ lực điều chỉnh các biện pháp bảo vệ, dù là trực tiếp hay gián tiếp, để ngăn chặn các hệ thống khỏi các cuộc tấn công mạng Burp Suite là một trong những công cụ ra đời để đảm bảo an toàn bảo mật cho ứng dụng web Với hơn 40.000 người dùng, Burp Suite là trình quét

lỗ hổng bảo mật trên web được sử dụng rộng rãi nhất trên thế giới Bài báo cáo sau đây sẽ trình bày những thông tin tìm hiểu được về công cụ này Bài báo cáo gồm 3 chương:

CHƯƠNG 1: GIỚI THIỆU KHÁI QUÁT VỀ CÔNG CỤ BURP SUITE

CHƯƠNG 2: CÀI ĐẶT BURP SUITE, SỬ DỤNG TÍNH NĂNG REPEATER

VÀ CÀI ĐẶT CÁC EXTENSION

CHƯƠNG 3: THỬ NGHIỆM TÍNH NĂNG REPEATER VÀ CÁC

EXTENSION

Trang 6

CHƯƠNG 1: GIỚI THIỆU KHÁI QUÁT VỀ CÔNG CỤ BURP SUITE

1 Tổng quan về Burp Suite

Năm 2003, Burp Suite được khai sinh bởi Dafydd Stuttard (PortSwigger founder and CEO), và hiện tại Burp Suite vẫn đang được liên tục phát triển bởi PortSwigger Trải qua rất nhiều phiên bản, BurpSuite đã có giao diện bắt mắt hơn, tân tiến hơn ngày xưa và có một diện mạo như bây giờ

Burp Suite là một trong những công cụ kiểm tra thâm nhập và tìm lỗ hổng phổ biến nhất và thường được sử dụng để kiểm tra bảo mật ứng dụng web Là một công cụ dựa trên proxy được sử dụng để đánh giá tính bảo mật của các ứng dụng dựa trên web

và thực hiện kiểm tra thực hành

Hình 1 1 Giao diện công cụ Burp Suite

Burpsuite có 2 phiên bản chính là Community Edition, Professional Edition (mất phí) và Enterprise Edition (dùng cho doanh nghiệp) Bản pro sẽ có thêm chức năng scan web, nhưng với phiên bản miễn phí cũng có thể sử dụng hầu hết các chức năng chính của Burpsuite như: proxy server, web spider, intruder and repeater

Trang 7

7

Hình 1 2 So sánh phiên bản Enterprise Edition với phiên bản Professional Edition

Burp Suite là một công cụ pentest ứng dụng web Đây không phải là một công

cụ “ăn sẵn” như Acunetix, mà nó chỉ hỗ trợ một số việc cho tester trong quá trình pentest Với một chút cố gắng, bất kỳ ai cũng có thể sử dụng Burp Suite để kiểm thử các ứng dụng web Các tính năng nâng cao của Burp sẽ giúp tester nâng cao kỹ năng

và trình độ của mình hơn nữa Ngoài ra, giao diện của Burp cũng rất trực quan và thân thiện Chúng ta có thể nhìn rõ request được gửi (Request) cũng như phản hồi từ phía server (Respone)

Hình 1 3 request và Respone được bắt bởi công cụ Burp Suite

Trang 8

2 Một số tính năng nổi bật của Burpsuite

Interception Proxy: được thiết kế để bắt các request từ đó có thể tùy ý sửa đổi

trước khi các request này được gửi lên server

Repeater: cho phép sử dụng một request trước đó và tùy sửa đổi nội dung

request một cách nhanh chóng nhiều lần khác nhau

Intruder: tự động hóa việc gửi hàng loạt các request có chứa các payload

tương tự nhau lên server

Decoder: decode và encode string theo các format khác nhau (URL, Base64,

HTML,…)

Extender: API để mở rộng chức năng của Burp Suite Có thể download các

extensions thông qua Bapp Store

Spider & Discover Content: crawl link có trong ứng dụng web

Scanner (chỉ có trong bản Pro): đây là một mô đun khác mạnh mẽ, nó tự động

quét các lỗ hổng trong ứng dụng web (XSS, SQLi, Command Injection, File Inclusion,…)

Trang 9

9

CHƯƠNG 2: CÀI ĐẶT BURP SUITE, SỬ DỤNG TÍNH NĂNG

REPEATER VÀ CÁC EXTENSION PHỔ BIẾN

1 Cài đặt Burp Suite

1.1 Môi trường cài đặt

Bước 1: Cần cài đặt java (jre) trước khi cài đặt công cụ này Tải và cài đặt java (jre) Java Jre

Bước 2: Tải và cài đặt Burp Suite Burp Suite Có thể tải bản Community Free hoặc trả phí (Bản free sẽ bị giới hạn một số chức năng)

1.2 Cài đặt chức năng proxy

Để có thể sử dụng Burp Suite cần thiết lập Proxy trên Browser hoặc cấu hình trực tiếp trên Windows

Bước 1: Cài đặt Proxy :

Trang 10

Hình 2 1 Cấu hình proxy trên Browser

Trang 11

11

Hình 2 2 Cấu hình proxy trên Windows

Bước 2: Thiết lập cấu hình trên BurpSuite:

Tab Proxy -> Option -> Add Address: 127.0.0.1 Port: 8080 (Port giống với port proxy trên browser )

Trang 12

Hình 2 3 Thiết lập cấu hình trên BurpSuite

Bước 3: Cài đặt chứng chỉ cho Burp Suite

Để có thể bắt các request website sử dụng giao thức https cần cài đặt và trust chứng chỉ của Burp Suite cho trình duyệt Truy cập vào đường dẫn http://burp trên trình duyệt để tải về chứng chỉ và cài đặt trên máy

Hình 2 4 Trang web download chứng chỉ

2 Tính năng repeater

Burp repeater là một công cụ được sử dụng để sửa đổi thủ công các yêu cầu HTTP và kiểm tra các phản hồi được cung cấp bởi trang Điều này thậm chí có thể dẫn đến việc thăm dò các lỗ hổng trên trang web Về cơ bản, điều này được sử dụng

để phát lại các yêu cầu đến máy chủ

Trang 13

13

Đây là tính năng dùng thường xuyên nhất đối với chuyên viên kiểm tra bảo mật Cho phép thay đổi bất cứ phần nào trong request trực tiếp trong raw mode

Hình 2 5 Giao diện chính của trang repeater

Để có thể sử dụng Repeater, trước tiên vào tab repeater có trong Burp Suite, sau đó lựa chọn target ở góc trên bên phải và điền địa chỉ IP hoặc tên miền của mục tiêu vào cổng port tương ứng

Hình 2 6 Cấu hình target của repeater

Trang 14

Sau khi chọn mục tiêu, sử dụng cột bên trái điền nội dung các yêu cầu gửi đi,

dữ liệu trả về sẽ có ở cột bên phải

2.1 Sử dụng Burp Repeater với các gói tin HTTP

Có thể chọn một thông điệp HTTP ở bất kỳ đâu trong Burp và chọn Send to Repeater từ menu Thao tác này sẽ tạo một tab request mới trong Repeater và tự động

điền chi tiết target và request

Hình 2 7 Gửi request đến repeater

Trang 15

15

2.2 Gửi HTTP requests

Sau khi đã gửi đến Repeater, có thể chỉnh sửa chi tiết các thông tin để tạo thành Request mới, sau đó gửi lên hệ thống mục tiêu, response trả về là response của request gần nhất

Hình 2 8 Request từ repeater và response trả về

Trang 16

2.4 Repeater options

Cập nhật Content-Length - Tùy chọn này kiểm soát việc Burp có tự động cập

nhật tiêu đề Độ dài Nội dung của yêu cầu khi cần thiết hay không Việc sử dụng tùy chọn này thường là cần thiết khi thông báo yêu cầu chứa nội dung

Unpack GZIP / deflate - Tùy chọn này kiểm soát việc Burp có tự động giải

nén nội dung GZIP- và deflate-nén nhận được trong phản hồi hay không

Theo dõi chuyển hướng - Cài đặt này cho phép các response tự động chuyển

hướng Nếu Repeater nhận được phản hồi chuyển hướng mà nó không được cấu hình

để tự động chuyển hướng, nó sẽ hiển thị nút Chuyển hướng ở phía trên giao diện

người dùng Điều này cho phép thực hiện theo cách thủ công chuyển hướng sau khi xem response Tính năng này rất hữu ích để xem qua từng yêu cầu và phản hồi theo trình tự chuyển hướng Các cookie mới sẽ được xử lý trong các chuyển hướng thủ công này nếu tùy chọn này đã được đặt trong tùy chọn Quy trình cookie trong chuyển hướng được mô tả bên dưới

Chuẩn hóa phần cuối dòng HTTP / 1 - Theo mặc định, Repeater sẽ chuẩn

hóa phần cuối dòng HTTP / 1 bằng cách tự động thêm một ký tự dòng mới (\ n) vào bất kỳ dòng nào kết thúc bằng ký tự xuống dòng độc lập (\ r) Điều này làm giảm nguy

cơ vô tình gửi một request không hợp lệ

2.5 Thanh công cụ phân tích gói tin

Ở đầu mỗi yêu cầu hoặc phản hồi, có một thanh công cụ cung cấp một loạt các tính năng để giúp bạn phân tích các loại thông báo khác nhau Có thể luân phiên giữa các chế độ xem khác nhau để kiểm soát cách hiển thị nội dung của thông báo, thực hiện nhiều thao tác phổ biến và kết hợp các tiện ích mở rộng tùy chỉnh để giúp phân tích gói tin

• Raw

Trong dạng xem này, các thông tin của gói tin được hiển thị toàn bộ ở dạng thô Bao gồm các chức năng hữu ích khác nhau bao gồm phân tích cú pháp, phím

Trang 17

17

nóng và tìm kiếm theo ký tự Có thể sử dụng nút \ n để chuyển đổi xem các ký tự

ẩn có được hiển thị hay không

Hình 2 10 Gói tin phản hồi hiển thị dạng Raw

• Pretty

Trong dạng xem này, có thể truy cập tất cả các chức năng giống như trong

dạng xem Raw Sự khác biệt chính là tính năng in đẹp của trình soạn thảo văn bản

được kích hoạt Điều này cải thiện đáng kể khả năng đọc dữ liệu, đánh dấu và đọc

code trong thông điệp HTTP bằng cách hiển thị chúng với thụt lề và ngắt dòng

được tiêu chuẩn hóa

Trang 18

Hình 2 11 Gói tin phản hồi hiển thị dạng Pretty

• Hex

Chế độ xem này hiển thị gói tin ở dạng thô trong trình chỉnh sửa hệ thập lục

phân Nó hiển thị các thông báo được sắp xếp thành các dòng 16 byte và hiển thị

giá trị hex của mỗi byte

Hình 2 12 Gói tin phản hồi hiển thị dạng Hex

Trang 19

19

• Render

Áp dụng cho các phản hồi HTTP có chứa nội dung HTML hoặc hình ảnh Nó

cố gắng hiển thị nội dung của nội dung gói tin ở dạng xuất hiện khi hiển thị trong trình duyệt

Hình 2 13 Gói tin phản hồi hiển thị dạng Render

3 Cài đặt và sử dụng một số extension phổ biến

3.1 Giới thiệu tính năng extender

Điều đầu tiên cần biết là Burp Extender cho phép sử dụng các extensions của Burp suite để mở rộng các tính năng bằng mã nguồn của riêng mình hoặc bên thứ ba Qua đó có thể tải và quản lý các extension, xem chi tiết các extension đã cài đặt, cài đặt extension từ BApp Store, xem API Burp Extender hiện tại và cấu hình các tùy chọn về cách xử lý tiện ích mở rộng

Hình 2 14.Giao diện quản lý Extension

Trang 20

Thực hiện install các extension trong tab PApp Store, ở đây có hiển thị tên extensions, trạng thái cài đặt, mức độ phổ biến, mức độ đánh giá, ngày update gần nhất,…

Phía bên phải hiển thị thêm thông tin chi tiết của extension, tác giả, phiên bản, source

Đối với mỗi Request thực hiện, extension này sẽ thực hiện thêm 2 request nữa,

1 là có sử dụng Cookie của tài khoản thứ 2 mà mình config, 2 là request không sử dụng Cookie, tức là người dùng chưa thực hiện đăng nhập

Ta có thể sử dụng 2 tài khoản:

- Người dùng A: Quản trị viên

- Người dùng B: Người dùng bình thường

Trang 21

21

Duyệt ứng dụng web với người dùng A và thêm cookie của người dùng B trong

chế độ tự động của Autorize

A Cài đặt

Vì Autorize được code bằng python nên bước đầu cần thiết lập môn trường

python trên Burp Suite

Bước 1: tải xuống Jython JAR độc lập tại link:

http://www.jython.org/download.html

Bước 2: Mở các danh mục Burp Suite theo thứ tự:

Extender -> Options -> Python Environment -> Select File

Sau đó chọn đến file jython.jar nằm trong folder vừa download

Hình 2 16 Thiết lập môi trường Python

Trang 22

Bước 4: Tìm đến tool Autorize trong Bapp Store, sau đó click nút install

Hình 2 17 Cài đặt Autorize trong Bapp Store

Sau khi cài đặt thành công sẽ hiển thị tab Autorize bên trên thanh công cụ

Hình 2 18 Giao diện chính extension Autorize

Trang 23

23

B Sử dụng

Đầu tiên, khởi động bằng cách nhấn vào nút Autorize is off

Hình 2 19 Các cấu hình cơ bản của extension Autorize

Hình 2 20 Trạng thái đang hoạt động

Ở đây cho phép các option:

- Bỏ qua các request gửi lên và nhận về response trạng thái 304/204 để tráng tình trạng false positive

- Chặn trạng thái 304 not modified

- Chặn cả những request từ Repeater

- Check cả với user trạng thái unauthenticated

- Thay đổi giá trị các parametors

Ngoài ra phía bên dưới cho phép xóa tất cả nội dung cũ, hoặc tự động cuộn hỗ trợ cho việc dễ dàng phân tích và thao tác

Trang 24

Tiếp theo đến phần cấu hình cookie, ở đây nhập cookie của người dùng khác hoặc người dùng với quyền thấp hơn, sau đó Autorize sẽ gửi thêm một request với cookie vừa nhập

Hình 2 21 Thanh cấu hình cookies

Sau khi nhập cookie, nhấn add và nhập tên cookie để khởi tạo

Hình 2 22 Tạo cookie

Ở thanh hiển thị bên trái hiển thị các thông tin của từng request

Hình 2 23 Trạng thái các request

Đầu tiên là các thông tin cơ bản như URL, content-length với từng loại request:

- Request gốc, request đã chỉnh sửa, request không xác thực

Ngày đăng: 09/02/2022, 19:32

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w