从零开始模拟学习红队之信息收集篇

0x00 前言

本笔记是记录从零开始模拟红队的攻击,做到批量化、自动化、专业化。

去学习、总结如何成为一名专业的红队攻击者。

0x01 前辈的总结

来自:https://github.com/biggerduck/RedTeamNotes/blob/main/%E7%BA%A2%E9%98%9F%E5%9F%BA%E6%93%8D2-%E5%A4%96%E7%BD%91%E5%BF%AB%E9%80%9F%E6%89%93%E7%82%B9%E6%96%B9%E6%B3%95%26%E6%8A%80%E5%B7%A7%E6%80%BB%E7%BB%93.pdf

1、当项目经理告诉了你攻击目标的时候 →得到公司名→上企查查搜公司名→搜出来一堆公司和子
公司
2、拿到这堆公司和子公司的名字→oneforall来跑一遍→然后得到了一堆子域名
3、拿到这堆子域名丢给Eeyes跑一遍→得到对应子域名对应的ip和c段信息
4、将对应ip和c段丢给fofa和fscan→fofa能快速得到c段资产信息,fscan能快速扫一遍,顺便帮
你打一下常用漏洞
5、如果你的运气足够好,这个时候fscan已经有漏洞爆出来了,可以直接去利用了(小概率事
件),但是如果你的运气不好,就要看接下来的第6步
6、刚刚fofa得到的资产看一眼,这里可以配合ehole的指纹识别来帮助快速筛选,通过筛选敏感
资产,例如shiro,fastjson等直接能够反序列化getshell的资产(小概率事件),如果你的运气
好,那么这个时候已经有漏洞了,可以直接利用了,如果你的运气不好,就要看接下来的第7步
7、通过上面一番筛选,时间已经过去很久了,但是目前却毫无进展,其实心里有点郁闷,这个时
候就不建议再搞了,先休息一下,调整下心态,不然后续的几天会大幅度降低工作效率,休息好了
感觉又可以了,就看看下面的步骤8继续吧
8、其实经过上面的一番筛选,web这块的基本已经过完了,但是依旧还没有漏洞,说明这个系统
平时自查搞的比较多,基本的高危漏洞修复已经完成了,如果是大型攻防演练,那就建议换个目标
再用上面的方法轮一次,如果是就某家单位做的定向攻防,就继续看步骤9吧
9、web的过完了,虽然没有直接能够rce的系统,但是我们获得了很多形形色色的登录后台\用户
登录\注册\管理员登录等等等等交互类型的资产,这些资产虽然看起来没用,但是我这里要介绍一
下攻防演练的三板斧漏洞,运气好的话,这些资产还是能够派上用场的
三板斧其一 反序列化漏洞:这个不用多说,我最喜欢的漏洞,只要有了这个漏洞,基本一台机子
的shell就拿到了,看到就眼睛放光,但是可遇不可求,遍地都是shiro的时代已经渐渐过去了。
三板斧其二 文件上传:这个也是老熟人了,一般我会先看看是不是白名单,是白名单的话,就看
看有没有文件包含之类的漏洞能组合利用下,如果是黑名单,就把文件上传的姿势对着上传点全部
来一遍,看看有没有一个能中,如果能中,那就有了一个shell(没路径连不上但是确实是
shell),虽然找上传路径也是一个拦路虎,但是至少比传不上去强。
三板斧其三 sql注入:这个更加老熟人了,注入之后,低权限,直接gg,高权限,试试吧,看能不
能上shell。
至于其他漏洞,攻防演练就那么几天时间,八成是用不上,建议直接放弃,就把上面三个玩精(仅
仅就攻防项目来说)。
10、对各种登录系统尝试弱口令/sql注入攻击,弱口令能登进去后台就找上传点,sql注入建议
xray+burp来测,看到有戏的再上sqlmap。
还有一些信息搜集的方法,比如fofa搜关键字,title=”单位名”等,这种方法可以自行穿插灵活使
用,有时候有奇效,有时候没啥效果,看个人造化了。
还有些天选之人,直接一个弱口令登云桌面(horizon、vdi等)然后拿shell的,这种属于天赐
shell,不在常规考虑范围之内,但也可以尝试。
11、弱口令如果爆不出账号密码,就考虑上网盘\github\sgk\泄露公开库搜对应人员的信息,看
看好使不
12、如果还是没有用,就可以开始看公众号\app\小程序的信息
13、如果还是没有用,就要开始用域传送\备案号\ip反查网站\ssl证书\用google来搜c段
14、如果还是没有用,就用dirmap\dirsearch来对可疑的网站进行目录爆破,看看好使不
15、如果还是没有用,还可以钓鱼,发邮件也是一个体力活
16、如果还是没有用,拿上设备跟领导申请近源渗透吧


0x02 我的总结

相较于各种形式的工具,我觉得自动化的、全面的才是最好的所以我选择。

我的渗透测试三板斧是:Goby + OneForAll + Fofa + Fscan

这四者是我认为比较自动化和快速打点的一种方法。

首先是 Goby,它拥有庞大的指纹库,可以快速获取备案,可以通过内置 awvs 插件快速分发扫描任务,可以通过 Fofa 导入目标来进行扫描,并且它自带的大量 Poc 也可以满足我们对目标的漏洞扫描。

谈到 Poc,不得不谈到 Poc 框架,比如 Pocsuite3,nuclei,拼凑的 Poc&exp 脚本,最终总结出一个道理,Poc 框架的选择主要取决于其生态环境和其次是编写难度,我们应该尽量去使用有一个生态的 Poc 框架,这样可以免去我们大量自己编写 Poc 的时间。

而生态库的话,Pocsuite ,poc 的编写看似复杂,实则十分容易上手,但是致命缺点是生态环境不够好。而 nuclei 的话,简化了编写的难度和自身是一个优秀的框架和自带 nuclei-templates。Goby 编写简单,自带很多比较新的 poc,生态环境也很好。所以我选择 Goby。

我的信息收集方法是通过 Goby 内置的 fofa 插件导入扫描目标,由 goby 进行端口和 poc 扫描。

分工明确,fofa 发现资产,Goby 扫描端口和漏洞。如果没有结果的话,还可以尝试一下 OneForAll(我使用 OneForAll 的原因很简单,因为它曾经发现了一个其他子域名扫描工具没有发现的子域名)。

如果简单的扫描没有发现漏洞,那就需要手工去测试了。

我的手工测试 CheckList 是:

  1. 弱口令爆破/sql注入

  2. 上BurpSuite自个造,尝试fuzzing和逻辑漏洞(登录bypass/注册/越权等等)

  3. 目录爆破

  4. app/小程序

  5. 信息泄露(html/js/phpinfo/github/网盘/baidu)

  6. 全都没有的话直接寄