记一次在演习中攻防角色反复横跳
2023-2-2 08:2:40 Author: 李白你好(查看原文) 阅读量:27 收藏

免责声明

由于传播、利用本公众号李白你好所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号李白你好及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!

背景

某天公司内部举办了一次攻防演习,防守队为组织本次演习的部门,攻击队则所有部门均可报名(白哥当时也是攻击队一员,但是一直在跟tqq摸鱼最后还混了个第一名),作者作为攻击队参与了本次演习,除了常规的打点、后渗透,中间还有一些小插曲值得反思总结。

攻击者要有溯源意识

演练过程中,好不容易找到个出网Windows主机的RCE漏洞,一通操作猛如虎,直接命令执行绕AV,服务器开启http服务,远程下载CS免杀马,上线,完美!

正当我和同事分享上线CS的喜悦时,瞟到我的服务器弹出一些预期之外的日志。

坏了!思考片刻后,我意识到服务器上开的HTTP服务被防守队发现了,这服务才开了几分钟,就被溯源到了,接下来立刻转攻为守,开始小应急。

1、首先可以确认我当前这台服务器的IP(1.x.x.x)已经被防守队掌握,正在进行溯源行为,立刻关闭Python的http服务。

2、经过Python http服务的日志分析,可以观察到一些敏感文件已经被防守队提取,".bash_history"、"frpc.ini"等等。需要立刻查看这些文件的内容,模拟防守队在得知这些内容后可能带来的危害,再对当前服务器进行加固。

.bash_history文件,该文件记录了当前系统执行命令的历史记录,经排查,泄露了如下信息。

(1)历史搭建icmp隧道的命令行记录,其中包含当前服务器 IP(1.x.x.x)和我们的C2服务器IP(110.x.x.x),可以认为防守队获得了另一台我们用于攻击的服务器IP(110.x.x.x)。

(2)历史CS teamserver(1.x.x.x)的启动记录,不过幸好我们的CS搭建在另一台服务器(110.x.x.x)上,且默认端口已经做了修改,这条命令只是当时测试CS用到的命令,不过仍然泄露了历史使用过的CS密码(xxxxxxx6),而这个密码恰好也用在了我们的C2服务器(110.x.x.x)上。

所以可以大胆猜测,防守队可以通过.bash_history文件获得我们的C2服务器IP,经过对C2服务器全端口扫描后,可以发现我们C2服务器的teamserver端口,并用历史密码成功登录我们的CS。

3、立即对我们的C2服务器进行排查,排查步骤如下

a.修改CS teamserver端口和密码

b.全端口扫描C2服务器,整理端口暴露面,发现遗留曾经漏洞复现学习开启的docker环境,保险起见关闭该docker。

至此,小应急基本完毕,2台服务器加固完成,我们再次转守为攻!

4、这次吸取教训,不再在root根目录下开启http服务,新建一个空文件夹,放上我们准备好的钓鱼免杀马,换一个端口再次开启http服务(不换端口的话这鱼钩有点直),等待防守队再次发现我们的服务并且下载文件上钩,看看能不能上线防守队的电脑。

没过多久,防守队再次发现我们的http服务,并且下载了我们的钓鱼木马。

这次很可惜,CS并没有上线通知,猜测防守队识破了我们的钓鱼,还给放到沙箱分析了。

5、最后再溯源一下防守队,在Python http日志中显示出3个相关IP,这3个IP均为办公网出口或个人热点IP,2个微步标红,没有溯源价值。

总结一下

1、攻击者自我保护意识不到位,在根目录下开启了http服务,导致泄露大量敏感信息。

2、应急效果良好,没有发生二次应急事件。

3、溯源效果不佳,防守队安全意识较高,没有中招我们的钓鱼木马,防守队IP没有溯源价值。

防守队的反制手段

在本次攻防演习复盘后,发现2种防守队的反制手段。

替换关键命令

替换关键命令,例如“whoami”,“ipconfig”,“arp”等等,替换关键命令为攻击队做权限维持的常见手段。而当防守队将此类命令加上请求告警服务器的功能后,一旦这些黑客常用的命令被执行,防守队的告警服务器可以立刻收到通知,做到第一时间响应。

部署诱饵文档

在靶机桌面部署诱饵文档。攻击者在拿到shell之后经常会去桌面等目录翻配置文件,而防守队除了在桌面放置诱饵文档之外,还将该文件做了隐藏处理,正常业务使用不会主动点击该文档,而攻击者往往能看到文件夹中隐藏的文件(如CS的文件管理),该文档会从防守队的告警服务器远程加载图片资源,这样攻击者一旦点开该文档,不需要开启宏,防守队就可以收到告警,同样可以提高应急响应速度。

总结一下

1、即使顺利地拿到了目标主机的权限,也不要过于兴奋冲动。

2、不要使用"whoami"、"arp"、"ifconfig"等命令验证漏洞,极其容易触发告警,可以使用"date"、"curl ifconfig.me"等命令来验证漏洞。

3、即使是目标主机上的文件,也不要轻易下载运行,将所有来源不明的文件放到沙箱、虚拟机测试运行。

以上是本次内部攻防演习一些意外事件以及经验总结,希望我能和各位师傅一起总结进步。

参考链接

文章作者:网络安全情报攻防站(Freebuf-Jerrytqq )

原文链接:https://www.freebuf.com/articles/web/340327.html

往期回顾

对一个非法站点的渗透

攻防演习主场作战是什么样的体验?(社工+近源)

Windows提权漏洞合集and域渗透历史漏洞整理【开工大吉】


文章来源: http://mp.weixin.qq.com/s?__biz=MzkwMzMwODg2Mw==&mid=2247496811&idx=1&sn=defa6d568323f071f37facd6c0eb75e3&chksm=c09a873bf7ed0e2d6371b1f8a4147e2d272476140f69beed27647907b519132501752ef7f543#rd
如有侵权请联系:admin#unsafe.sh