近期挖洞的那些事儿

  • A+
所属分类:安全闲碎

拥抱变化,展望未来!已经过去半年了,近期也该找时间写todo list,避免下半年又处于划水的状态。

其实大家都知道现在厂商业务线要么很长,要么很短。但最容易挖的却是业务线短的,这里可以稍微解释下,业务线短容易跟进业务同时也能深知哪些功能是干嘛的。业务线过长别说白帽子跟不过来,即便甲方安全工程师也不敢百分百说把控全面业务安全。

每天总在谈及信息收集、子域名爆破等等,难道就没有想过对域名做监控?比如每天x点扫描一遍dns数据,看这个域名有没有更新。

浅谈借助RiskIQ实施域名监控,API docs: https://api.passivetotal.org/api/docs/#api-Enrichment-GetV2EnrichmentSubdomains

近期挖洞的那些事儿

模拟请求

  ~ curl -u $USERNAME:$KEY 'https://api.passivetotal.org/v2/enrichment/subdomains?query=yongshao.com'

Response:

{
"primaryDomain": "yongshao.com",
"success": true,
"queryValue": "yongshao.com",
"subdomains": ["ftp", "mail", "smtp", "webmail", "www"]
}

解析返回后是JSON格式数据。存入mongodb中也比较方便,由于对python不是过于熟悉,只能从python 中import os 后调用curl命令进行请求。

一些核心的代码

data = json.loads(text.replace('n', '').replace(' ', ''))



repeat_list = []
if data.get('subdomains'):
subdomains = data['subdomains']
for subdomain in subdomains:
if subdomain in repeat_list:
continue
item = {
'domain': subdomain + '.' + data['queryValue'],
'subdomains': subdomain,
'ctime': time.strftime('%Y-%m-%d %H:%M:%S')

}
repeat_list.append(subdomain)

if coll.find_one({'domain': subdomain + '.' + data['queryValue']}):
continue
else:
print('insert data:',item)
coll.insert_one(item)

将subdomains与domain进行一个拼接,后续推送IM/Mail时会用到。

近期挖洞的那些事儿

之后部署在服务器中并写入定时任务,在每天凌晨x点执行,如果发现新子域名则会在钉钉中进行推送。

大概效果如图 近期挖洞的那些事儿

上述只是一些点,如果你觉得这种思路不太好,可以使用rasca1的工具:

https://github.com/guimaizi/get_domain


近期挖洞的那些事儿

他的至少比我完善的多,后续我也会加入获取title、HTTP Status Code等等的功能。

某些情况中业务文档尤为重要,毕竟它是提供使用者清晰知道本业务有哪些功能。但在读文档时会消磨很大耐心得沉住气,个人感觉它的收获至少是比瞎点功能有用的多。

    (搜索某业务文档……)

近期挖洞的那些事儿


以下图为例子

近期挖洞的那些事儿


近期挖洞的那些事儿


这个之前在《hacking you without password》也讲过了,不会再细讲了。先要了解清楚这块是干嘛的、能产生什么漏洞。具体这里会有什么问题我也不知道,因为我瞎扯的……(主要是提供思路罢了)


本文讲述的两种方法使得最近挖了不少漏洞。。。


近期挖洞的那些事儿

以上临时工所述
我司一概不负责

本文始发于微信公众号(逢人斗智斗勇):近期挖洞的那些事儿

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: