#domain #page #information #front #host #google #com

bin+lib domain_info

获取域名信息,包括主页统计数据和使用的技术

1 个不稳定版本

0.1.1 2020年1月11日
0.1.0 2020年1月9日

#292文本编辑器

MIT/Apache

97KB
782

domain_info

一个早期的 crate 和工具,用于获取域名信息,主要通过查看域名主页上的信息来实现。

从主页,它获取加载时间、语言、单词数、图像/表单/脚本数量,并使用 Wappalizer 项目规则来识别主页上使用的技术。

它还对主机进行反向 DNS 查询,并尝试确定主机公司/平台(例如 GoDaddy、Bluehost、AWS)。

此外,它还获取邮件服务器主机和域名的 whois 信息。

domain_info google.com
{
  "domain": "google.com",
  "dns_info": {
    "ip": "172.217.6.238",
    "other_ips": []
  },
  "host_info": {
    "host": "lga25s55-in-f238.1e100.net",
    "host_tld": "1e100.net",
    "platform": "Google"
  },
  "front_page_info": {
    "status_code": "200 OK",
    "load_time": {
      "secs": 0,
      "nanos": 217272393
    },
    "word_count": 100,
    "content_length": 47090,
    "techs": [
      {
        "category": "Web Servers",
        "name": "Google Web Server"
      },
      {
        "category": "JavaScript Frameworks",
        "name": "ExtJS"
      },
      {
        "category": "JavaScript Libraries",
        "name": "List.js"
      }
    ],
    "page_content": "",
    "page_text": "",
    "language": "",
    "iframe_count": 0,
    "image_count": 1,
    "form_count": 1,
    "script_count": 8
  },
  "mx_info": {
    "servers": [
      "alt2.aspmx.l.google.com",
      "alt3.aspmx.l.google.com",
      "aspmx.l.google.com",
      "alt1.aspmx.l.google.com",
      "alt4.aspmx.l.google.com"
    ]
  }
}```

```sh
cat domains.txt | domain_info | jq

状态

已经有一个初步实现,对于少量域名列表表现良好。当运行大量域名列表时,还需要更多的工作和测试。

待办事项

[] 更好的域名验证 [] 如果没有参数且没有管道输入,可执行文件将静默挂起。我需要在 Rust 中找到一种检查 stdin 是否有输入的机制。[] 将 Wappalyzer 提取到其自己的 crate 中 [] 将反向 DNS 主机公司/品牌提取到其自己的 crate 中

备注

基于 Wappalyzer 的功能有限,因为我们不是在无头浏览器中运行规则,而是只针对主页最初返回的 html。

依赖项

~25MB
~483K SLoC