Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Mổ Xẻ DNS Query, DNS Response và Tấn Công Cache Poisoning

    Mổ Xẻ DNS Query, DNS Response và Tấn Công Cache Poisoning – Mô phỏng thực tế với CoreDNS & Unbound
    Bạn có biết? Một trong những lỗ hổng dễ bị khai thác nhất trong hạ tầng mạng doanh nghiệp chính là DNS Cache Poisoning. Chỉ một bản ghi giả mạo, toàn bộ truy cập của người dùng có thể bị chuyển hướng đến trang giả mạo. Trong bài lab này, chúng ta sẽ vừa học vừa thực hành mô phỏng từ đầu đến cuối quá trình truy vấn DNS, quan sát qua Wireshark/Packet Capture, và cuối cùng là giả lập tấn công cache poisoning trên CoreDNS. Đây là nội dung cực kỳ bổ ích cho anh em học MCSA, Azure, AWS hoặc triển khai lab bảo mật mạng.

    I. Quá trình DNS Query và DNS Response diễn ra như thế nào?

    1. Mô hình mạng Lab:
    • Client: 192.168.1.10 – có cài Unbound làm DNS Resolver.
    • Server: 192.168.1.1 – chạy CoreDNS, forward truy vấn lên DNS công cộng.
    • Public DNS: 8.8.8.8 (hoặc 208.67.222.222 tùy môi trường).
    2. Quy trình phân giải DNS:


    Khi client cần truy cập www.ietf.org, chuỗi sự kiện xảy ra:
    • Client → Unbound (192.168.1.1): gửi query loại A (IPv4).
    • Unbound → CoreDNS (nếu chưa có cache): forward tiếp lên DNS công cộng.
    • CoreDNS → 8.8.8.8: truy vấn đích.
    • 8.8.8.8 trả lời: IP hợp lệ, kèm RRSIG nếu có DNSSEC.
    • CoreDNS trả về cho Unbound → Client nhận kết quả: lưu cache nếu được.

    Ví dụ lệnh trên client:

    nslookup -querytype=A www.ietf.org

    Kết quả:
    Name: www.ietf.org Address: 104.16.44.99 Address: 104.16.45.99
    3. Phân tích gói tin:


    Dùng tính năng Packet Capture của Cisco Modeling Labs để phân tích:
    • Bắt gói DNS trên link E0 từ server → switch.
    • Nhập dns trong filter.
    • Click từng packet để thấy chi tiết: Query ID, UDP source port, response từ 8.8.8.8, A record trả về.

    II. Thực hành mô phỏng DNS Cache Poisoning
    DNS Cache Poisoning là gì?
    Là kỹ thuật tiêm bản ghi DNS giả vào bộ nhớ đệm của resolver, khiến client nhận IP sai, có thể bị chuyển hướng tới website giả mạo/phishing.
    1. Cơ chế tấn công cổ điển:
    • Dự đoán transaction IDsource port.
    • Gửi hàng loạt phản hồi giả mạo trước khi phản hồi hợp lệ đến.
    • Nếu resolver nhận phản hồi sai, nó lưu lại và trả cho các client sau.
    2. Mô phỏng tấn công đơn giản:


    Thay vì fake packet, ta chỉnh file cấu hình CoreDNS để trả về IP giả. Bước 1 – Dừng CoreDNS:

    Ctrl + C
    Bước 2 – Sửa Corefile:

    sudo vi /etc/coredns/Corefile

    Nội dung:
    . { hosts { 192.0.2.100 www.ietf.org fallthrough } forward . 8.8.8.8 { } cache 30 log }

    Hoặc dùng 1 lệnh duy nhất:
    cat <<EOF | sudo tee /etc/coredns/Corefile . { hosts { 192.0.2.100 www.ietf.org fallthrough } forward . 8.8.8.8 { } cache 30 log } EOF
    Bước 3 – Khởi động lại CoreDNS:

    sudo coredns -conf /etc/coredns/Corefile
    Bước 4 – Truy vấn lại từ client:

    nslookup -querytype=A www.ietf.org

    Kết quả:
    makefile

    Name: www.ietf.org Address: 192.0.2.100
    ✅ Vậy là bạn đã mô phỏng thành công một cuộc tấn công DNS Cache Poisoning. Tất cả client truy vấn www.ietf.org bây giờ sẽ bị chuyển hướng về IP giả.

    III. Kiến thức thực chiến dành cho bạn
    • CoreDNSUnbound là hai công cụ phổ biến để thiết lập môi trường DNS trong nội bộ và kiểm thử bảo mật.
    • Việc phân tích packet DNS giúp bạn hiểu chi tiết về transaction ID, UDP port, và cách thức giao tiếp của recursive resolver.
    • Việc chỉnh sửa file cấu hình DNS chính là cách mà attacker dùng để "tiêm độc" vào quá trình phân giải tên miền.

    IV. Gợi ý nâng cao
    • Bật DNSSEC validation ở Unbound để kiểm thử chữ ký RRSIG.
    • Mô phỏng DNS over HTTPS (DoH) để kiểm thử bảo mật nâng cao.
    • Viết script giám sát DNS logs để phát hiện truy vấn bất thường từ client.
    Attached Files
    Đặng Quang Minh, CCIE#11897 (Enterprise Infrastructure, Wireless, Automation, AI), CCSI#31417

    Email : dangquangminh@vnpro.org
    https://www.facebook.com/groups/vietprofessional/
Working...
X