hacktricks/network-services-pentesting/pentesting-dns.md

514 lines
32 KiB
Markdown
Raw Normal View History

2023-08-03 19:12:22 +00:00
# 53 - DNS渗透测试
2022-04-28 16:01:33 +00:00
<details>
2023-08-03 19:12:22 +00:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks云 ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 推特 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 YouTube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
* 你在一家**网络安全公司**工作吗想要在HackTricks中看到你的**公司广告**吗?或者你想要**获取PEASS的最新版本或下载PDF格式的HackTricks**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)
2023-08-03 19:12:22 +00:00
* 发现我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品——[**The PEASS Family**](https://opensea.io/collection/the-peass-family)
* 获取[**官方PEASS和HackTricks周边产品**](https://peass.creator-spring.com)
* **加入**[**💬**](https://emojipedia.org/speech-balloon/) [**Discord群组**](https://discord.gg/hRep4RUj7f) 或者 [**Telegram群组**](https://t.me/peass) 或者 **关注**我在**Twitter**上的[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
2023-08-03 19:12:22 +00:00
* **通过向**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **和**[**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **提交PR来分享你的黑客技巧。**
2022-04-28 16:01:33 +00:00
</details>
<figure><img src="../.gitbook/assets/image (1) (1) (2) (4).png" alt=""><figcaption></figcaption></figure>
2023-08-03 19:12:22 +00:00
[**DragonJAR Security Conference是一场国际网络安全活动**](https://www.dragonjarcon.org/)已经举办了十多年将于2023年9月7日至8日在哥伦比亚波哥大举行。这是一个内容丰富的技术活动展示了吸引全球黑客和研究人员的最新研究成果。\
立即在以下链接注册,不要错过这个重要的会议!:
{% embed url="https://www.dragonjarcon.org/" %}
2023-08-03 19:12:22 +00:00
## **基本信息**
2023-08-03 19:12:22 +00:00
域名系统DNS是互联网的电话簿。人们通过域名访问在线信息例如nytimes.com或espn.com。Web浏览器通过Internet协议IP地址进行交互。DNS将域名转换为[IP地址](https://www.cloudflare.com/learning/dns/glossary/what-is-my-ip-address/),以便浏览器可以加载互联网资源。\
来源:[这里](https://www.cloudflare.com/learning/dns/what-is-dns/)。
2023-08-03 19:12:22 +00:00
**默认端口:** 53
```
PORT STATE SERVICE REASON
53/tcp open domain Microsoft DNS 6.1.7601 (1DB15D39) (Windows Server 2008 R2 SP1)
5353/udp open zeroconf udp-response
53/udp open domain Microsoft DNS 6.1.7601 (1DB15D39) (Windows Server 2008 R2 SP1)
```
2023-08-03 19:12:22 +00:00
### 不同的DNS服务器
2023-08-03 19:12:22 +00:00
来自[https://academy.hackthebox.com/module/112/section/1069](https://academy.hackthebox.com/module/112/section/1069)的信息
| **服务器类型** | **描述** |
2022-10-02 19:15:35 +00:00
| ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `DNS根服务器` | DNS的根服务器负责顶级域名TLD。作为最后的实例只有在名称服务器不响应时才会请求它们。因此根服务器是用户和互联网上内容之间的中央接口它将域名和IP地址进行关联。[互联网名称与数字地址分配机构](https://www.icann.org/)ICANN协调根名称服务器的工作。全球共有13个这样的根服务器。 |
| `权威名称服务器` | 权威名称服务器对特定区域拥有授权。它们只回答来自其责任区域的查询,并且它们的信息是具有约束力的。如果权威名称服务器无法回答客户端的查询,则根名称服务器接管该查询。 |
| `非权威名称服务器` | 非权威名称服务器不负责特定的DNS区域。相反它们通过递归或迭代DNS查询自己收集特定DNS区域的信息。 |
| `缓存DNS服务器` | 缓存DNS服务器在指定的时间段内缓存来自其他名称服务器的信息。这个存储的持续时间由权威名称服务器确定。 |
| `转发服务器` | 转发服务器只执行一个功能将DNS查询转发到另一个DNS服务器。 |
| `解析器` | 解析器不是权威DNS服务器而是在计算机或路由器中本地执行名称解析。 |
2022-10-02 19:15:35 +00:00
2023-08-03 19:12:22 +00:00
## 枚举
2023-08-03 19:12:22 +00:00
### **横幅抓取**
2023-08-03 19:12:22 +00:00
DNS没有可抓取的“横幅”。最接近的等效物是对大多数BIND名称服务器有效的`version.bind. CHAOS TXT`的魔术查询。\
您可以使用`dig`执行此查询:
```bash
dig version.bind CHAOS TXT @DNS
```
如果那不起作用,您可以使用指纹识别技术来确定远程服务器的版本--[`fpdns`](https://github.com/kirei/fpdns)工具是其中一个选择,但还有其他选择。
您还可以使用**nmap**脚本来获取横幅:
```
--script dns-nsid
```
2023-08-03 19:12:22 +00:00
### **任意记录**
2023-08-03 19:12:22 +00:00
记录**ANY**将要求DNS服务器**返回**所有可用的**条目**,它愿意**披露**的。
2022-10-02 19:15:35 +00:00
```bash
dig any victim.com @<DNS_IP>
```
2023-08-03 19:12:22 +00:00
### **区域传输**
2022-10-02 19:15:35 +00:00
该过程简称为`异步完全传输区域``AXFR`)。
```bash
dig axfr @<DNS_IP> #Try zone transfer without domain
dig axfr @<DNS_IP> <DOMAIN> #Try zone transfer guessing the domain
2021-06-20 12:09:34 +00:00
fierce --domain <DOMAIN> --dns-servers <DNS_IP> #Will try toperform a zone transfer against every authoritative name server and if this doesn'twork, will launch a dictionary attack
```
2023-08-03 19:12:22 +00:00
### 更多信息
DNSDomain Name System是互联网中用于将域名解析为IP地址的系统。在渗透测试中DNS渗透测试是一种常见的技术用于发现和利用与DNS相关的漏洞和弱点。以下是一些常见的DNS渗透测试技术
#### DNS信息收集
在进行DNS渗透测试之前首先需要收集目标域名的相关信息。这包括域名注册信息、DNS服务器信息、子域名信息等。可以使用WHOIS查询、DNS查询工具和在线域名搜索引擎来收集这些信息。
#### 子域名枚举
子域名枚举是一种通过查询目标域名的DNS记录来发现其子域名的技术。常用的子域名枚举工具包括`dnsenum`、`sublist3r`和`amass`等。通过枚举子域名,可以发现可能存在的漏洞和弱点。
#### DNS缓存投毒
DNS缓存投毒是一种攻击技术通过向DNS服务器发送恶意的DNS响应将错误的DNS记录缓存到服务器中从而导致用户访问被劫持的网站。常用的DNS缓存投毒工具包括`dnsspooq`和`mitm6`等。
#### DNS隧道
DNS隧道是一种利用DNS协议进行数据传输的技术。通过在DNS查询和响应中隐藏数据可以绕过网络防火墙和IDS/IPS系统的检测。常用的DNS隧道工具包括`iodine`和`dnscat2`等。
#### DNS劫持
DNS劫持是一种攻击技术通过篡改DNS响应将用户的域名解析请求重定向到恶意的IP地址。这可以用于进行钓鱼攻击、中间人攻击等。常用的DNS劫持工具包括`dnsmasq`和`mitmproxy`等。
#### DNS漏洞利用
在进行DNS渗透测试时还可以利用一些已知的DNS漏洞来获取目标系统的敏感信息或执行远程代码。常见的DNS漏洞包括DNS区域传输漏洞、DNS重绑定漏洞和DNS解析器漏洞等。
以上是一些常见的DNS渗透测试技术渗透测试人员可以根据具体情况选择合适的技术来发现和利用目标系统中的DNS漏洞和弱点。
```bash
dig ANY @<DNS_IP> <DOMAIN> #Any information
dig A @<DNS_IP> <DOMAIN> #Regular DNS request
dig AAAA @<DNS_IP> <DOMAIN> #IPv6 DNS request
dig TXT @<DNS_IP> <DOMAIN> #Information
dig MX @<DNS_IP> <DOMAIN> #Emails related
dig NS @<DNS_IP> <DOMAIN> #DNS that resolves that name
dig -x 192.168.0.2 @<DNS_IP> #Reverse lookup
dig -x 2a00:1450:400c:c06::93 @<DNS_IP> #reverse IPv6 lookup
#Use [-p PORT] or -6 (to use ivp6 address of dns)
```
#### 自动化
Automation plays a crucial role in the field of DNS pentesting. It helps in streamlining the process and saves time and effort. There are various tools available that can automate different tasks involved in DNS pentesting.
2023-08-03 19:12:22 +00:00
自动化在DNS渗透测试领域起着至关重要的作用。它有助于简化流程节省时间和精力。有各种工具可用于自动化DNS渗透测试中涉及的不同任务。
2023-08-03 19:12:22 +00:00
#### Enumeration
2023-08-03 19:12:22 +00:00
#### 枚举
2023-08-03 19:12:22 +00:00
Enumeration is the process of gathering information about a target DNS server. It involves finding all the DNS records associated with the target domain. Automated enumeration tools can perform this task efficiently and quickly.
2023-08-03 19:12:22 +00:00
枚举是收集有关目标DNS服务器的信息的过程。它涉及查找与目标域关联的所有DNS记录。自动化枚举工具可以高效快速地执行此任务。
#### Zone Transfer
#### 区域传输
Zone transfer is a mechanism that allows DNS servers to share DNS records with each other. It can be exploited to gather valuable information about the target domain. Automated tools can perform zone transfer checks to identify if the target DNS server is vulnerable to zone transfer attacks.
区域传输是一种机制允许DNS服务器彼此共享DNS记录。可以利用它来收集有关目标域的有价值信息。自动化工具可以执行区域传输检查以确定目标DNS服务器是否容易受到区域传输攻击。
#### DNS Cache Poisoning
#### DNS缓存投毒
DNS cache poisoning is a technique used to manipulate the DNS cache of a target DNS server. It involves injecting malicious DNS records into the cache, which can redirect users to malicious websites or intercept their traffic. Automated tools can be used to perform DNS cache poisoning attacks and identify vulnerable DNS servers.
DNS缓存投毒是一种用于操纵目标DNS服务器的DNS缓存的技术。它涉及将恶意DNS记录注入缓存可以将用户重定向到恶意网站或拦截其流量。可以使用自动化工具执行DNS缓存投毒攻击并识别易受攻击的DNS服务器。
#### Brute-Force Attacks
#### 暴力破解攻击
Brute-force attacks involve systematically trying all possible combinations of characters to guess a password or key. In the context of DNS pentesting, brute-force attacks can be used to guess subdomains or hostnames associated with the target domain. Automated tools can perform brute-force attacks on DNS servers to identify potential vulnerabilities.
暴力破解攻击涉及系统地尝试所有可能的字符组合来猜测密码或密钥。在DNS渗透测试的背景下可以使用暴力破解攻击来猜测与目标域关联的子域或主机名。自动化工具可以对DNS服务器执行暴力破解攻击以识别潜在的漏洞。
#### Conclusion
#### 结论
Automation is a valuable asset in DNS pentesting as it simplifies and speeds up the process. By using automated tools, pentesters can efficiently perform tasks such as enumeration, zone transfer checks, DNS cache poisoning attacks, and brute-force attacks. This allows for a more comprehensive assessment of the target DNS server's security posture.
自动化是DNS渗透测试中的宝贵资产因为它简化并加速了过程。通过使用自动化工具渗透测试人员可以高效地执行枚举、区域传输检查、DNS缓存投毒攻击和暴力破解攻击等任务。这可以更全面地评估目标DNS服务器的安全状况。
```bash
for sub in $(cat <WORDLIST>);do dig $sub.<DOMAIN> @<DNS_IP> | grep -v ';\|SOA' | sed -r '/^\s*$/d' | grep $sub | tee -a subdomains.txt;done
dnsenum --dnsserver <DNS_IP> --enum -p 0 -s 0 -o subdomains.txt -f <WORDLIST> <DOMAIN>
2023-08-03 19:12:22 +00:00
```
#### 使用 nslookup
The `nslookup` command is a powerful tool for querying DNS (Domain Name System) servers to obtain information about domain names and IP addresses. It is commonly used in network reconnaissance and troubleshooting.
To use `nslookup`, open a command prompt or terminal and type `nslookup` followed by the domain name or IP address you want to query. Press Enter to execute the command.
For example, to obtain the IP address of a domain name, type:
2023-08-03 19:12:22 +00:00
```
nslookup example.com
2023-08-03 19:12:22 +00:00
```
This will display the IP address associated with the domain name `example.com`, along with the DNS server that provided the response.
You can also perform reverse DNS lookups by specifying an IP address instead of a domain name. For example:
2023-08-03 19:12:22 +00:00
```
nslookup 192.168.0.1
2023-08-03 19:12:22 +00:00
```
This will display the domain name associated with the IP address `192.168.0.1`, along with the DNS server that provided the response.
`nslookup` also supports various options and commands that can be used to customize the query and obtain specific information. To view the available options and commands, type `nslookup` and press Enter.
```bash
nslookup
> SERVER <IP_DNS> #Select dns server
> 127.0.0.1 #Reverse lookup of 127.0.0.1, maybe...
> <IP_MACHINE> #Reverse lookup of a machine, maybe...
```
2023-08-03 19:12:22 +00:00
### 有用的Metasploit模块
2023-08-03 19:12:22 +00:00
Metasploit是一款功能强大的渗透测试工具提供了许多有用的模块用于执行各种网络服务的渗透测试。以下是一些常用的Metasploit模块
2023-08-03 19:12:22 +00:00
- `auxiliary/scanner/dns/dns_enum`用于执行DNS枚举获取目标域名的相关信息。
- `auxiliary/scanner/dns/dns_recon`用于执行DNS侦察收集目标域名的子域名和主机记录。
- `auxiliary/scanner/dns/dns_brute`用于执行DNS暴力破解尝试猜测目标域名的子域名和主机记录。
- `auxiliary/scanner/dns/dns_cache_snoop`用于执行DNS缓存窥视获取目标域名的缓存记录。
- `auxiliary/scanner/dns/dns_reverse_lookup`用于执行DNS反向查找获取目标IP地址的域名。
2023-08-03 19:12:22 +00:00
这些模块可以帮助渗透测试人员发现目标网络中存在的DNS相关漏洞和弱点从而进行进一步的攻击和渗透。在使用这些模块时务必遵守法律和道德规范仅用于合法的渗透测试活动。
```bash
auxiliary/gather/enum_dns #Perform enumeration actions
```
2023-08-03 19:12:22 +00:00
### 有用的nmap脚本
Nmap是一款功能强大的网络扫描工具它提供了许多有用的脚本用于进行网络服务渗透测试。以下是一些常用的nmap脚本
- **dns-brute.nse**用于进行DNS暴力破解尝试猜测目标域名的子域名。
- **dns-cache-snoop.nse**用于检查目标DNS服务器的缓存查找可能的信息泄漏。
2023-08-03 19:12:22 +00:00
- **dns-zone-transfer.nse**用于执行DNS区域传输获取目标域名的完整DNS记录。
- **dns-blacklist.nse**用于检查目标域名是否被列入DNS黑名单。
- **dns-reverse-query.nse**用于执行反向DNS查询查找目标IP地址对应的域名。
- **dns-service-discovery.nse**用于发现目标主机上运行的DNS服务。
这些脚本可以帮助渗透测试人员发现目标网络中的潜在漏洞和安全风险。在使用这些脚本时,请确保遵守法律和道德规范,并获得合法的授权。
```bash
#Perform enumeration actions
nmap -n --script "(default and *dns*) or fcrdns or dns-srv-enum or dns-random-txid or dns-random-srcport" <IP>
```
2023-08-03 19:12:22 +00:00
### DNS - 反向暴力破解
在DNS渗透测试中反向暴力破解是一种常用的技术用于获取目标网络中的主机名和IP地址的关联信息。这种技术利用了DNS服务器的特性通过尝试不同的主机名来查询其对应的IP地址从而获取目标网络中的潜在目标。
2023-08-03 19:12:22 +00:00
反向暴力破解的过程通常包括以下步骤:
2023-08-03 19:12:22 +00:00
1. 收集目标网络的域名信息,包括主机名、子域名等。
2. 构建一个主机名字典,包含常见的主机名和可能的变体。
3. 使用字典中的主机名逐个进行DNS查询获取其对应的IP地址。
4. 分析查询结果,识别出目标网络中的潜在目标。
反向暴力破解的关键在于构建一个有效的主机名字典。这可以通过收集目标网络的公开信息、使用常见的主机名生成规则以及使用工具来自动生成字典来实现。
需要注意的是,在进行反向暴力破解时,应遵守法律和道德规范,并获得合法的授权。否则,这种行为将被视为非法入侵,并可能导致严重的法律后果。
```bash
dnsrecon -r 127.0.0.0/24 -n <IP_DNS> #DNS reverse of all of the addresses
dnsrecon -r 127.0.1.0/24 -n <IP_DNS> #DNS reverse of all of the addresses
dnsrecon -r <IP_DNS>/24 -n <IP_DNS> #DNS reverse of all of the addresses
dnsrecon -d active.htb -a -n <IP_DNS> #Zone transfer
```
2021-04-02 19:21:43 +00:00
{% hint style="info" %}
2023-08-03 19:12:22 +00:00
如果您能找到解析为内部IP地址的子域名应尝试对该IP范围的NS执行反向DNS BF。
2021-04-02 19:21:43 +00:00
{% endhint %}
执行此操作的另一个工具:[https://github.com/amine7536/reverse-scan](https://github.com/amine7536/reverse-scan)
2023-08-03 19:12:22 +00:00
您可以查询反向IP范围到[https://bgp.he.net/net/205.166.76.0/24#\_dns](https://bgp.he.net/net/205.166.76.0/24#\_dns)此工具在BGP方面也很有帮助
2023-08-03 19:12:22 +00:00
### DNS - 子域名BF
```bash
2022-10-02 19:15:35 +00:00
dnsenum --dnsserver <IP_DNS> --enum -p 0 -s 0 -o subdomains.txt -f subdomains-1000.txt <DOMAIN>
dnsrecon -D subdomains-1000.txt -d <DOMAIN> -n <IP_DNS>
dnscan -d <domain> -r -w subdomains-1000.txt #Bruteforce subdomains in recursive way, https://github.com/rbsec/dnscan
```
2023-08-03 19:12:22 +00:00
### Active Directory 服务器
Active DirectoryAD是一种由微软开发的目录服务用于在网络中管理和组织用户、计算机和其他网络资源。在进行网络服务渗透测试时了解和评估目标网络中的Active Directory服务器是非常重要的。
2023-08-03 19:12:22 +00:00
#### DNS记录
2023-08-03 19:12:22 +00:00
在Active Directory环境中DNS记录对于服务器的发现和通信至关重要。以下是一些常见的DNS记录类型
2023-08-03 19:12:22 +00:00
- A记录将主机名映射到IPv4地址。
- AAAA记录将主机名映射到IPv6地址。
- CNAME记录为主机名创建别名。
- MX记录指定邮件服务器的优先级。
- SRV记录指定服务的位置。
2023-08-03 19:12:22 +00:00
#### DNS枚举
2023-08-03 19:12:22 +00:00
通过进行DNS枚举我们可以收集有关目标网络中的DNS记录的信息。这些信息可以帮助我们了解网络拓扑、服务器配置和可能存在的漏洞。
2023-08-03 19:12:22 +00:00
以下是一些常用的DNS枚举工具
2023-08-03 19:12:22 +00:00
- `nslookup`用于查询DNS记录。
- `dig`用于执行高级DNS查询。
- `dnsenum`用于自动化DNS枚举。
2023-08-03 19:12:22 +00:00
#### DNS劫持
DNS劫持是一种攻击技术通过篡改DNS响应来将用户重定向到恶意网站或服务器。这可以用于进行钓鱼攻击、中间人攻击或窃取用户凭据。
以下是一些常见的DNS劫持技术
2023-08-03 19:12:22 +00:00
- DNS缓存投毒通过向DNS缓存中插入恶意记录来篡改DNS响应。
- DNS欺骗通过发送伪造的DNS响应来欺骗用户。
- DNS重绑定通过将恶意网站的IP地址动态更改为合法网站的IP地址来绕过防火墙。
2023-08-03 19:12:22 +00:00
#### DNS漏洞利用
2023-08-03 19:12:22 +00:00
在进行网络服务渗透测试时我们可以利用一些已知的DNS漏洞来获取未授权访问、执行远程代码或绕过安全措施。
2023-08-03 19:12:22 +00:00
以下是一些常见的DNS漏洞
2023-08-03 19:12:22 +00:00
- DNS区域传输未正确配置的DNS服务器可能允许区域传输从而泄露敏感信息。
- DNS隧道通过DNS协议传输数据绕过网络防火墙和IDS/IPS系统。
- DNS重绑定利用DNS重绑定技术攻击者可以绕过防火墙并访问内部网络资源。
2023-08-03 19:12:22 +00:00
#### 总结
2023-08-03 19:12:22 +00:00
在进行网络服务渗透测试时了解和评估目标网络中的Active Directory服务器是至关重要的。通过进行DNS枚举和利用已知的DNS漏洞我们可以收集有关目标网络的信息并发现潜在的安全漏洞。
```
dig -t _gc._tcp.lab.domain.com
dig -t _ldap._tcp.lab.domain.com
dig -t _kerberos._tcp.lab.domain.com
dig -t _kpasswd._tcp.lab.domain.com
nmap --script dns-srv-enum --script-args "dns-srv-enum.domain='domain.com'"
```
2022-10-02 19:15:35 +00:00
### DNSSec
DNSSecDomain Name System Security Extensions是一种用于增强DNS安全性的扩展协议。它通过数字签名和验证DNS数据的完整性防止DNS劫持和欺骗攻击。DNSSec使用公钥加密技术确保DNS响应的真实性和可信性。
2023-08-03 19:12:22 +00:00
DNSSec的工作原理如下
1. **数字签名**DNS服务器使用私钥对DNS数据进行数字签名以证明数据的真实性和完整性。
2. **公钥分发**DNS服务器将公钥发布到DNS区域的DNSKEY记录中以供其他服务器和客户端验证签名。
3. **验证签名**客户端使用DNSKEY记录中的公钥来验证DNS响应的签名确保数据未被篡改。
4. **链式验证**DNSSec使用链式验证来验证整个DNS查询路径上的每个DNS服务器的签名确保数据的完整性。
DNSSec的部署可以提供以下安全保护
2023-08-03 19:12:22 +00:00
- **数据完整性**DNSSec防止DNS数据被篡改确保接收到的数据与发送的数据一致。
- **身份验证**DNSSec使用数字签名验证DNS数据的真实性防止DNS欺骗攻击。
- **防止DNS劫持**DNSSec通过验证DNS响应的签名防止恶意攻击者篡改DNS响应将用户重定向到恶意网站。
2023-08-03 19:12:22 +00:00
尽管DNSSec提供了更强的DNS安全性但其部署仍然面临一些挑战。其中包括
2023-08-03 19:12:22 +00:00
- **部署复杂性**DNSSec的部署需要对DNS基础架构进行修改和配置这可能需要一些专业知识和技能。
- **性能影响**DNSSec的数字签名和验证过程可能会增加DNS查询的延迟和负载。
- **兼容性问题**不是所有的DNS服务器和客户端都支持DNSSec这可能导致兼容性问题和部署困难。
尽管存在这些挑战DNSSec仍然是提高DNS安全性的重要工具特别是对于那些需要保护敏感数据和防止DNS攻击的组织来说。
```bash
2023-08-03 19:12:22 +00:00
#Query paypal subdomains to ns3.isc-sns.info
nmap -sSU -p53 --script dns-nsec-enum --script-args dns-nsec-enum.domains=paypal.com ns3.isc-sns.info
```
2022-10-02 19:15:35 +00:00
### IPv6
2023-08-03 19:12:22 +00:00
使用"AAAA"请求进行暴力破解以收集子域名的IPv6地址。
```bash
dnsdict6 -s -t <domain>
```
# IPv6地址的反向DNS暴力破解
在进行网络服务渗透测试时我们经常需要获取目标主机的详细信息。其中一个重要的信息是目标主机的DNS记录。通过反向DNS查询我们可以根据IPv6地址获取主机名。
2023-08-03 19:12:22 +00:00
反向DNS暴力破解是一种常用的技术用于尝试猜测与特定IPv6地址相关联的主机名。这种技术通常用于发现隐藏在网络中的敏感信息例如内部服务器的名称或其他敏感设备。
以下是使用IPv6地址进行反向DNS暴力破解的一般步骤
1. 确定目标IPv6地址范围首先我们需要确定目标网络的IPv6地址范围。这可以通过网络扫描工具如Nmap或其他信息收集技术来完成。
2023-08-03 19:12:22 +00:00
2. 枚举IPv6地址使用确定的IPv6地址范围我们可以使用工具如IPv6地址生成器来生成可能的IPv6地址列表。
2023-08-03 19:12:22 +00:00
3. 进行反向DNS查询使用生成的IPv6地址列表我们可以使用工具如Dig来进行反向DNS查询尝试获取与每个IPv6地址相关联的主机名。
2023-08-03 19:12:22 +00:00
4. 分析结果分析反向DNS查询的结果查找可能的敏感信息或目标主机的其他详细信息。
需要注意的是反向DNS暴力破解可能会受到目标网络的防御措施的限制例如DNS防火墙或反向DNS查询限制。因此在进行此类活动时应谨慎行事并遵守适用的法律和道德准则。
通过使用IPv6地址进行反向DNS暴力破解我们可以增加对目标网络的了解并发现潜在的安全漏洞或敏感信息。这对于网络渗透测试人员来说是一项有价值的技术。
```bash
dnsrevenum6 pri.authdns.ripe.net 2001:67c:2e8::/48 #Will use the dns pri.authdns.ripe.net
```
2023-08-03 19:12:22 +00:00
### DNS递归DDoS
如果**启用了DNS递归**攻击者可以通过伪造UDP数据包的**源地址**使DNS将响应发送到受害服务器。攻击者可以滥用**ANY**或**DNSSEC**记录类型,因为它们通常具有更大的响应。\
检查DNS是否支持递归的方法是查询一个域名并**检查**响应中是否包含**"ra"标志**_递归可用_
```bash
dig google.com A @<IP>
```
2023-08-03 19:12:22 +00:00
**不可用**
![](<../.gitbook/assets/image (275).png>)
2023-08-03 19:12:22 +00:00
**可用**
![](<../.gitbook/assets/image (276).png>)
<figure><img src="../.gitbook/assets/image (1) (1) (2) (4).png" alt=""><figcaption></figcaption></figure>
[**DragonJAR Security Conference是一场国际网络安全活动**](https://www.dragonjarcon.org/)已经举办了十多年将于2023年9月7日至8日在哥伦比亚波哥大举行。这是一个内容丰富的技术活动展示了最新的西班牙语研究成果吸引了来自世界各地的黑客和研究人员。
立即在以下链接注册,不要错过这个重要的会议!:
{% embed url="https://www.dragonjarcon.org/" %}
2023-08-03 19:12:22 +00:00
### 发送邮件到不存在的账户
2023-08-03 19:12:22 +00:00
来自书籍:《网络安全评估(第三版)》
仅仅向目标域发送一封邮件到一个不存在的地址通常可以通过_不可投递通知_NDN揭示有用的内部网络信息。
```
Generating server: noa.nintendo.com
blah@nintendo.com
#550 5.1.1 RESOLVER.ADR.RecipNotFound; not found ##
Original message headers:
Received: from ONERDEDGE02.one.nintendo.com (10.13.20.35) by
2023-08-03 19:12:22 +00:00
onerdexch08.one.nintendo.com (10.13.30.39) with Microsoft SMTP Server (TLS)
id 14.3.174.1; Sat, 26 Apr 2014 16:52:22 -0700
Received: from barracuda.noa.nintendo.com (205.166.76.35) by
2023-08-03 19:12:22 +00:00
ONERDEDGE02.one.nintendo.com (10.13.20.35) with Microsoft SMTP Server (TLS)
id 14.3.174.1; Sat, 26 Apr 2014 16:51:22 -0700
X-ASG-Debug-ID: 1398556333-0614671716199b0d0001-zOQ9WJ
2023-08-03 19:12:22 +00:00
Received: from gateway05.websitewelcome.com (gateway05.websitewelcome.com [69.93.154.37]) by
barracuda.noa.nintendo.com with ESMTP id xVNPkwaqGgdyH5Ag for <blah@nintendo.com>; Sat,
26 Apr 2014 16:52:13 -0700 (PDT)
X-Barracuda-Envelope-From: chris@example.org
X-Barracuda-Apparent-Source-IP: 69.93.154.37
```
2023-08-03 19:12:22 +00:00
以下是此记录中有用的数据:
2023-08-03 19:12:22 +00:00
* 内部主机名、IP地址和子域布局
* 邮件服务器正在运行Microsoft Exchange Server 2010 SP3
* 使用Barracuda Networks设备进行内容过滤
2023-08-03 19:12:22 +00:00
## 配置文件
```
host.conf
2022-10-02 19:15:35 +00:00
/etc/resolv.conf
/etc/bind/named.conf
/etc/bind/named.conf.local
/etc/bind/named.conf.options
/etc/bind/named.conf.log
/etc/bind/*
```
2023-08-03 19:12:22 +00:00
配置Bind服务器时的危险设置
2023-08-03 19:12:22 +00:00
| **选项** | **描述** |
| ----------------- | ----------------------------------------------------------------------- |
| `allow-query` | 定义允许向DNS服务器发送请求的主机。 |
| `allow-recursion` | 定义允许向DNS服务器发送递归请求的主机。 |
| `allow-transfer` | 定义允许从DNS服务器接收区域传输的主机。 |
| `zone-statistics` | 收集区域的统计数据。 |
2021-08-12 12:57:59 +00:00
2023-08-03 19:12:22 +00:00
## HackTricks自动命令
```
2021-08-12 12:57:59 +00:00
Protocol_Name: DNS #Protocol Abbreviation if there is one.
Port_Number: 53 #Comma separated if there is more than one.
Protocol_Description: Domain Name Service #Protocol Abbreviation Spelled out
2021-08-15 17:42:53 +00:00
Entry_1:
2023-08-03 19:12:22 +00:00
Name: Notes
Description: Notes for DNS
Note: |
#These are the commands I run every time I see an open DNS port
dnsrecon -r 127.0.0.0/24 -n {IP} -d {Domain_Name}
dnsrecon -r 127.0.1.0/24 -n {IP} -d {Domain_Name}
dnsrecon -r {Network}{CIDR} -n {IP} -d {Domain_Name}
dig axfr @{IP}
dig axfr {Domain_Name} @{IP}
nslookup
SERVER {IP}
127.0.0.1
{IP}
Domain_Name
exit
https://book.hacktricks.xyz/pentesting/pentesting-dns
2021-08-15 17:42:53 +00:00
Entry_2:
2023-08-03 19:12:22 +00:00
Name: Banner Grab
Description: Grab DNS Banner
Command: dig version.bind CHAOS TXT @DNS
2021-08-15 17:42:53 +00:00
Entry_3:
2023-08-03 19:12:22 +00:00
Name: Nmap Vuln Scan
Description: Scan for Vulnerabilities with Nmap
Command: nmap -n --script "(default and *dns*) or fcrdns or dns-srv-enum or dns-random-txid or dns-random-srcport" {IP}
2021-08-15 17:42:53 +00:00
Entry_4:
2023-08-03 19:12:22 +00:00
Name: Zone Transfer
Description: Three attempts at forcing a zone transfer
Command: dig axfr @{IP} && dix axfr @{IP} {Domain_Name} && fierce --dns-servers {IP} --domain {Domain_Name}
2021-08-15 17:42:53 +00:00
Entry_5:
2023-08-03 19:12:22 +00:00
Name: Active Directory
Description: Eunuerate a DC via DNS
Command: dig -t _gc._{Domain_Name} && dig -t _ldap._{Domain_Name} && dig -t _kerberos._{Domain_Name} && dig -t _kpasswd._{Domain_Name} && nmap --script dns-srv-enum --script-args "dns-srv-enum.domain={Domain_Name}"
Entry_6:
2023-08-03 19:12:22 +00:00
Name: consolesless mfs enumeration
Description: DNS enumeration without the need to run msfconsole
Note: sourced from https://github.com/carlospolop/legion
Command: msfconsole -q -x 'use auxiliary/scanner/dns/dns_amp; set RHOSTS {IP}; set RPORT 53; run; exit' && msfconsole -q -x 'use auxiliary/gather/enum_dns; set RHOSTS {IP}; set RPORT 53; run; exit'
2021-08-12 12:57:59 +00:00
```
<figure><img src="../.gitbook/assets/image (1) (1) (2) (4).png" alt=""><figcaption></figcaption></figure>
[**DragonJAR Security Conference是一场国际网络安全活动**](https://www.dragonjarcon.org/)将于2023年9月7日至8日在哥伦比亚波哥大举行。这是一场内容丰富的技术活动展示了最新的西班牙语研究成果吸引了来自世界各地的黑客和研究人员。\
2023-08-03 19:12:22 +00:00
立即在以下链接注册,不要错过这个重要的会议!:
{% embed url="https://www.dragonjarcon.org/" %}
2022-04-28 16:01:33 +00:00
<details>
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
* 你在一家**网络安全公司**工作吗想要在HackTricks中**宣传你的公司**吗?或者想要**获取PEASS的最新版本或下载PDF格式的HackTricks**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)
2023-08-03 19:12:22 +00:00
* 发现我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品[**The PEASS Family**](https://opensea.io/collection/the-peass-family)
* 获得[**官方PEASS和HackTricks周边产品**](https://peass.creator-spring.com)
* **加入**[**💬**](https://emojipedia.org/speech-balloon/) [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass),或在**Twitter**上**关注**我[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
2023-08-03 19:12:22 +00:00
* **通过向**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **和**[**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **提交PR来分享你的黑客技巧。**
2022-04-28 16:01:33 +00:00
</details>