Pentest & Offsec Phần 1 - Tìm hiểu về DNS Passive Scanning

7heknight

Super Moderator

1. DNS Passive Scan là gì?​

Định nghĩa: DNS Passive Scan là kỹ thuật thu thập thông tin liên quan đến hạ tầng DNS mà không yêu cầu gửi truy vấn trực tiếp đến máy chủ DNS mục tiêu. Kỹ thuật này khai thác dữ liệu đã được lưu trữ từ nhiều nguồn bên ngoài, từ đó giúp giảm thiểu khả năng bị phát hiện và tăng tính hiệu quả trong việc thu thập thông tin.

Lợi ích:
  • Tránh bị phát hiện: Do không trực tiếp truy vấn mục tiêu, nguy cơ bị IDS/IPS nhận diện thấp hơn.
  • Dữ liệu lịch sử: Có thể tiếp cận thông tin DNS đã được ghi lại từ lâu, giúp đưa ra cái nhìn tổng thể về hạ tầng.
  • Nâng cao khả năng thu thập thông tin: Các dữ liệu từ nhiều nguồn khác nhau giúp mở rộng phạm vi thông tin về mục tiêu.

2. Quy trình thực hiện DNS Passive Scan​

Bước 1: Xác định mục tiêu​

  • Chọn miền hoặc tổ chức: Xác định miền cụ thể hoặc tổ chức mà bạn muốn thu thập thông tin. Điều này có thể bao gồm cả miền chính và các subdomain.

Bước 2: Xác định nguồn dữ liệu​

  • Các dịch vụ Passive DNS:
    • Farsight DNSDB: Cung cấp thông tin về các bản ghi DNS lịch sử.
    • VirusTotal Passive DNS: hỗ trợ phân tích và theo dõi lưu lượng DNS.
    • SecurityTrails: Cung cấp dữ liệu về máy chủ, subdomain và các yếu tố khác liên quan đến hạ tầng mạng.
  • Công cụ OSINT:
    • WHOIS: Tra cứu thông tin đăng ký tên miền.
    • Censys: Dữ liệu về máy chủ và thông tin liên quan đến IP.

Bước 3: Sử dụng công cụ​

  • Công cụ hữu ích:
    • DNSDumpster: Web service để quét thông tin DNS một cách trực quan.
    • Kali Linux: Sử dụng các công cụ tích hợp sẵn như passivedns-client, dnscan.

Bước 4: Thu thập thông tin​

  • Ghi nhận các loại bản ghi DNS:
    • Bản ghi A: Xác định địa chỉ IP của miền.
    • Bản ghi MX: Địa chỉ máy chủ email.
    • Bản ghi NS: Máy chủ DNS authoritative cho miền.
    • Bản ghi TXT: Chứa thông tin bổ sung.

Bước 5: Phân tích dữ liệu​

  • Phân tích mối quan hệ: Xác định mối liên hệ giữa các miền và subdomain, từ đó lập bản đồ hạ tầng.
  • Tổ chức thông tin: Sắp xếp và phân nhóm các bản ghi để dễ dàng phân tích và đánh giá.

3. Tình huống ứng dụng thực tế​

Ví dụ 1: Bạn muốn kiểm tra một công ty cụ thể để tìm hiểu về các subdomain liên quan đến cấu trúc mạng của họ. Qua việc sử dụng Farsight DNSDB và VirusTotal, bạn thu thập được danh sách các subdomain, sau đó xác định những subdomain không còn hoạt động và có thể bị chiếm quyền.

Ví dụ 2: Trong quá trình đánh giá an ninh cho một ứng dụng web, bạn sử dụng DNS Passive Scan để phát hiện các bản ghi DNS không được bảo vệ và cấu hình không chính xác có thể dẫn đến việc lộ thông tin nhạy cảm.

4. Phương pháp khác để thực hiện DNS Passive Scan​

  1. Tìm kiếm theo dõi (Historical Lookups): Sử dụng các dịch vụ này để truy vấn thông tin DNS theo thời gian, giúp phát hiện các thay đổi trong cấu hình.
  2. Kết hợp với kỹ thuật OSINT khác: Sử dụng WHOIS để điều tra thêm về thông tin đăng ký của miền và kết hợp dữ liệu từ các nguồn khác như Certificate Transparency logs.
  3. Kết nối với các công cụ phân tích: Sử dụng script tự động để thu thập và phân tích thông tin từ nhiều dịch vụ DNS passive, giúp tăng tốc độ và độ chính xác.

5. Demo​

Ở phần demo này, mình sẽ mượn tạm domain của securityzone.vn để demo. Nên target chúng ta sẽ là: securityzone.vn

Sau khi xác định được target, tôi tiến hành sử dụng các dịch vụ có sẵn miễn phí trên web như Censys để kiểm tra các cấu hình của máy chủ một cách bị động (Không trực tiếp tương tác đến máy chủ vào tạo log kết nối).

  • Censys là một nền tảng thu thập và phân tích dữ liệu về hạ tầng Internet, bao gồm các thông tin về các dịch vụ, chứng chỉ SSL, cấu hình máy chủ, và các thiết bị mạng. Nó giúp các nhà nghiên cứu bảo mật và pentester thực hiện các hoạt động passive scanning một cách hiệu quả, bằng cách khai thác dữ liệu mở và dữ liệu thu thập từ công cụ tìm kiếm, không cần gửi yêu cầu trực tiếp đến hệ thống mục tiêu. Nhờ đó, có thể xác định các dịch vụ đang chạy, cấu hình lỗi, hay các điểm yếu tiềm năng trong mạng mục tiêu mà không gây rối loạn hoặc bị phát hiện.
Trước tiên, ta sẽ đến Censys và tạo tài khoản. Sau khi tạo xong, xác thực và đăng nhập thành công, chúng ta sẽ có giao diện như sau:

1753964968012.png


Sau đó, nhập vào thanh tìm kiếm với cụm từ khoá securityzone.vn, Censys sẽ trả kết quả như sau:

1753964987488.png


Chúng ta có thể thấy được, rất nhiều thông tin như, list các IP mà securityzone.vn và các sub-domain trỏ đến, và trên các IP đó có mở những service nào, những service ấy có sử dụng Firewall không, v.v...

1753965008093.png


Như hình trên, tôi mở 1 IP hosting web, tôi có thể review được các web này có body redirect đến /remote/login page, và có những header để chặn Clickjacking.

Sau khi đã khám phá và thu thập thông tin với Censys, chúng ta có thể chuyển sang công cụ DNSDumpster để mở rộng việc thu thập dữ liệu DNS. DNSDumpster giúp xác định các bản ghi DNS như A, MX, NS, cũng như các subdomain liên quan, hỗ trợ cho quá trình reconnaissance và phân tích hạ tầng mạng mục tiêu một cách trực quan và hiệu quả hơn. Bây giờ, tôi sẽ demo cách sử dụng DNSDumpster để khai thác thông tin DNS của tên miền mục tiêu.

Khi ở trang chủ của DNSDumpster, tìm kiếm với domain securityzone.vn ta sẽ thấy được kết quả như bên dưới.

1753965028465.png


Ngoài ra, DNS Dumpster còn support chúng ta các công cụ như DNS Lookup, ASN Lookup và nmap.

1753965044757.png


Sau khi sử dụng thử, chúng ở domain test.securityzone.vn tôi biết rằng web này đang chạy service web (port 80 và 443), ngoài ra có thể đang mở các port như: 21, 22, 23, ... với STATE là filtered, nghĩa là ở web này, tường lửa sẽ chặn các port ấy.

1753965067791.png


Ngoài ra, DNS Dumpster còn hỗ trợ chúng ta kiểm tra các record của domain, và mapping chúng lại với nhau như hình bên dưới.

dnsdumpster_mapping.png


Sau khi note những thông tin này, vẫn còn nhiều cách và công cụ để chúng ta có thể thu thập kỹ hơn, thông tin càng nhiều và chi tiết thì chúng ta có thể dễ dàng hơn cho việc khai thác mục tiêu sau này. Cảm ơn các bạn đã dành thời gian đọc bài này. Nếu thấy hay và muốn tìm hiểu thêm về topic nào cứ comment cho mình biết với nhé!


*Note: Bài viết này mục đích education purpose.
 
Sửa lần cuối:
Back
Top