阿旺所在的公司其实是一个集团下的子公司,这个集团名叫造轮集团,造轮集团不造轮子,其是一个神秘的组织,每年营收令人咂舌,信息资产也很多。一天阿旺被派了一个活儿,每个月探测所有开放在内外网(主要是内网)的信息资产(包括主机、工控设备、摄像头)那些是存活的,存活的资产开了什么端口(对应相应的服务)。然后对存活的资产进行相应的漏扫。
阿旺一听这个活儿,又一脸懵。脑袋里转不出来现成的方法,但是这个难不倒阿旺。” 阿旺本来技术方面也有三脚猫的功夫,工具也会用点,现在这些需求也清楚,只是按照前辈们总结出的经验操作就是了。这些“前辈”指的是哪些呢?就是网络上总结的帖子、公司做过该任务的“前任”、公司内部的组织过程资产呗。
阿旺跑去找小康师傅,小康师傅把自己现在做的和盘托出。主要用的是goby、nmap、AWVS、nessus、kali的msf、burpsuite等工具再结合公司的漏洞库和自己的经验完成的这项工作。
1、goby
goby可以去扫网段,把网段所有存活资产包括端口都探测出来。并且可视化的显示出来统计结果,下面这个链接中有goby的操作动图可参考。
开启rdp_Goby内测版1.8.230 | RDP爆破来了!(文末有福利)-CSDN博客
2、nmap
goby探测的一些资产信息颗粒度还是比较粗,比如操作系统版本和对应的服务版本不一定清晰,所以还可以用nmap去进一步探测。(有童鞋会问,既然这样,nmap一把梭就得了,搞什么goby啊?其实nmap可视化和统计方面做得没有goby看着舒服,所以第一步很多公司还是用goby)
3、goby探测出来的开了80和443端口(意味着有web应用)的资产,用AWVS漏扫一下,扫出来的漏洞再验证一下,验证的时候可以用Burpsuite(方便抓包观察并反复repeat观察结果)。
4、goby探测出来的存活资产IP可以用nessus扫一下,扫出来的漏洞可以用msf去试一下(记住不是利用exploit,而只能是探测)
另外nmap也可以通过--script去验证漏洞哈,主机漏洞web漏洞都可以。
这样一波操作下来,这些漏洞也验证得七七八八了。然后就可以把验证好的漏洞记录在公司台账系统里,系统会根据台账自动出风险通知单,我们可以根据这些信息每个月整理出一份月报。运维的同事看到了风险通知单会自行整改,如果有什么不太明白的也会来询问。
阿旺一听,心里比较清楚应该怎么做了。于是每天就登录内网的跳板机来做这项任务。
差不多做了一周,公司又来了3个实习生,公司想让这三个实习生掌握这个技能,后续把工作分配给他们去做,让阿旺给培训一下。阿旺有点犯难,因为这几个步骤虽然描述起来很容易,但实际上手的时候需要一些基础才会掌握得比较好。这些基本包括:
1、掌握各个工具的常用操作,对网段、端口有概念,至少知道操作这步是干嘛的;
2、对于漏洞类型的原理还是有点感知,看到一个漏洞,至少知道验证步骤,如果不知道,网上查了步骤会跟着操作,然后对操作结果也有个判断;
3、会写修复建议报告(这个有模板,但是需要根据经验判断评级是否合理)。
所以,如果对一个完全的新手培训,一开始也就只能讲一下思路和工具的操作,让他们反复练习操作,至少会得出一个机扫结果。然后要让他们明白这个流程的思路是什么,能理解为什么要做这步(在讲思路时,可能还要因材施教补一些基础知识),接着就是讲验证漏洞,验证漏洞需要知道这个漏洞的大概原理。如果实在不懂原理,至少msf的验证要会,web漏洞的验证也知道可以用哪些工具(在这里就可能要掌握更多的工具了)。
阿旺理了一下思路,画了一个培训思维导图:
如果时间有限,这个自我介绍环节也可先拉群,在群里寒暄一下了解即可。
现在就是选漏洞了,选哪个漏洞作为闭环呢。阿旺跑到跳板机上研究了起来。阿旺先找了一个漏洞MS17-010,这个漏洞很经典,也很老,没想到集团里还有这个漏洞,阿旺很是惊讶。
首先,goby扫出来开了445端口的IP。
然后nmap去探测一下,到底是什么版本的windows,一般来说,有Windows xp,Windows 2003,Windows 7、Windows 8,Windows 2008,Windows 2008 R2、Windows Server 2012等.。
nmap -A IP //发现版本的likely度,判断很有可能有永恒之蓝
当然如果对漏洞没有经验,只根据开放的端口无法判断的话,我们可以用nessus去先扫,nessus告诉我们可能是什么漏洞之后我们再继续。
接下来msf放大招
验证的时候注意不要选exploit,很可能把集团正在服务的生产设备搞挂,要选auxiliary,而且尽量在非生产时间验证。
接下来我们再看看AWVS扫Web应用。
通过goby查到这个IP开放了80端口。
使用web登录一看果然有:
使用AWVS扫了一下,如下
虽然没有扫到啥需要验证的漏洞吧,但是呢,如果有xss、sql注入之类的,我们可以上相应的工具和payload去验证。(不过xss我基本是手测了,sql注入倒是可以用sqlmap跑一下)
后面就是把验证好的漏洞按照标准字段填到公司安全风险系统表里了。
先讲这么多吧,下次再讲一些漏洞和相应的验证方法吧(这块儿内容说实话还真的要积累,入了门就自己慢慢积累,形成自己的漏洞经验呗,不过一般的安全公司都有漏洞库,可以直接上去学习补充)