DNStwist MCP 服务器
一个用于 dnstwist 的模型上下文协议(MCP)服务器,dnstwist 是一款强大的 DNS 混淆工具,有助于检测错别字域名劫持、网络钓鱼和商业间谍活动。该服务器提供分析域名排列组合和识别潜在恶意域名的工具。它设计为与 MCP 兼容的应用程序(如 Claude Desktop)无缝集成。
⚠️ 警告
本工具专为合法安全研究目的设计。请:
- 仅分析您拥有或有权测试的域名
- 尊重速率限制和 DNS 服务器策略
- 负责任和道德地使用
- 了解某些 DNS 服务器可能会对自动查询进行速率限制或阻止
- 考虑在运行大型扫描时对 DNS 基础设施的影响
要求
- Node.js(v18 或更高版本)
- Docker
- 安装了 Docker Desktop 的 macOS、Linux 或 Windows
快速入门
通过 Smithery 安装
要自动为 Claude Desktop 安装 DNStwist,请通过 Smithery 执行以下操作:
npx -y @smithery/cli install @burtthecoder/mcp-dnstwist --client claude
手动安装
-
安装 Docker:
- macOS:安装 Docker Desktop
- Linux:遵循 Docker Engine 安装指南
-
通过 npm 全局安装服务器:
npm install -g mcp-dnstwist
- 添加到您的 Claude Desktop 配置文件:
{
"mcpServers": {
"dnstwist": {
"command": "mcp-dnstwist"
}
}
}
配置文件位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- 重启 Claude Desktop
替代设置(从源代码)
如果您希望从源代码运行或需要修改代码:
- 克隆并构建:
git clone <repository_url>
cd mcp-dnstwist
npm install
npm run build
- 添加到您的 Claude Desktop 配置:
{
"mcpServers": {
"dnstwist": {
"command": "node",
"args": ["/绝对路径/to/mcp-dnstwist/build/index.js"]
}
}
}
功能
- 域名混淆:使用各种算法生成域名排列组合
- 注册检查:验证排列组合的域名是否已注册
- DNS 分析:检查 A、AAAA、MX 和 NS 记录
- 网络存在性:捕获 HTTP 协议信息
- WHOIS 数据:检索注册日期和注册商信息
- 网络钓鱼检测:生成网页模糊哈希
- 可配置:自定义 DNS 服务器和并行处理
- 多种格式:支持 json、csv 和列表输出格式
工具
域名混淆工具
- 名称:
fuzz_domain - 描述:生成和分析域名排列组合,以检测潜在的错别字域名劫持、网络钓鱼和品牌冒充
- 参数:
domain(必需):要分析的域名(例如,example.com)nameservers(可选,默认:"1.1.1.1"):以逗号分隔的 DNS 服务器列表threads(可选,默认:50):并行处理的线程数format(可选,默认:"json"):输出格式(json、csv、list)registered_only(可选,默认:true):仅显示已注册的域名mxcheck(可选,默认:true):检查 MX 记录ssdeep(可选,默认:false):生成网页模糊哈希banners(可选,默认:true):捕获 HTTP 协议信息
示例:
{
"domain": "example.com",
"nameservers": "1.1.1.1,8.8.8.8",
"threads": 50,
"format": "json",
"registered_only": true,
"mxcheck": true,
"banners": true
}
故障排除
Docker 问题
- 验证 Docker 是否已安装并运行:
docker --version
docker ps
- 检查 Docker 权限:
- 确保您的用户有权限运行 Docker 命令
- 在 Linux 上,将您的用户添加到 docker 组:
sudo usermod -aG docker $USER
常见问题
-
DNS 解析问题:
- 验证 DNS 服务器是否可访问
- 尝试其他 DNS 服务器(例如,8.8.8.8)
- 检查速率限制或阻止
-
性能问题:
- 根据系统性能调整线程数
- 考虑网络带宽和延迟
- 监控 DNS 服务器响应时间
-
修复任何问题后:
- 保存配置文件
- 重启 Claude Desktop
错误信息
- "Docker 未安装或未运行":安装 Docker 并启动 Docker 守护进程
- "无法解析 dnstwist 输出":检查域名是否有效且格式是否正确
- "执行 dnstwist 时出错":检查 Docker 日志并确保权限正确
- "DNS 服务器未响应":验证 DNS 服务器可访问性并尝试其他服务器
贡献
- 分叉存储库
- 创建功能分支 (
git checkout -b feature/amazing-feature) - 提交您的更改 (
git commit -m '添加 amazing 功能') - 推送到分支 (
git push origin feature/amazing-feature) - 打开 Pull Request
许可证
本项目根据 MIT 许可证授权 - 详细内容请参阅 LICENSE 文件。
