以下是目前网络上好用的 DNSLog 在线平台合集,这些平台常用于渗透测试中的回显检测、盲打验证、SSRF/RCE 漏洞利用验证、DNS 外带等安全测试环节。它们支持 DNS、HTTP、SMTP 等多协议回显捕捉,在安全圈内广泛使用。


🧭 常用 DNSLog 在线平台推荐

平台地址特点
DNSLog.cnhttp://www.dnslog.cn最经典,简洁易用,速度快
ceye.iohttps://ceye.io支持 DNS + HTTP 回显,免费注册
Dnslog Platform(bugscaner.com)http://dns.bugscaner.com国内稳定,带图形界面
dnslog.cchttp://dnslog.cc高并发环境下表现稳定
requestbin.net(Beeceptor 替代品)https://requestbin.netHTTP-only,适合 SSRF/接口测试
Interactshhttps://github.com/projectdiscovery/interactsh支持自部署,自动化工具配套丰富
BuuDNS(BuuOJ)https://dnslog.buuoj.cnCTF 比赛常用,速度不错(需登录)

🧪 使用流程(以 dnslog.cn 为例)

  1. 打开网址: http://www.dnslog.cn
  2. 点击「获取域名」按钮,系统将分配一个临时二级域名
  3. 在你的漏洞利用 payload 中嵌入这个域名(如 SSRF、XXE、命令执行等)
  4. 执行后,回到平台页面查看是否有记录(说明 payload 成功触发)

🔐 使用建议与注意事项

  • 用途合法合规:仅限安全测试授权目标或本地靶场
  • DNS缓存延迟问题:如被运营商劫持可尝试 ceye.io 或国外 DNS 平台
  • 数据保存有限:平台一般不长期保存数据,测试完尽快截图或导出
  • 隐私保护:部分平台对 IP 和 User-Agent 会记录,敏感环境请本地部署

🏠 自建平台推荐(进阶)

如需要更高的隐私性或稳定性,可以自建 DNSLog 平台:

  1. dnslog-py:适合轻量部署
  2. Interactsh(ProjectDiscovery 出品)
  3. Burp Collaborator 自建版(企业级)
    • BurpSuite Pro 专属功能,自建需搭建 DNS + HTTP + SMTP 服务

📚 延伸阅读与工具整合

  • xray / nuclei:支持自动集成 dnslog 平台
  • dnslog.cn Python API 调用脚本:可用于自动化测试
  • ceye.io 支持 API key 管理,可批量检测

好的!以下是一个功能完善的 Python 脚本,它可以帮助你自动从 dnslog.cn 平台获取域名、监听 DNS 回显记录,并支持你在本地或自动化测试中集成使用(例如 SSRF、XXE、命令执行等漏洞验证场景)。


✅ 脚本功能说明

  • 自动访问 dnslog.cn,获取唯一测试域名
  • 自动获取并打印 DNS/HTTP 回显日志
  • 支持长轮询查看是否有记录回显
  • 支持可选 payload 生成接口(可扩展)

🐍 脚本代码:dnslog_monitor.py

import requests
import time
import sys

class DNSLog:
    def __init__(self):
        self.session = requests.Session()
        self.base_url = 'http://www.dnslog.cn'
        self.token = ''
        self.domain = ''
        self.init_dnslog()

    def init_dnslog(self):
        try:
            self.session.get(self.base_url)
            r = self.session.get(f'{self.base_url}/getdomain.php')
            self.domain = r.text.strip()
            r = self.session.get(f'{self.base_url}/gettoken.php')
            self.token = r.text.strip()
            print(f'[+] 获取成功!当前 DNSLog 域名:{self.domain}')
        except Exception as e:
            print(f'[-] 初始化失败:{e}')
            sys.exit(1)

    def get_records(self):
        try:
            headers = {'token': self.token}
            r = self.session.get(f'{self.base_url}/getrecords.php', headers=headers)
            if r.status_code == 200:
                return r.text.strip()
            else:
                return None
        except Exception as e:
            print(f'[-] 获取记录失败:{e}')
            return None

    def monitor(self, interval=5):
        print(f'[*] 开始监听 DNS 回显记录,每 {interval} 秒刷新一次...')
        try:
            while True:
                data = self.get_records()
                if data:
                    print('\n[+] 发现 DNS/HTTP 回显记录:')
                    print(data)
                    break
                time.sleep(interval)
        except KeyboardInterrupt:
            print("\n[*] 手动终止监听。")

if __name__ == '__main__':
    print("===== DNSLog.cn 自动监听工具 =====")
    dnslog = DNSLog()
    print("[*] 你可以在测试中使用如下域名作为回显触发点:")
    print(f"    --> {dnslog.domain}")
    print("[*] 等待攻击目标触发中...")
    dnslog.monitor(interval=5)

🧪 使用方法

  1. 安装 Python3 环境(推荐 3.6+)
  2. 安装依赖(requests):
pip install requests
  1. 运行脚本:
python dnslog_monitor.py
  1. 使用脚本输出的域名进行测试(例如注入 http://xxxxxx.dnslog.cn
  2. 等待目标触发后自动打印 DNS 回显记录

📦 脚本扩展建议

你可以扩展如下功能:

  • 加入 telegram/bark/wechat 推送(实时通知)
  • 集成漏洞扫描器(如 xray 输出结果对接)
  • 添加批量 payload 构造与测试功能
  • 支持其他平台,如 ceye.io API 接口

📂 本地部署 dnslog(可选)

如果你不想依赖公网平台,也可以自建:

  1. 项目推荐:https://github.com/BugScanTeam/DNSLog
  2. 环境要求:Python + Redis + Flask + 公网 DNS 记录
  3. 或使用更强的:https://github.com/projectdiscovery/interactsh