引言

最近,跟着师傅们参加了一次某部门的护网演习。这也是我第一次上手这样的实战环境。经过两周的学习,不得不说这绝对是我收获最多的一次行动,也是我对于安全的认知被刷新的最彻底的一次。接下来我会对本次行动中所学习到的渗透思路进行总结。(没有实战图,别期待了,那种东西怎么可能放出来啊)

寻找入口点

信息收集

以游戏来类比,我以为黑别人电脑是在玩hacknet,实际上却是在玩“全网公敌”。在进行渗透之前,信息收集都是必不可少的,甚至可以说红发手里的牌大部分是要由这一块得到。

在互联网上,人们会因为自己的疏忽导致泄露大量的信息,其中不乏自己的账号密码,甚至是其他的敏感信息。有时候,根据所泄露的敏感信息,我们甚至能直接猜到目标的账号密码,从而成为进入内网的入口点。而在进入内网之后,人们 的防范意识可能会更加薄弱(我们真的在内网里找到有人就把账号密码保存在电脑的文件里,通过这个我们拿下了不少重要系统)。也就是说,黑客们的攻击往往不需要利用很巧妙的漏洞,他们只需要通过一些耐心的寻找,便能获得拿下目标的钥匙。

可供信息收集的地方:
FOFA 网络空间测绘,收集域名或二级域名(实在不行还能爆破子域名)
爱站网 同上,不过二级域名可能找不全,但是可以看到备案人或一些其他有用的信息
Github 主要收集是否有源码泄露,有时候会有人爬过的域名
社工库机器人(自己找)
百度文库泄露的文档
一些新闻报道,微信公众号泄露的账号(有时甚至带有密码)

web敏感信息收集:
1.端口
2.系统版本
3.中间件信息
4.CMS/应用等指纹
5.WAF版本信息
6.真实ip
7.后台地址/敏感目录

by the way ,在外网尽量别用端口扫描器去扫别人网站,不仅特征容易被发现,还非常的慢。

漏洞利用

在信息收集中,可以尝试用漏洞攻入目标内网,有些时候这些漏洞非常简单(比如某地方就有一个ctf都做过好几遍的任意文件上传)。当然,大部分能利用的漏洞都是任意文件上传,在我们信息收集的过程中能上传文件的地方也是我们重点注意的地方。而其他可以利用的漏洞嘛,sql注入只能获取一部分信息,xss倒是可以用来钓鱼。只有任意文件上传直接拿下主机权限是最方便也是最快捷的。话说回来,其实本来一开安排的任务是让我去找app漏洞,但是一打开连360的加壳都过不了orz。ps:一定要注意免杀。

钓鱼

虚假的黑客:利用强大的漏洞攻入敌方系统
真正的黑客:账号和密码发一下

你以为这是梗?nonono,完全不是的哦。当我们信息收集找不到我们需要的信息的时候,钓鱼便是一种可选的方法。我们可以通过邮件,网站镜像,弹窗,甚至是打电话社工等手段套到目标的账号密码。也许这样看起来会很low,但事实上,这是一种非常高效且方便的手段。真正的渗透测试中钓鱼不仅常用而且经常能得到一些有用的信息。在本次行动中师傅们便利用钓鱼上线了不少的电脑,并且这些电脑完全处于我们的控制之中(甚至能直接监视对方的一举一动)。仔细想来确实是这样,系统漏洞挖到最后,最高效最方便的还是对人漏洞。

进入内网

权限维持

当我们通过入口点进入内网的机器之后,第一件事便是想办法维持自己在内网的权限从而方便我们之后在内网进行渗透工作。就这次渗透测试中我学到的而言,一是要保证自己的木马不会被杀毒软件等东西杀掉,二是要保证当这台机器下线之后重启时依然能够运行木马上线。最常见的方法便是修改开机启动项,关闭电脑的杀毒软件并运行木马程序。

提权

有时候我们拿下机器之后的权限并不高,比如只拿到了一个用户的账号密码,并不能对主机执行一些高阶的命令,这时候就需要提权,让自己的账号有更高的权限执行命令。举个例子便是可以利用cve20200796漏洞进行提权。

内网信息收集

思路类似,进入内网之后首先就要查看当前的电脑上是否有重要文件,不排除有人将账号密码放在桌面上的可能性。
端口检查,查看这台电脑上跑了一些什么服务。
利用cs中的工具,读取内存中电脑的账号密码,浏览器中保存的账号密码。

在本次行动中,我们在某学校入口点处利用弱口令root/root进入后台数据库,获得了大量账号密码

搭建代理

某种意义上这也是权限维持的一种方式,通常内网的机子都是与外网隔离的,我们要访问其中的机子必须经过入口点。那么如果入口点被蓝方发现并且关闭掉了呢?为了避免这样的情况发生,我们需要在内网找到合适的主机搭建代理,既然我们不能直接访问内网的主机,那就让内网的主机访问我们的服务器。

使用frp这样的内网代理工具进行代理服务器搭建,点击此处下载,教程可以在各大平台搜索到。

横向渗透

终于,在内网的机器中建立好阵地,接下来我们要做的就是扩大自己的战果。这就需要在该网段的内网中漫游拿下更多的机器,这个过程就是横向渗透。
这一步简直就是黑客知识的大杂烩,由于内网机器之间的防御会更加薄弱,再加上内网的系统通常来讲会常年不更新,所以能利用的手段非常,非常,非常的多。总的来讲,只要你脑洞够大,怎么打都可以(前提是要保证安全)。

对此,仅放一张思路图展现本次渗透测试其中一处系统的进攻思路。

hacked

总结

关于我学到的如何去进行一次内网渗透的思路大概就是这些了,因为基础知识大量的欠缺能真正吸收并理解的东西并不多(话说回来为什么逆向手会去做渗透啊?)。以上的思路虽然看起来简单,但是每一步的摸索过程都是相当艰难的,在进入内网后迅速被防守方给踢了出来,费尽力气打下的机器一条有用信息都没有,精心设置的鱼钩一条鱼都不上钩,心态爆炸的情况要多少有多少。渗透最重要的一点便是耐心,不放过一切线索的执着,其实这一点和侦查学又相当地重合了。
通常一个防守较强的系统,光是入口点都要找上一晚上甚至是几天,实在不行还得现场寻找0day漏洞,在进入内网之后还要时刻提防防守方的反制。渗透到高级阶段便是人与人之间的博弈,更是技术与技术之间的碰撞。经过此行深刻地意识到了自己有多么的菜,那就继续滚去学习吧,摸了。