Nghiên cứu về mạng lưới Network Mapper (Nmap) - Cơ sở an toàn thông tin - Học Viện Kỹ Thuật Mật Mã
Burp Suite là một bộ công cụ kiểm thử bảo mật ứng dụng web (Web Application Security Testing - WAST) được phát triển bởi Portswigger. Nó cung cấp cho người dùng một nền tảng tích hợp để thực hiện các cuộc kiểm tra thâm nhập toàn diện, bao gồm: Phát hiện lỗ hổng: Burp Suite cung cấp nhiều công cụ để quét các ứng dụng web nhằm phát hiện các lỗ hổng bảo mật phổ biến như SQL Injection, Cross-Site Scripting (XSS), và lỗi định dạng đầu vào. Tài liệu giúp bạn tham khảo và đạt kết quả tốt. Mời bạn đọc đón xem!
Preview text:
BAN CƠ YẾU CHÍNH PHỦ
HỌC VIỆN KỸ THUẬT MẬT MÃ
¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ BÀI TẬP LỚN 2
TÀI LIỆU ĐÁNH GIÁ HỆ THỐNG
Sinh viên thực hiện:
TP.Hồ Chí Minh - 2024 MỤC LỤC
PHẦN I: MÔ TẢ CÔNG CỤ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
I. BurpSuite. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
II. Metasploit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
III. Nmap. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
PHẦN II: THỰC HIỆN TẤN CÔNG VÀO WEB DOANH NGHIỆP B. . . . . . 6
SQL Injection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
XSS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Clickjacking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
CSRF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
SSRF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
OS command injection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Path traversal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Access control vulnerabilities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Authentication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
PHẦN III: KIỂM THỬ MÁY CHỦ DOANH NGHIỆP(Metasploitable3.ova)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
I. Network Sniffing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
II. File Integrity Checking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
III. Port and Services identification. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
IV. Vulnerability Scanning: GlassFish. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
V. Remote Access SSH. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
VI. Password Cracking Desktop Central. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
PHẦN I: MÔ TẢ CÔNG CỤ I. BurpSuite
- Burp Suite là một bộ công cụ kiểm thử bảo mật ứng dụng web (Web
Application Security Testing - WAST) được phát triển bởi Portswigger. Nó
cung cấp cho người dùng một nền tảng tích hợp để thực hiện các cuộc kiểm
tra thâm nhập toàn diện, bao gồm:
o Phát hiện lỗ hổng: Burp Suite cung cấp nhiều công cụ để quét các
ứng dụng web nhằm phát hiện các lỗ hổng bảo mật phổ biến như SQL
Injection, Cross-Site Scripting (XSS), và lỗi định dạng đầu vào.
o Khai thác lỗ hổng: Sau khi phát hiện lỗ hổng, Burp Suite có thể được
sử dụng để khai thác chúng nhằm thu thập thêm thông tin hoặc truy
cập trái phép vào hệ thống.
o Xác minh lỗ hổng: Burp Suite giúp người dùng xác minh xem lỗ
hổng đã được sửa chữa hay chưa bằng cách kiểm tra lại ứng dụng web
sau khi bản vá được áp dụng.
- Burp Suite được tích hợp nhiều tính năng mạnh mẽ, bao gồm:
o Proxy: Burp Suite hoạt động như một proxy web, cho phép người
dùng chặn và sửa đổi lưu lượng truy cập giữa trình duyệt của họ và ứng dụng web.
o Công cụ quét: Burp Suite bao gồm nhiều công cụ quét tự động để
phát hiện các lỗ hổng bảo mật phổ biến.
o Công cụ tấn công: Burp Suite cung cấp các công cụ để khai thác các
lỗ hổng được phát hiện, chẳng hạn như Intruder và Repeater.
o Công cụ phân tích: Burp Suite bao gồm các công cụ để phân tích dữ
liệu thu thập được trong quá trình kiểm tra, chẳng hạn như Decoder và Site Map.
- Burp Suite có hai phiên bản:
o Phiên bản miễn phí: Phiên bản miễn phí cung cấp đầy đủ các tính
năng cơ bản để thực hiện các cuộc kiểm tra thâm nhập.
o Phiên bản Pro: Phiên bản Pro cung cấp các tính năng nâng cao hơn,
chẳng hạn như hỗ trợ quét tự động toàn diện và khả năng tích hợp với các công cụ khác.
- Burp Suite là một công cụ phổ biến được sử dụng bởi các chuyên gia bảo
mật để kiểm tra tính bảo mật của các ứng dụng web. Nó là một công cụ
mạnh mẽ có thể được sử dụng để phát hiện và khai thác nhiều loại lỗ hổng bảo mật. II. Metasploit
- Metasploit là một nền tảng mã nguồn mở mạnh mẽ dành cho việc phát triển,
thử nghiệm và sử dụng các kỹ thuật tấn công mạng. Được phát triển bởi
Rapid7, Metasploit cung cấp cho các chuyên gia bảo mật, nhà nghiên cứu và
hacker đạo đức một tập hợp các công cụ khai thác lỗ hổng để kiểm tra tính
bảo mật của hệ thống và ứng dụng.
- Metasploit bao gồm nhiều tính năng mạnh mẽ, bao gồm:
o Cơ sở dữ liệu khai thác: Metasploit đi kèm với một cơ sở dữ liệu
khổng lồ chứa thông tin về các lỗ hổng bảo mật và mã khai thác tương ứng.
o Khung làm việc khai thác: Metasploit cung cấp một khung làm việc
cho phép người dùng dễ dàng phát triển và sử dụng các mã khai thác mới.
o Công cụ quét: Metasploit bao gồm các công cụ quét tự động để phát
hiện các lỗ hổng trên hệ thống mạng.
o Công cụ hậu khai thác: Metasploit cung cấp các công cụ để thực
hiện các hành động sau khi khai thác thành công, chẳng hạn như cài
đặt backdoor và thu thập thông tin.
o Giao diện dòng lệnh: Metasploit có giao diện dòng lệnh mạnh mẽ
cho phép người dùng tự động hóa các tác vụ.
- Metasploit được sử dụng bởi nhiều chuyên gia bảo mật khác nhau, bao gồm:
o Chuyên gia bảo mật mạng: Sử dụng Metasploit để kiểm tra tính bảo
mật của hệ thống mạng và ứng dụng web.
o Nhà nghiên cứu bảo mật: Sử dụng Metasploit để phát hiện và phân
tích các lỗ hổng bảo mật mới.
o Hacker đạo đức: Sử dụng Metasploit để giúp các tổ chức xác định và
sửa chữa các lỗ hổng bảo mật.
- Metasploit có hai phiên bản:
o Phiên bản miễn phí: Phiên bản miễn phí cung cấp đầy đủ các tính
năng cơ bản để thực hiện các cuộc kiểm tra thâm nhập.
o Phiên bản Pro: Phiên bản Pro cung cấp các tính năng nâng cao hơn,
chẳng hạn như hỗ trợ cho nhiều hệ điều hành và kiến trúc, cũng như
khả năng tích hợp với các công cụ khác.
- Metasploit là một công cụ mạnh mẽ có thể được sử dụng cho nhiều mục
đích khác nhau. Tuy nhiên, điều quan trọng cần lưu ý là Metasploit không
phải là một công cụ "hack" tự động. Người dùng cần có kiến thức và kỹ
năng bảo mật để sử dụng Metasploit một cách hiệu quả. - III. Nmap
- Nmap (viết tắt của Network Mapper) là một công cụ quét mạng miễn phí
và mã nguồn mở được sử dụng để khám phá mạng và thu thập thông tin về
các thiết bị được kết nối. Nmap hoạt động bằng cách gửi các gói tin đến các
địa chỉ IP và phân tích phản hồi để xác định các cổng mở, dịch vụ đang chạy,
hệ điều hành và các thông tin khác.
- Nmap là một công cụ đa năng có thể được sử dụng cho nhiều mục đích khác nhau, bao gồm:
o Khám phá mạng: Nmap có thể được sử dụng để xác định tất cả các
thiết bị được kết nối với mạng, bao gồm cả máy tính, máy chủ, router và thiết bị IoT.
o Quét cổng: Nmap có thể được sử dụng để quét các cổng TCP và UDP
trên các thiết bị để xác định các dịch vụ đang chạy.
o Phát hiện hệ điều hành: Nmap có thể được sử dụng để phát hiện hệ
điều hành của các thiết bị được kết nối.
o Phát hiện phiên bản dịch vụ: Nmap có thể được sử dụng để phát
hiện phiên bản của các dịch vụ đang chạy trên các thiết bị.
o Lấy dấu vân tay dịch vụ: Nmap có thể được sử dụng để lấy dấu vân
tay dịch vụ, giúp xác định loại dịch vụ đang chạy trên một cổng cụ thể.
o Kiểm tra lỗ hổng: Nmap có thể được sử dụng để kiểm tra các lỗ hổng
bảo mật phổ biến trên các thiết bị.
- Nmap có nhiều tùy chọn dòng lệnh khác nhau cho phép người dùng tùy
chỉnh quét của họ. Ví dụ, người dùng có thể chỉ định dải IP để quét, các cổng
để quét và loại quét để thực hiện. Nmap cũng có thể được sử dụng với các
tập lệnh để tự động hóa các tác vụ.
- Nmap là một công cụ phổ biến được sử dụng bởi các quản trị viên mạng,
chuyên gia bảo mật và những người đam mê mạng. Nó là một công cụ mạnh
mẽ có thể được sử dụng cho nhiều mục đích khác nhau và có thể cung cấp
thông tin chi tiết có giá trị về mạng của bạn.
PHẦN II: THỰC HIỆN TẤN CÔNG VÀO WEB DOANH NGHIỆP B SQL Injection Cấp độ rủi ro Nguy hiểm
Kẻ tấn công sử dụng lỗ hỏng của database để truy vấn
thông tin không được phép. Khả năng xảy ra Dễ dàng
Yêu cầu kiến thức về SQL Injection Tổng quan:
- Lợi dụng lỗ hổng SQL Injection để thực hiện truy vấn thông tin
Có thể thực hiện theo các bước:
- Đặt bộ lọc bất kỳ cho sản phẩm.
- Trên thanh tìm kiếm, sử đổi tham số category, đặt thành giá trị ‘+UNION+SELECT+NULL-- - Có lỗi xảy ra.
- Thêm giá trị NULL trong tham số category để bổ sung thêm cột có chứa giá trị null.
- Thêm cho tới khi lỗi biến mất và phản hồi bao gồm nội dung chứa giá trị null. - Thành công.
Phương pháp phát hiện:
- Kiểm thử bằng cách truyền vào các câu lệnh truy vấn để kiểm tra kết quả trả về. Khuyến nghị:
- Sử dụng tham số thay thế
- Sử dụng Prepared Statements
- Sử dụng hàm escape_string()
- Sử dụng ORM (Object-Relational Mapping)
- Sử dụng Web Application Firewall (WAF) XSS Cấp độ rủi ro Nguy hiểm
Tin tặc lợi dụng lỗ hổng XSS để chèn script độc hại Khả năng xảy ra Thấp
Yêu cầu kiến thức về JavaScript và cách trang web vận hành Tổng quan:
- Ứng dụng web không thực hiện việc xác thực và lọc dữ liệu đầu vào một
cách cẩn thận cho phép kẻ tấn công chèn mã JavaScript độc hại vào
Document Object Model (DOM) của trang web.
Có thể thực hiện theo các bước:
- Search từ khoá bất kỳ vào ô tìm kiếm
- Phần tìm kiếm được nằm trong json
- Truy cập vào Target, mở tệp searchResults.js và nhận thấy rằng phản hổi
từ json được sử dụng cùng với lệnh gọi hàm eval().
- Bằng cách thử nghiệm các chuỗi tìm kiếm khác nhau, nhận thấy rằng phản
hồi từ json đang cố gắn thoát khỏi dấu ngoặc kép. Tuy nhiên dấu gạch chéo không được thoát.
- Thực hiện tìm kiếm với chuỗi \”-alert(1)}/ - Thành công.
Phương pháp phát hiện:
- Xử dụng công cụ DOM Invader có trong extension của Burp Suite Khuyến nghị:
- Xác thực dữ liệu đầu vào. - Sử dụng Output Encoding.
- Sử dụng Content Security Policy (CSP). Clickjacking Cấp độ rủi ro Nguy hiểm
Tin tặc tạo 1 số HTML đóng khung tài khoản để đánh lừa người dùng. Khả năng xảy ra Thấp
Tin tặc với kiến thức về XSS có thể tấn công Tổng quan
- Có thể lợi dung lỗ hổng DOM-based XSS thực hiện clickjacking để lừa nạn nhân
Các bước thực hiện: - Vào phần submit feedback - Nhập feedback - Submit feedback
- Ta có thể thấy sau khi submit feedback, input name của chúng ta được hiển thị trên trang web - Kiểm tra sourcecode
- Ta có thể thấy input name “CheeseBurger“ được chèn trên HTML và ta
cũng biết được input name tên “name” - Bắt đầu tạo iframe
- Chọn exploit server, viết đoạn mã HTML
- Ta sử dụng src là trang web chứa phần submit feedback - Ở phần name sẽ nhập
- Email, subject, message tùy ý
- Chỉnh sửa properties của iframe và div phù hợp sao cho nội dung của div
nằm trùng với nút submit feedback - Send to victim - Hoành thành
- Tại input value nhập địa chỉ email muốn thay đổi - Store để lưu - Send to victim - Hoàn thành
Phương pháp phát hiện:
- Sử dụng phương pháp XSS phổ biến Khuyến nghị:
- Sử dụng Content Security Policy (CSP)
- Sử dụng X-Frame-Options heade
- Sử dụng JavaScript có khả năng chống XSS
- Sử dụng Web Application Firewall (WAF)
- Cập nhật phần mềm máy chủ và thư viện web thường xuyên CSRF Cấp độ rủi ro Nguy hiểm
Tin tặc lợi dụng lỗ hổng CSRF thực hiện hành vi sai trái Khả năng xảy ra Dễ dàng
Tin tặc với kiến thức tối thiểu có thể tấn công Tổng quan
Có thể lợi dụng lỗ hổng CSRF khi tạo request đến server
Các bước thực hiện:
- Mở phần mềm burpsuite và đăng nhập với tài khoản wiener:peter - Update email
- Ở phần mềm burpsuite ấn vào tab Proxy -> HTTP History, ta thấy được request Update email
- Ở phần Request chuột phải và chọn Send to Repeater
- Thay đổi CSRF token của Request - Send request
- Tại phần Response ta nhận được kết quả là Bad Request vì CSRF Token không hợp lệ
- Ở phần Request chuột phải và chọn change request method - Send lại request
- Ở phần Response ta sẽ thu được kết quả Found, CSRF token hợp lệ - Chọn exploit server
- Ở phần tag body ta chèn đoạn mã sau
academy.net/my-account/change-email/">
ue="CheeseBurger@Cheese.ca">
- Tại form action nhập URL của host đi kèm /my-account/change-email/
- Tại input value nhập địa chỉ email muốn thay đổi - Store để lưu - Send to victim - Hoàn thành
Phương pháp phát hiện:
- Sử dụng công cụ burpsuite để theo dõi/thay đổi request Khuyến nghị:
- Sử dụng token chống CSRF
- Sử dụng HTTP method khác POST
- Kiểm tra nguồn gốc yêu cầu - Sử dụng SameSite cookie SSRF Cấp độ rủi ro Nguy hiểm
Thay đổi URL để truy cập giao diện quản trị
Khả năng xảy ra Dễ dàng
Tin tặc với kiến thức tối thiểu có thể tấn công Tổng quan
- Trang web tồn tại lỗ hổng ở phần kiểm tra hàng tồn kho. Lợi dụng điều đó,
ta thực thi các command, web sẽ hiện ra kết quả
Các bước thực hiện
- Duyệt đến /admin và quan sát rằng không thể truy cập trang quảng trị.
- Ghé thăm 1 sản phẩm, nhấp vào “Check Stock” và chặn yêu cầu sang
BurpSuite và chèn http://localhost/admin vào stockApi
- Điều này sẽ làm hiển thị giao diện quản trị - Hoàn thành
Phương pháp phát hiện
- Yêu cầu URL đến trang quản trị của web Khuyến nghị
- Hạn chế yêu cầu bên ngoài
- Sử dụng Web Application Firewall (WAF) - Phân tích các yêu cầu
- Cập nhật phần mềm server và thư viện web thường xuyên OS command injection Cấp độ rủi ro Nguy hiểm
Chứa lỗ hỏng chèn hệ điều hành trong kiểm tra sản phẩm Khả năng xảy Dễ dàng ra
Tin tặc với kiến thức tối thiểu có thể tấn công Tổng quan
- Trang web tồn tại lỗ hổng ở phần kiểm tra hàng tồn kho. Lợi dụng điều đó,
ta thực thi các command, web sẽ hiện ra kết quả
Các bước thực hiện
- Sử dụng BurpSuite để kiểm tra hàng tồn kh bất kì
- Sửa đổi tham số storeID = 1|whoami