Công cụ đánh giá ứng dụng bảo mật: - Burp Suite: Một bộ công cụ mạnh mẽ cho kiểm thử ứng dụng web, bao gồm các tính năng như proxy, scanner, và intruder để phát hiện lỗ hổng bảo mật - Ac
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA AN TOÀN THÔNG TIN
BÀI TẬP VỀ NHÀ Môn: Kiểm thử xâm nhập
Đề Tài: Tìm hiểu về các công cụ Pentest
Hà Nội, tháng 2 năm 2024
Giảng viên: Đinh Trường Duy Nhóm môn học: 2
Sinh viên:
Nguyễn Lê Thanh Tùng B20DCAT170
Trang 21 Liệt kê 10 công cụ Pentest
1.1 Công cụ đánh giá ứng dụng bảo mật:
- Burp Suite: Một bộ công cụ mạnh mẽ cho kiểm thử ứng dụng web, bao gồm các tính năng như proxy, scanner, và intruder để phát hiện lỗ hổng bảo mật
- Acunetix:
+ Mục đích: Kiểm thử ứng dụng web và phát hiện các lỗ hổng bảo mật
+ Lí do phân loại: Acunetix chuyên tập trung vào việc phát hiện các lỗ hổng bảo mật trong ứng dụng web, bao gồm SQL injection, cross-site scripting (XSS), và các lỗ hổng khác
- Netsparker:
+ Mục đích: Tự động phát hiện lỗ hổng bảo mật trong ứng dụng web
+ Lí do phân loại: Netsparker cung cấp các công cụ tự động để kiểm tra ứng dụng web và phát hiện các lỗ hổng bảo mật một cách tự động, giúp tăng hiệu suất và tiết kiệm thời gian cho các chuyên gia bảo mật
- AppSpider:
+ Mục đích: Kiểm thử ứng dụng web và phát hiện các lỗ hổng bảo mật
+ Lí do phân loại: AppSpider cung cấp các tính năng kiểm thử tự động và bán tự động để kiểm tra ứng dụng web và phát hiện các lỗ hổng bảo mật, bao gồm cả các
lỗ hổng phức tạp như truy cập không hợp lệ vào dữ liệu và sự kiện
1.2 Công cụ đánh giá an ninh mạng
- Nmap (Network Mapper):
+ Mục đích: Phân tích mạng và xác định thiết bị trên mạng, phát hiện port mở, dịch
vụ chạy trên các port đó và cung cấp nhiều thông tin khác về mạng
+ Lí do phân loại: Nmap được sử dụng rộng rãi trong cả Pentest và quản lý mạng để phân tích cơ bản và phức tạp của mạng Nó cung cấp thông tin về các thiết bị trên mạng, bao gồm cả các dịch vụ đang chạy trên các cổng, giao thức mạng đang sử dụng và nhiều thông tin khác giúp người dùng hiểu rõ hơn về cấu trúc mạng và các
lỗ hổng tiềm ẩn
Trang 3- Wireshark:
+ Mục đích: Kiểm tra và phân tích các gói tin trên mạng để phát hiện các hoạt động độc hại hoặc lỗ hổng bảo mật
+ Lí do phân loại: Wireshark là một công cụ mạnh mẽ cho phép người dùng kiểm tra và phân tích các gói tin trên mạng Bằng cách ghi lại và phân tích dữ liệu mạng, Wireshark giúp phát hiện các hoạt động độc hại như tấn công mạng, lỗ hổng bảo mật, và các vấn đề về hiệu suất mạng Điều này giúp người dùng có cái nhìn sâu hơn
về hoạt động trên mạng và giải quyết các vấn đề an ninh mạng một cách hiệu quả 1.3 Công cụ đánh giá truy cập không dây từ xa
- Reaver:
+ Mục đích: Tấn công vào mạng Wi-Fi bằng cách thử các mã PIN WPS (Wi-Fi Protected Setup)
+ Lí do phân loại: Reaver là một công cụ phổ biến được sử dụng để tấn công vào mạng Wi-Fi sử dụng WPS bằng cách thử hàng loạt mã PIN mặc định Nó có khả năng tìm ra mã PIN chính xác trong một thời gian ngắn, cho phép tấn công vào mạng Wi-Fi một cách hiệu quả
- Fern Wifi Cracker:
+ Mục đích: Tấn công và bẻ khóa mật khẩu mạng Wi-Fi
+ Lí do phân loại: Fern Wifi Cracker là một công cụ đơn giản nhưng mạnh mẽ cho phép người dùng tấn công mạng Wi-Fi và bẻ khóa mật khẩu bằng cách sử dụng các
kỹ thuật như tấn công dictionary và tấn công brute-force
1.4 Công cụ kiểm tra mạng và lọc thiết bị
- Nikto:
+ Mục đích: Phát hiện và khai thác các lỗ hổng bảo mật trên các máy chủ web và ứng dụng
+ Lí do phân loại: Nikto là một công cụ kiểm thử web tự động, tập trung vào việc phát hiện các lỗ hổng bảo mật trên các máy chủ web và ứng dụng Nó có khả năng quét và phát hiện các lỗ hổng phổ biến như lỗ hổng XSS, lỗ hổng SQL injection và
Trang 4nhiều vấn đề bảo mật khác, giúp người dùng cải thiện an ninh cho các ứng dụng web của họ
- Nessus:
+ Mục đích: Quét lỗ hổng trong hệ thống và ứng dụng, và cung cấp báo cáo chi tiết
về các vấn đề bảo mật
+ Lí do phân loại: Nessus là một công cụ kiểm thử tự động bảo mật, được sử dụng
để quét lỗ hổng trong hệ thống và ứng dụng một cách tự động Nó cung cấp các báo cáo chi tiết về các lỗ hổng bảo mật được phát hiện, giúp người dùng xác định và khắc phục các vấn đề an ninh một cách nhanh chóng và hiệu quả
- Snort:
+ Mục đích: Giám sát và phát hiện các hoạt động độc hại hoặc tấn công trên mạng + Lí do phân loại: Snort là một HIDS (Host-based Intrusion Detection System) và NIDS (Network-based Intrusion Detection System) mạnh mẽ, được sử dụng để giám sát và phát hiện các hoạt động độc hại hoặc tấn công trên mạng Nó có khả năng phát hiện các biểu hiện của các cuộc tấn công thông qua phân tích gói tin mạng và các quy tắc được cấu hình, giúp người quản trị mạng phát hiện
2 Tìm hiểu rõ về 3 công cụ
2.1 Công cụ BurpSuite
2.1.1 Giới thiệu công cụ
- Là công cụ này dựa trên proxy, và các mô đun mạnh mẽ và được đóng gói với các phần mở rộng tùy chọn có thể tăng hiệu quả kiểm tra ứng dụng web Burp có giao diện rất trực quan và thân thiện Burp Proxy cho phép người sử dụng nắm bắt request được gửi (Request) cũng như phản hồi từ phía server (Respone)
2.1.2 Cách sử dụng
Burp Suite có giao diện người dùng thân thiện và dễ sử dụng Các tính năng chính của nó bao gồm:
+Proxy: Cho phép người dùng chuyển hướng lưu lượng HTTP/S giữa trình duyệt và máy chủ, giúp ghi lại và sửa đổi các yêu cầu và phản hồi
Trang 5+Scanner: Tự động phát hiện các lỗ hổng bảo mật trong ứng dụng web như SQL injection, XSS, và CSRF
+Intruder: Tự động hóa các cuộc tấn công và kiểm tra hàng loạt dữ liệu đầu vào khác nhau để phát hiện lỗ hổng bảo mật
+Repeater: Cho phép người dùng tái tạo và sửa đổi các yêu cầu HTTP/S để kiểm tra
và khai thác các lỗ hổng bảo mật
2.1.3 Ứng dụng thực tế
Burp Suite được sử dụng rộng rãi trong các quá trình kiểm thử bảo mật ứng dụng web Các chuyên gia bảo mật sử dụng nó để:
+Phát hiện và khai thác các lỗ hổng bảo mật trong ứng dụng web
+Kiểm tra và xác minh tính bảo mật của các ứng dụng web
+Xác định và loại bỏ các lỗ hổng bảo mật từ quy trình phát triển ứng dụng
+Tìm kiếm và khắc phục các lỗ hổng bảo mật trong các ứng dụng web sản phẩm 2.1.4 Cách cài đặt
Burp Suite có thể được tải xuống từ trang web chính thức của PortSwigger và có các phiên bản miễn phí và trả phí
2.1.5 Demo
+ Cài đặt: Tải trên trang chính của BurpSuite
Trang 6+ Mở và thực hiện bắt các gói tin trên BurpSuite:
+ Proxy của BurpSuite:
+ Chức năng Repeater:
Trang 72.2 Công cụ SQLmap
2.2.1 Giới thiệu
- Là một công cụ mã nguồn mở được sử dụng để tự động phát hiện và khai thác
lỗ hổng SQL injection trong các ứng dụng web SQL injection là một kỹ thuật tấn công phổ biến nhằm tận dụng các lỗ hổng trong quá trình xử lý dữ liệu của ứng dụng web, cho phép tấn công gia nhập và thực thi các truy vấn SQL bất hợp pháp
2.2.2 Cách sử dụng
- Quét: Sử dụng các tùy chọn và tham số để chỉ định URL của ứng dụng web cần quét và các thông số khác như phương thức HTTP, cookie, user-agent, v.v
- Phát hiện lỗ hổng: SQLMap tự động quét và phát hiện các lỗ hổng SQL injection trong các tham số của URL được cung cấp
- Khai thác lỗ hổng: Sau khi phát hiện được lỗ hổng, SQLMap có thể tự động thực thi các truy vấn SQL để thu thập thông tin từ cơ sở dữ liệu, thậm chí là kiểm soát hoàn toàn cơ sở dữ liệu nếu có quyền truy cập đủ
- Kiểm tra và khai thác dữ liệu: Sau khi thu thập thông tin từ cơ sở dữ liệu, người dùng có thể kiểm tra và khai thác dữ liệu theo nhu cầu
2.2.3 Ứng dụng thực tế
- Kiểm thử bảo mật ứng dụng web: SQLMap được sử dụng để kiểm thử bảo mật bằng cách tìm kiếm các lỗ hổng SQL injection trong các ứng dụng web
Trang 8- Phát hiện và bảo vệ: SQLMap có thể được sử dụng để phát hiện lỗ hổng và bảo vệ khỏi các cuộc tấn công SQL injection, giúp tăng cường an ninh cho các ứng dụng web
2.2.4 Cách cài đặt
- SQLMap có thể được cài đặt trên nhiều hệ điều hành khác nhau như Linux, Windows và macOS
2.2.5 Demo
+ Cài đặt:
+ Quét lỗ hổng SQL injection:
+ Thu thập dữ liệu:
Trang 9+ Quét với các lựa chọn tùy chỉnh
2.3 Công cụ Snort
2.3.1 Giới thiệu
Trang 10- Snort là một hệ thống phát hiện xâm nhập (Intrusion Detection System - IDS)
mã nguồn mở, được sử dụng để giám sát và phát hiện các hoạt động xâm nhập trên mạng Nó có khả năng phát hiện các mẫu tấn công thông qua việc theo dõi và phân tích lưu lượng mạng
2.3.2 Cách sử dụng
- Cài đặt và cấu hình: Bắt đầu bằng việc cài đặt Snort trên một máy tính hoặc thiết bị mạng và cấu hình các quy tắc phát hiện để định rõ các loại hoạt động xâm nhập mà bạn muốn theo dõi
- Giám sát lưu lượng mạng: Snort sẽ theo dõi lưu lượng mạng đến và từ các thiết bị mạng và phân tích các gói tin để phát hiện các mẫu tấn công
- Phát hiện tấn công: Khi Snort phát hiện một hoạt động không bình thường hoặc trùng khớp với các quy tắc phát hiện đã được cấu hình, nó sẽ tạo ra cảnh báo hoặc thực hiện các hành động khác như ghi lại thông tin và gửi cảnh báo
- Xử lý sự cố: Dựa trên các cảnh báo hoặc thông tin ghi lại, người quản trị mạng
có thể điều tra và xử lý các sự cố an ninh mạng
2.3.3 Ứng dụng thực tế
- Bảo vệ mạng doanh nghiệp: Snort được sử dụng trong môi trường doanh nghiệp để giám sát và ngăn chặn các cuộc tấn công mạng như tấn công từ chối dịch
vụ (DoS), tấn công lạm dụng từ chối dịch vụ (DDoS) và các loại tấn công khác
- Phân tích lưu lượng mạng: Snort cung cấp khả năng giám sát và phân tích lưu lượng mạng, giúp các chuyên gia an ninh mạng hiểu rõ hơn về hoạt động của mạng
và phát hiện các mẫu tấn công mới
2.3.4 Cài đặt
- Thực hiện câu lệnh cập nhật:
Trang 11- Cài đặt các thư viện cần thiết:
apt install build-essential libpcap-dev libpcre3-dev libnet1-dev zlib1g-dev luajit hwloc libdnet-dev libdumbnet-dev bison flex liblzma-dev openssl libssl-dev pkg-config libhwloc-dev cmake cpputest libsqlite3-dev uuid-dev libcmocka-dev libnetfilter-queue-dev libmnl-dev autotools-dev libluajit-5.1-dev libunwind-dev -y
- Cài đặt Snort
Trang 12- Cài đặt thành công Snort
- Tạo list danh sách các rules
- Copy file config đến /etc
- Dùng danh sách danh tiếng trên Snort