DNSint 是一款功能强大的全能 DNS 侦察与 OSINT 工具,专为安全专业人员、渗透测试人员和系统管理员设计。它结合了多种 DNS 分析技术与 OSINT 数据源,提供全面的域名情报。
# 克隆仓库
git clone https://github.com/who0xac/DNSint.git
cd DNSint
# 安装依赖
pip install -r requirements.txt
# 运行 DNSint
python DNSint.py example.com -a
python DNSint.py <域名> [选项]
位置参数:
domain 目标域名(例如 example.com)
模块选择:
-a, --all 执行完整 DNS + OSINT + 技术扫描(默认)
-r, --records 查询 DNS 记录类型
-z, --zone 执行反向 PTR 和 AXFR 检查
-m, --mail 分析 SPF、DKIM、DMARC
-w, --whois 执行扩展 WHOIS 查询
-n, --nsinfo 分析名称服务器信息和 DNSSEC
-p, --propagation 检查全局 DNS 传播
-s, --security 执行 DNS 配置错误检查
-o, --osint 使用被动 DNS 和 CT 数据进行增强
-t, --tech 检测 Web 技术、CMS、服务器
高级选项:
--dns-server <ip> 使用自定义 DNS 服务器(例如 8.8.8.8)
--timeout <秒> 设置 DNS 查询超时(默认:5)
-u, --update 将 DNSint 更新至最新版本
-e, --export 导出 JSON + TXT 报告至桌面
-v, --verbose 显示详细日志
-q, --quiet 最小化控制台输出
# 使用所有模块进行完整分析
python DNSint.py example.com -a
# 检查 SPF、DMARC 和 DKIM
python DNSint.py example.com -m
# 执行安全检查并导出报告
python DNSint.py example.com -s -e
# 使用 Google DNS
python DNSint.py example.com --dns-server 8.8.8.8
# 使用内部 DNS 服务器
python DNSint.py internal.company.com --dns-server 192.168.1.53
# 使用 Cloudflare DNS
python DNSint.py example.com --dns-server 1.1.1.1
# 证书透明度和被动 DNS
python DNSint.py example.com -o
# DNS 记录 + WHOIS + 邮件安全
python DNSint.py example.com -r -w -m
# 检测 Web 技术栈和安全标头
python DNSint.py example.com -t
# 最小化输出,导出至文件
python DNSint.py example.com -a -e -q
# 更新至最新版本
python DNSint.py -u
┌────────────┬──────────────────────────────┬──────────┬──────────────────────┐
│ 类型 │ 值 │ TTL │ 附加信息 │
├────────────┼──────────────────────────────┼──────────┼──────────────────────┤
│ A │ 93.184.216.34 │ 3600 │ │
│ MX │ mail.example.com. │ 3600 │ 优先级:10 │
│ TXT │ "v=spf1 include:_spf..." │ 3600 │ │
└────────────┴──────────────────────────────┴──────────┴──────────────────────┘
📧 邮件安全分析
├── SPF(发件人策略框架)
│ ├── ✓ 找到 SPF 记录
│ ├── 记录:v=spf1 include:_spf.google.com ~all
│ └── DNS 查询次数:3(限制:10)
├── DMARC(基于域名的消息认证)
│ ├── ✓ 找到 DMARC 记录
│ └── 策略:reject
└── DKIM(域名密钥识别邮件)
└── ✓ 找到选择器:google, default
🔒 安全审计结果
├── 严重问题(0)
├── 警告(2)
│ ├── ⚠ DNSSEC 未启用
│ └── ⚠ 检测到通配符证书
└── 信息(3)
├── ℹ SPF 记录已配置
├── ℹ DMARC 策略设置为 quarantine
└── ℹ CAA 记录已配置
测试域名在不同 DNS 服务器下的解析结果:
# 内部 DNS
python DNSint.py internal.company.com --dns-server 10.0.0.53
# 外部 DNS(Google)
python DNSint.py company.com --dns-server 8.8.8.8
# 比较结果
python DNSint.py company.com --dns-server 8.8.8.8 > external.txt
python DNSint.py company.com --dns-server 10.0.0.53 > internal.txt
diff external.txt internal.txt
#!/bin/bash
# 监控域名的 DNS 变化
python DNSint.py example.com -a -e -q
# 报告保存至桌面,带时间戳
# 部署前检查 DNS
python DNSint.py staging.example.com -s --dns-server 10.0.0.53
if [ $? -eq 0 ]; then
echo "DNS 检查通过"
else
echo "检测到 DNS 问题"
exit 1
fi
DNSint 支持两种格式导出结果:
{
"domain": "example.com",
"scan_timestamp": "2025-11-23T10:30:00",
"records": {
"A": [{"value": "93.184.216.34", "ttl": 3600}]
},
"whois": {
"registrar": "Example Registrar",
"creation_date": "1995-08-14"
}
}
DNSint 报告 - example.com
生成时间:2025-11-23 10:30:00
==================================
DNS 记录:
A: 93.184.216.34 (TTL: 3600)
MX: mail.example.com (优先级:10, TTL: 3600)
WHOIS:
注册商:Example Registrar
创建日期:1995-08-14
文件保存至桌面,带时间戳:
example.com_2025-11-23_103000.jsonexample.com_2025-11-23_103000.txt欢迎贡献代码、提交 issue 和功能请求!您可以 fork 本仓库并提交包含改进的 pull request。
DNSint 仅用于教育和合法的安全测试目的。
由 wh0xac 用 ❤️ 制作