核查目的
1、域名Whois信息,判断域名注册人、域名是否有效;
2、解析域名对应服务器IP地址,判断是否需要ICP备案
语言:Python
API接口:whoisxmlapi、聚合数据
在尽职调查的过程中,若标的公司存在大量域名的情况下(例如数百个),如果采用传统的手段进行核查,速度较慢且繁琐。因域名Whois信息存在许多成熟API,故可采用技术手段辅助查验,发现问题。
01
获取域名Whois信息
此处采用较为成熟的whoisxmlapi的服务,可提供大部分于域名的Whois信息(对CN等中国域名也支持),较为准确且更新及时。新注册账号可有1000条免费查询额度。官方示例如下:
其可返回Json数据,故可直接采用Python的Json.loads 函数载入返回数据为字典。
较少情况下可能会存在api调用失败的情况,所以注意在urlopen中加入timeout。
但经测试会发现,不同的顶级域名,返回的数据格式不一致。例如部分域名的注册人为data['WhoisRecord']['registryData']['registrant']['name'],而部分域名注册人为data['WhoisRecord']['registrant']['name'],但同一域名仅有一种格式,所以直接用Try语句把可能的情况试一下即可。
参考语句如下:
02
获取域名对应服务器IP
此部分较为简单,直接采用Python的ocket.gethostbyname函数即可。
03
获取IP所处位置
获取IP地址后,再根据IP地址导出服务器地址,这样就可很直观的看出是否需要进行ICP备案(工信部的监管逻辑是以服务器所处位置判断是否进行ICP备案)。
IP地址数据库API网上很多,且大多均为免费,此处采用的聚合数据的IP地址数据库。
全部代码参考:
领取专属 10元无门槛券
私享最新 技术干货