SinhVienCNTT.Net
Thứ Sáu, Tháng 4 3, 2026
  • Login
No Result
View All Result
  • Trang chủ
  • Bài viết nổi bật
  • Security
    • Kỹ thuật phân tích mã độc
    • CEH v13
  • Các môn học đại học
    • Các môn đại cương
      • Nhập môn mạng máy tính
      • Nhập môn lập trình
      • Hệ điều hành
    • Ngành An toàn thông tin
      • Lập trình hệ thống
    • Ngành Mạng máy tính & Truyền thông dữ liệu
  • Tài liệu CNTT
  • Liên hệ
Gửi email
  • Trang chủ
  • Bài viết nổi bật
  • Security
    • Kỹ thuật phân tích mã độc
    • CEH v13
  • Các môn học đại học
    • Các môn đại cương
      • Nhập môn mạng máy tính
      • Nhập môn lập trình
      • Hệ điều hành
    • Ngành An toàn thông tin
      • Lập trình hệ thống
    • Ngành Mạng máy tính & Truyền thông dữ liệu
  • Tài liệu CNTT
  • Liên hệ
No Result
View All Result
SinhVienCNTT.Net
No Result
View All Result
Home Security CEH Tiếng Việt - CEH v13

[CEH] Module 4 – Phần 5: DNS và SMTP Enumeration

admin by admin
29 Tháng 4, 2025
in CEH Tiếng Việt - CEH v13
Reading Time: 9 mins read
1

Phần này mô tả về cả kỹ thuật liệt kê SMTP và DNS, bao gồm liệt kê SMTP, quá trình lấy danh sách user hợp lệ trên SMTP server, công cụ liệt kê SMTP, liệt kê chuyển vùng DNS, theo dõi bộ đệm DNS và DNS zone walking.

Mục lục ẩn
1. SMTP Enumeration
1.1. Sử dụng nmap
1.2. Sử dụng Metasploit
1.3. Sử dụng NetScanTools Pro
1.4. smtp-user-enum
2. DNS Enumeration
2.1. Chuyển vùng DNS
2.1.1. Lệnh dig
2.1.2. Lệnh nslookup
2.1.3. DNSRecon
2.2. DNS Cache Snooping
2.2.1. Phương pháp không đệ quy
2.2.2. Phương pháp đệ quy
2.3. DNSSEC Zone Walking
2.3.1. Sử dụng DNSRecon
2.3.2. Sử dụng nmap

SMTP Enumeration

Các hệ thống mail thường sử dụng SMTP, POP3 và IMAP, cho phép người dùng lưu thư trong hộp thư của server và tải xuống từ server khi cần thiết. SMTP sử dụng máy chủ trao đổi thư (MX) để gửi thư trực tiếp qua DNS. Nó chạy trên port TCP 25, 2525 hoặc 587. SMTP cung cấp 3 lệnh tích hợp sau:

VRFY: xác minh người dùng

$ telnet 192.168.168.1 25
Trying 192.168.168.1...
Connected to 192.168.168.1.
Escape character is '^]'.
220 NYmailserver ESMTP Sendmail 8.9.3
HELO
501 HELO requires domain address
HELO x
250 NYmailserver Hello [10.0.0.86], pleased to meet you
VRFY Jonathan
250 Super-User <Jonathan@NYmailserver>
VRFY Smith
550 Smith... User unknown

EXPN: hiển thị địa chỉ gửi thực tế của bí danh và danh sách gửi thư

$ telnet 192.168.168.1 25
Trying 192.168.168.1...
Connected to 192.168.168.1.
Escape character is '^]'.
220 NYmailserver ESMTP Sendmail 8.9.3
HELO
501 HELO requires domain address
HELO x
250 NYmailserver Hello [10.0.0.86], pleased to meet you
EXPN Jonathan
250 Super-User <Jonathan@NYmailserver>
EXPN Smith
550 Smith... User unknown

RCPT TO: định nghĩa người nhận thư

$ telnetl 192.168.168.1 25
Trying 192.168.168.1 ...
Connected to 192.168.168.1.
Escape character is '^]’.
220 NYmailserver ESMTP Sendmail 8.9.3
HELO
501 HELO requires domain address
HELO x
250 NYmailserver Hello [10.0.0.86], pleased to meet you
MAIL FROM:Jonathan
250 Jonathan... Sender ok
RCPT TO:Ryder
250 Ryder... Recipient ok
RCPT TO: Smith
550 Smith... User unknown

Máy chủ SMTP phản hồi khác nhau đối với các lệnh VRFY, EXPN và RCPT TO đối với user hợp lệ và không hợp lệ. Nhờ đó, attacker có thể tương tác trực tiếp thông qua Telnet và thu thập danh sách user hợp lệ trên máy chủ SMTP.

Sử dụng nmap

Attacker có thể liệt kê SMTP server bằng cách sử dụng các lệnh SMTP khác nhau có sẵn tích họp trong Nmap Scripting Engine (NSE).

Liệt kê tất cả các lệnh hỗ trợ trong Nmap directory:

nmap -p 25, 365, 587 -script=smtp-commands <Target IP Address >

Xác định SMTP open relays:

nmap -p 25 -script=smtp-open-relay <Target IP Address>

Liệt kê tất cả người dùng trên máy chủ SMTP:

nmap -p 25 -script=smtp-enum-users <Target IP Address>
[CEH] Module 4 - Phần 5: DNS và SMTP Enumeration 1
Screenshot showing output of the smtp-enum-users NSE script

Sử dụng Metasploit

Attacker sử dụng Metasploit framework để liệt kê người dùng SMTP. Đầu tiên, khởi chạy Metasploit msfconsole và chuyển sang auxiliary scanner có liên quan để bắt đầu quá trình: auxiliary/scanner/smtp/smtp_enum.

msf > use auxiliary/scanner/smtp/smtp_enum
msf auxiliary(smtp_enum) >

Sử dụng lệnh show options để xem toàn bộ danh sách các tùy chọn cần thiết để thực hiện liệt kê.

[CEH] Module 4 - Phần 5: DNS và SMTP Enumeration 3
Screenshot of Metasploit showing smtp_enum options

Sử dụng option RHOST để chỉ định IP của SMTP server mục tiêu hoặc một dải IP. Theo mặc định, Metasploit sử dụng wordlist mặc định nằm ở /usr/share/64etasploit-framework/data/wordlists/unix_users.txt để liệt kê người dùng SMTP. Tùy chọn USER _FILE dùng để chỉ định wordlist tùy chỉnh.

msf auxiliary (smtp enum) > set USER FILE <location of wordlists file>
[CEH] Module 4 - Phần 5: DNS và SMTP Enumeration 5
Screenshot of Metasploit showing smtp_enum advanced options

Chạy lệnh run để bắt đầu:

[CEH] Module 4 - Phần 5: DNS và SMTP Enumeration 7
 Screenshot of Metasploit retrieving SMTP users

Sử dụng NetScanTools Pro

Công cụ này rất quen thuộc, ở các module trước mình đã giới thiệu nhiều về công cụ này rồi, các bạn có thể đọc thêm ở bài viết Module 3 – Phần 1 – Network Scanning là gì? và Module 3 – Phần 5: Thực hành dò quét port. Công cụ SMTP Email Generator của NetScanTools Pro kiểm tra quá trình gửi email qua SMTP server. Attacker sử dụng NetScanTools Pro để liệt kê SMTP và trích xuất tất cả các tham số email header, bao gồm các cờ confirm/urgent. Attacker cũng có thể ghi lại email session trong file log và xem thông tin liên lạc giữa NetScanTools Pro và SMTP server trong file log đó.

smtp enumeration
Screenshot of NetScanTools Pro

smtp-user-enum

smtp-user-enum là một công cụ để liệt kê các tài khoản người dùng ở mức hệ điều hành (OS-level) trên Solaris thông qua dịch vụ SMTP (sendmail). Nó liệt kê bằng cách kiểm tra các phản hồi đối với các lệnh VRFY, EXPN và RCPT TO. smtp-user-enum cần được chuyển vào danh sách người dùng và ít nhất một mục tiêu đang chạy dịch vụ SMTP. Cú pháp sử dụng smtp-user-enum như sau:

smtp-user-enum.pl [options] (-u username|-U file-of-usernames) (- t host|-T file-of-targets)

Trong đó:

  • -m n: Số tiến trình tối đa (mặc định là 5)
  • -M mode: Chỉ định lệnh SMTP sẽ sử dụng để đoán tên người dùng trong số EXPN, VRFY và RCPT TO (mặc định: VRFY)
  • -u user: Kiểm tra xem người dùng có tồn tại trên hệ thống đích hay không?
  • -f addr: Chỉ định địa chỉ email gửi để sử dụng cho việc đoán “RCPT TO” (mặc định: user@example.com)
  • -D dom: Chỉ định domain để thêm vào danh sách người dùng được cung cấp để tạo địa chỉ email (mặc định: không có)
  • -U file: Chọn file chứa tên đăng nhập để kiểm tra qua dịch vụ SMTP
  • -t host: Chỉ định server host đang chạy dịch vụ SMTP
  • -T file: Chọn file chứa hostname chạy dịch vụ SMTP
  • -p port: Chỉ định port TCP mà dịch vụ SMTP chạy trên đó (mặc định: 25)
  • -d: Bật debug
  • -t n: Đợi tối đa n giây để trả lời (mặc định: 5)
  • -v: Chế độ đầu ra chi tiết
  • -h:Trợ giúp
[CEH] Module 4 - Phần 5: DNS và SMTP Enumeration 10
Screenshot of smtp-user-enum

DNS Enumeration

Chuyển vùng DNS

DNS Zone Transfer (chuyển vùng DNS) là quá trình chuyển một bản sao của file DNS zone từ primary DNS server chính sang secondary DNS server. Trong hầu hết các trường hợp, primary DNS server cần có một server dự phòng hoặc server phụ để dự phòng, server phụ này chứa tất cả thông tin được lưu trong server chính. DNS server sử dụng chuyển vùng để phân phối các thay đổi được thực hiện đối với server chính sang (các) server phụ.

Attacker liệt kê chuyển vùng DNS để định vị máy chủ DNS và truy cập các record của mục tiêu. Nếu DNS server của mục tiêu cho phép chuyển vùng, thì attacker có thể chuyển vùng DNS để lấy tên DNS server names, hostnames, machine names, usernames, IP addresses, aliases, …

Trong kỹ thuật này, attacker cố gắng lấy một bản sao của toàn bộ file zone cho một domain từ DNS server. Chúng có thể thực hiện chuyển vùng DNS bằng các công cụ như nslookup, lệnh dig và DNSRecon.

Lệnh dig

Attacker sử dụng lệnh dig để truy vấn DNS name server và lấy thông tin về IP, name servers, mail exchanges, …

dig ns <target domain>

Tiếp theo, attacker kiểm tra xem DNS của mục tiêu có cho phép chuyển vùng hay không bằng lệnh:

dig @<domain of name server> <target domain> axfr
[CEH] Module 4 - Phần 5: DNS và SMTP Enumeration 12
Screenshot of Linux DNS zone transfer using dig command

Lệnh nslookup

Attacker sử dụng lệnh nslookup trên các hệ thống chạy Windows:

nslookup
set querytype=soa
<target domain>
[CEH] Module 4 - Phần 5: DNS và SMTP Enumeration 14
Screenshot of Windows DNS zone transfer using the nslookup command

DNSRecon

Attacker sử dụng DNSRecon để kiểm tra tất cả các bản ghi NS của domain mục tiêu để chuyển vùng.

dnsrecon -t axfr -d <target domain>

Trong lệnh trên, tùy chọn -t chỉ định loại liệt kê sẽ được thực hiện, axfr là loại liệt kê trong đó tất cả các máy chủ NS được kiểm tra để chuyển vùng và tùy chọn -d chỉ định miền đích.

[CEH] Module 4 - Phần 5: DNS và SMTP Enumeration 16
Screenshot of DNS zone transfer using DNSRecon

DNS Cache Snooping

DNS cache snooping là một loại kỹ thuật liệt kê DNS trong đó attacker sẽ truy vấn DNS server để tìm một bản ghi DNS (DNS record) được lưu trong bộ nhớ cache. Bằng cách sử dụng bản ghi được lưu trong bộ nhớ cache này, attacker xác định các trang web mà người dùng đã truy cập gần đây. Thông tin này có thể tiết lộ thêm thông tin quan trọng như tên của chủ sở hữu DNS server, nhà cung cấp dịch vụ, tên của nhà cung cấp,…

Attacker sử dụng hai phương pháp sau đây:

Phương pháp không đệ quy

Attacker gửi một truy vấn không đệ quy bằng cách đặt bit Recursion Desired (RD) trong query header thành 0. Attacker truy vấn bộ đệm DNS cho một bản ghi DNS cụ thể như A, CNAME, PTR, CERT, SRV và MX. Nếu bản ghi được truy vấn có trong bộ đệm DNS, thì DNS server sẽ phản hồi với thông tin cho biết rằng một số người dùng trên hệ thống đã truy cập một domain cụ thể. Mặt khác, DNS server phản hồi với thông tin về một DNS server khác có thể trả lời câu trả lời cho truy vấn hoặc nó trả lời bằng tệp root.hints chứa thông tin về tất cả các DNS server gốc.

dig @<IP of DNS server> <Target domain> A +norecurse
dns enumeration
Screenshot of a dig query for a site that is not cached

Như hình trên, status: NOERROR có nghĩa rằng truy vấn đã được chấp nhận nhưng không có câu trả lời nào được trả về, do đó chứng tỏ không có người dùng nào trong hệ thống đã truy cập trang web được truy vấn.

Phương pháp đệ quy

Trong phương pháp này, attacer gửi một truy vấn đệ quy bằng cách đặt tùy chọn +recurse thay vì tùy chọn +norecurse. Tương tự như phương pháp không đệ quy, attacker truy vấn bộ đệm DNS cho một bản ghi DNS cụ thể như A, CNAME, PTR, CERT, SRV và MX.

Trong phương pháp này, giá trị time-to-live (TTL) được kiểm tra để xác định khoảng thời gian mà bản ghi DNS vẫn còn trong bộ đệm. Tại đây, giá trị TTL thu được từ kết quả được so sánh với TTL được đặt ban đầu trong trường TTL. Nếu giá trị TTL trong kết quả nhỏ hơn giá trị TTL ban đầu, bản ghi sẽ được lưu vào bộ đệm, cho biết rằng ai đó trên hệ thống đã truy cập trang web đó. Tuy nhiên, nếu bản ghi được truy vấn không có trong bộ đệm, nó sẽ được thêm vào bộ đệm sau khi gửi truy vấn đầu tiên.

dig @<IP of DNS server> <Target domain> A +recurse

Như hình bên dưới, giá trị TTL cho domain certifiedhacker.com cao đáng kể, điều này cho thấy rõ ràng rằng bản ghi miền không có trong bộ đệm.

[CEH] Module 4 - Phần 5: DNS và SMTP Enumeration 19
Screenshot of a dig query for a cached site

DNSSEC Zone Walking

Domain Name System Security Extensions (DNSSEC) Zone Walking là một loại kỹ thuật liệt kê DNS bằng cách lấy các bản ghi nội bộ nếu DNS zone không được cấu hình đúng cách. Thông tin vùng được liệt kê có thể hỗ trợ attacker xây dựng network map về mục tiêu.

Các tổ chức sử dụng DNSSEC để bảo mật DNS và cung cấp khả năng bảo vệ chống lại các mối đe dọa đã biết đối với DNS. Tính năng bảo mật này sử dụng chữ ký số dựa trên mã hóa khóa công khai để tăng cường xác thực trong DNS. Các chữ ký điện tử này được lưu trữ trong DNS name server cùng với các bản ghi phổ biến như MX, A, AAAA và CNAME.

Mặc dù DNSSEC bảo mật hơn nhưng nó cũng dễ bị các lỗ hổng liên quan đến zone enumeration còn gọi là zone walking. Để khắc phục, phiên bản DNSSEC mới sử dụng Next Secure phiên bản 3 (NSEC3) được sử dụng.

Sử dụng DNSRecon

DNSRecon là công cụ liệt kê zone hỗ trợ người dùng liệt kê các bản ghi DNS như A, AAAA và CNAME. Nó cũng có thể liệt kê NSEC zone để lấy các file bản ghi DNS của mục tiêu.

dnsrecon -d <target domain> -z
[CEH] Module 4 - Phần 5: DNS và SMTP Enumeration 21
Screenshot of DNSRecon displaying results on the target domain

Sử dụng nmap

Tags: nmap
Share83Tweet52
Previous Post

[CEH] Module 4 – Phần 4: NTP và NFS Enumeration

Next Post

Tổng hợp Series: CEH v13 – CEH Tiếng Việt

admin

admin

A Winner Never Stops Trying.

Related Posts

CEH Module 11 – Phần 2: Application-Level Session Hijacking
CEH Tiếng Việt - CEH v13

CEH Module 11 – Phần 2: Application-Level Session Hijacking

4 Tháng 5, 2025
[CEH] Module 11 – Phần 1: Session Hijacking là gì?
CEH Tiếng Việt - CEH v13

[CEH] Module 11 – Phần 1: Session Hijacking là gì?

29 Tháng 4, 2025
[CEH] Module 10 – Phần 5: Thực hành DoS sử dụng Metasploit và Hping3
CEH Tiếng Việt - CEH v13

[CEH] Module 10 – Phần 5: Thực hành DoS sử dụng Metasploit và Hping3

29 Tháng 4, 2025
[CEH] Module 10 – Phần 4: Các giải pháp chống lại DDoS
CEH Tiếng Việt - CEH v13

[CEH] Module 10 – Phần 4: Các giải pháp chống lại DDoS

29 Tháng 4, 2025
[CEH] Module 10 – Phần 3: Một số kiểu tấn công từ chối dịch vụ (tiếp theo)
CEH Tiếng Việt - CEH v13

[CEH] Module 10 – Phần 3: Một số kiểu tấn công từ chối dịch vụ (tiếp theo)

29 Tháng 4, 2025
[CEH] Module 10 – Phần 2: Một số kiểu tấn công từ chối dịch vụ DoS/DDoS
CEH Tiếng Việt - CEH v13

[CEH] Module 10 – Phần 2: Một số kiểu tấn công từ chối dịch vụ DoS/DDoS

22 Tháng 9, 2024
Next Post
Tổng hợp Series: CEH v13 – CEH Tiếng Việt

Tổng hợp Series: CEH v13 - CEH Tiếng Việt

Comments 1

  1. Pingback: Tổng hợp Series: CEH v12 - CEH Tiếng Việt

Để lại một bình luận Hủy

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Tất cả chuyên mục

  • Các môn học đại học
  • CCNA 200-301
  • CEH Tiếng Việt – CEH v13
  • Chưa phân loại
  • Digital Forensics
  • Machine Learning
  • Network
  • Nổi bật
  • Phân tích mã độc
  • Security
  • Tài liệu CNTT
  • Từ vựng IELTS

Thẻ

API AWS Bash Shell C++ Cisco ASA Cisco Packet Tracer Collocations Footprinting Giao thức Machine Learning Mạng máy tính nmap Quản lý rủi ro Regular Expression TCP/IP Tuyển chọn UIT Wireshark

logo sinhviencntt.net

Blog Sinh viên CNTT chia sẻ kiến thức, tài liệu liên quan đến nhóm ngành Công nghệ thông tin.

Chúng tôi sẵn sàng đón những ý kiến đóng góp, cũng như bài viết của các bạn gửi đến SinhVienCNTT.Net.

Giới thiệu

Blog Sinh viên CNTT chia sẻ kiến thức, tài liệu liên quan đến nhóm ngành Công nghệ thông tin.

Liên hệ

Email: sinhviencntt.net@gmail.com

Tìm kiếm

No Result
View All Result

Danh mục

  • Các môn học đại học
  • CCNA 200-301
  • CEH Tiếng Việt – CEH v13
  • Chưa phân loại
  • Digital Forensics
  • Machine Learning
  • Network
  • Nổi bật
  • Phân tích mã độc
  • Security
  • Tài liệu CNTT
  • Từ vựng IELTS
  • Home
  • Liên hệ
  • Privacy & Policy
  • Other Links

© 2023 SinhVienCNTT.Net - Blog Sinh viên Công nghệ thông tin.

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In
No Result
View All Result
  • Trang chủ
  • Bài viết nổi bật
  • Security
    • Kỹ thuật phân tích mã độc
    • CEH v13
  • Các môn học đại học
    • Các môn đại cương
      • Nhập môn mạng máy tính
      • Nhập môn lập trình
      • Hệ điều hành
    • Ngành An toàn thông tin
      • Lập trình hệ thống
    • Ngành Mạng máy tính & Truyền thông dữ liệu
  • Tài liệu CNTT
  • Liên hệ

© 2023 SinhVienCNTT.Net - Blog Sinh viên Công nghệ thông tin.