面对几百个HVV目标的工具选择

admin 2022年4月18日11:50:33评论262 views字数 4003阅读13分20秒阅读模式

在HVV的时候,当给出的公共目标成百上千,我们到底怎么有效率找到可以直接rce的口子。之所以写这篇文也是因为在HVV中跟其他攻击队师傅交流之后有感,成绩好的队伍就是找这些容易打的入口找得快。秉着复盘总结的想法,遂发此文。
作为github资深爱好者,我经常在上面逛各种有趣有用的工具。
指纹识别我认为最好的是EHOLE:
https://github.com/EdgeSecurityTeam/EHole
EHOLE好用是好用,但是对于目标资产清单的探测还是差了点,需要结合综合的资产扫描工具使用。
相信各位师傅除了少数使用公司自己开发的扫描器外,大多数都是使用网上开源的扫描器。
那么网上哪些综合资产探测工具是有效果的,为啥别人能找到的口子我没找到。为了找出更有效率的方式,我找了几款开源的扫描器进行一些简单测试,希望结果能帮到大家。

1.子域扫描

子域收集是信息收集中必不可少且非常重要的一环。子域名搜集一般就2种方式,一种是通过网上的api接口查询,另一种就是字典爆破。
选了3款工具来对比下效果,分别是
ksubdomain:https://github.com/boy-hack/ksubdomain,以爆破为主
Infoscan:https://github.com/chengyizhou147/InfoScan,以查询备案信息为主,也有爆破功能,但是速度完全不及ksubdomain
oneforall:https://github.com/shmilylty/OneForAll,老牌子域收集工具,很强大,但是很久没更新了

准备了3个域名目标:分别是常规域名test1.com,test2.com和敏感域名test3.com
首先是常规域名test1.com。

1.1 常规域名扫描测试

ksubdomian扫描出37个,用时20秒左右。

./ksubdomain e -d test1.com

面对几百个HVV目标的工具选择

Infoscan扫描出42个,用时30秒左右。

python3 InfoScan.py -u test1.com

面对几百个HVV目标的工具选择

oneforallInfoscan扫描出72个存活,去重后剩下43个结果,用时在90秒左右。

python3 oneforall.py --target test1.com run

面对几百个HVV目标的工具选择

再来尝试test2.com
ksubdomain在test2.com中发现了10个子域名。

面对几百个HVV目标的工具选择

infoscan的结果只有3个

面对几百个HVV目标的工具选择

oneforall花了60秒,扫描出8个,去重后剩5个。

面对几百个HVV目标的工具选择

1.2 敏感域名扫描测试

敏感域名test3.com
ksubdomain扫出来13个。

面对几百个HVV目标的工具选择

infoscan扫出来90个。

面对几百个HVV目标的工具选择

oneforall扫出来78个,去重后有39个。

面对几百个HVV目标的工具选择

1.3 小结

扫描速度:ksubdomain>infoscan>>oneforall
扫描结果:常规网站ksubdomain扫出来的结果更多,infoscan其次,oneforall最差。原因可能是oneforall会验证子域名是否存活,但是他只验证了80和443端口,有些子域开了其他非常规端口他验证不到就不计入结果。而这种开了非常规端口的站点也是我们下一小节会去测试的。敏感域名的话,oneforall和infoscan表现差不多,原因是他们通过网上公开接口获取子域,而ksubdomain纯靠爆破。

总的来说,对于大范围目标的子域名搜集,讲究一个快准全,而且绝大多数目标都是非敏感域名,因此我还是会首选ksubdomain作为子域名搜集,辅助用infoscan。oneforall以及其他一些优秀的信息搜集工具比如水泽(https://github.com/0x727/ShuiZe_0x727),更适合少量域名攻坚。

2.站点收集

测试目标:一个存在用友命令执行的站点,直接工具一把梭就能进内网。
url地址为:http://mail.test.com:端口,端口是20000以后的非常规端口。

面对几百个HVV目标的工具选择

2.1 VSCAN

https://github.com/veo/vscan
vscan下载后运行可能会报libcap的错

面对几百个HVV目标的工具选择

按下面流程处理就行了

locate libpcap
cd /usr/lib64/
sudo ln -s libpcap.so libpcap.so.0.8

面对几百个HVV目标的工具选择

成功运行

面对几百个HVV目标的工具选择

2.1.1 扫描主域

./vscan -host test.com

时间过了大约2分钟出了结果,从结果来看并没有扫到我们想要的资产,也没有自动扫描子域名。

面对几百个HVV目标的工具选择

2.1.2 扫描对应的子域名

第二次专门加上了mail的子域名再来扫,结果确实比之前多了很多,但是并没有找到我们的目标地址,速度也更慢了。

./vscan -host mail.svccc.net

面对几百个HVV目标的工具选择

扫描结果还有爆出来的admin弱口令,但是经验证均为误报。

2.1.3 扫描子域名+全端口

第三次加上端口1-65535,还是指定子域名mail,跳过爆破模块。从结果来看很多资产都扫到了,并且我们的目标也在内,但是指纹信息没有标明是用友。

./vscan -host mail.svccc.net -p 1-65535 -skip-admin-brute -o vscanres.csv

面对几百个HVV目标的工具选择

有点惊喜的是扫描到了shiro并且直接跑出了key,验证可以直接利用。

面对几百个HVV目标的工具选择

面对几百个HVV目标的工具选择

最后再用主域名,不加mail来进行65535端口尝试,时间还是3分15秒左右,但是结果很少,而且我们的目标也不在里面。

面对几百个HVV目标的工具选择

2.1.4 小结

支持目标格式:IP、域名、url
子域名扫描:没有自动扫描子域名的功能,需配合子域名扫描器。推荐配合ksubdomain。
资产收集:指定65535全端口,跳过弱口令爆破模块。输出结果都是web资产。
指纹识别:shiro,spring未授权等指纹能识别,shiro还能识别出key,但是用友,泛微等指纹没识别出来。
扫描速度:ksubdomain扫描出9个子域名。默认线程下,使用全端口扫描在12分钟左右,速度适中。

2.2 KSCAN

https://github.com/lcvvvv/kscan

2.2.1 扫描主域

./kscan_linux_amd64 -test.com

通过开头的banner信息我们得知。默认不加参数端口只有常用的400个,从结果来看,也没有自动关联子域,也没有扫到我们想要的目标。

面对几百个HVV目标的工具选择

2.2.2 扫描子域名+全端口

鉴于kscan默认端口只有400个,所以直接使用全端口扫描。

./kscan_linux_amd64 -t mail.svccc.net -p 1-65535 -sV -o resault.csv

耗时7分钟,从结果来看,不仅有web资产,也有mysql,ssh其他协议的资产。纯web资产的话,也比vscan扫出来的结果要多。我们的目标也扫描到了,但是依然没识别出用友指纹,倒是识别出泛微的指纹了。

面对几百个HVV目标的工具选择


面对几百个HVV目标的工具选择

2.2.3 小结

支持目标格式:IP、域名、url
子域名扫描:没有自动子域名的功能,需配合子域名扫描器。
资产收集:指定65535全端口。输出结果从web端来看比vscan要多的,而且不光是web资产,还有其他关键端口,配合他自带的hydra爆破模块,能取得不错的效果。
指纹识别:能识别出大多数通用指纹,同vscan一样,用友的指纹没有识别,据观察推测,目标网站响应使用了meta头,估计是因为这个原因导致扫描器没有识别。
扫描速度:ksubdomain扫描出9个子域名。默认线程下,扫描出web资产花费16分钟,如果外加其他的协议和hydra模块就更久了。

2.3 灯塔ARL

https://github.com/TophantTechnology/ARL
使用前添加ehole的指纹
https://github.com/loecho-sec/ARL-Finger-ADD

python3 ARL-Finger-ADD.py https://127.0.0.1:5003/ admin arlpass

2.3.1 建立任务

灯塔建立任务的时候不支持url格式,不过这并不是大问题。

面对几百个HVV目标的工具选择

用主域名test.com作为任务目标,开启大字典和全端口,设置如下图。

面对几百个HVV目标的工具选择

2.3.2 扫描结果

扫描完毕,用时10分钟。发现站点338,9个域名。包含了子域名扫描和全端口,这个速率是真的不错。

面对几百个HVV目标的工具选择

用ksubdomain来验证下子域名是否齐全,结果也是9个。

面对几百个HVV目标的工具选择

再来看看330个站点的结果,没有一个重复的,并且测试目标也在里面。

面对几百个HVV目标的工具选择

但是指纹信息依然不是很全,用友还是没识别出来,明明已经导入了ehole的指纹,可能是设置的问题吧。
没关系,使用ehole离线查询,很快就出结果。用友,shiro都成功发现。

面对几百个HVV目标的工具选择

2.3.3 小结

支持目标格式:IP、域名,不支持url格式。
子域名扫描:自带子域名查询和子域名爆破。
资产收集:指定65535全端口,仅收集web资产,输出结果非常全。
指纹识别:这个功能不怎么行,还是配合ehole能得到最佳效果。
扫描速度:默认线程下,对测试网站自行子域名爆破和全端口,用时仅10分钟,算是很快了。

3.总结

本文对几款资产探测工具进行了简单测试,使用结论如下:
1.灯塔+EHOLE是目前来看效率较高,资产较全,成功率较高的方式,这种方法是首选。如果对灯塔的子域名收集不是很信任的话,可以先用ksubdomain爆破后再导入灯塔。
2.vscan扫出来的资产差了不少,子域名+全端口比起灯塔少了100多个。但是他也有好处,就是扫描到shiro的时候会自动跑出key,所以我们可以专门筛选出shiro的站给他跑,当成批量跑key的工具(灯塔也可以)。vscan同时还有web弱口令爆破的功能,虽然准确率不高,但试一试总没错。
3.kscan更多可以用来跑非web资产,配合ksubdomain和结合他自带的hydra模块,爆破出数据库,RDP,SSH这些也能撕开口子。
4.除了找寻rce的指纹外,还可以通过配合xray找寻未授权的上传接口。
5.期待各路师傅分享更多的工具和方法。

原文始发于微信公众号(雁行安全团队):面对几百个HVV目标的工具选择

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月18日11:50:33
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   面对几百个HVV目标的工具选择http://cn-sec.com/archives/921954.html

发表评论

匿名网友 填写信息