安全攻防 | CobaltStrike与水坑攻击的联动

最近项目中遇到了一个问题,在拿下目标某站点时站点建设在云上,无法直接攻击目标内网,在进行水坑攻击的时候员工执行了木马程序但因为钓鱼页面没有及时撤掉从而被识破。

基于上述情况,所以抽空撸了一个联动CobaltStrike的钓鱼程序

0x01 实现

先附上项目代码:

https://github.com/HolyGu/CobaltStrikeToWateringhole

实现功能:

钓鱼界面自动撤除,例如A员工访问了钓鱼界面并且下载执行了木马,重新访问网页的时候钓鱼界面不会再出现,B员工访问的时候依旧是钓鱼界面,从而做到尽可能多的钓到鱼又不会被怀疑

此项目基于另一个CobaltStrike上线钉钉/飞书提醒的项目(https://github.com/HolyGu/CobaltStrikeToWebHook)修改而来

1. 首先创建一个表,用来存储上线用户的IP地址

图片[1]-安全攻防 | CobaltStrike与水坑攻击的联动-NGC660 安全实验室

2. 其次修改一下WebHook.php的代码,加入一个把互联网IP写入数据库的操作

图片[2]-安全攻防 | CobaltStrike与水坑攻击的联动-NGC660 安全实验室

3. 然后再修改WebHook.cna,加入第24行,以及在27行末尾加入发送公网IP

图片[3]-安全攻防 | CobaltStrike与水坑攻击的联动-NGC660 安全实验室

4. 接着创建一个Fish.php,用来判断访问者IP是否在数据库内

图片[4]-安全攻防 | CobaltStrike与水坑攻击的联动-NGC660 安全实验室

4. 最后创建一个Fish.js,用来植入在目标网站

图片[5]-安全攻防 | CobaltStrike与水坑攻击的联动-NGC660 安全实验室

0x02 效果

效果视频请点击公众号原文链接观看:https://mp.weixin.qq.com/s/_F5yyr1t09H-p1v0zU3RgA

0x03 优化方向

因为是项目中抽空写的,一些地方还有待优化,等后面有空了再搞搞
1. 加入地区白名单功能,例如A公司总部在上海,运维/安全人员也都在上海,那么可以将上海地区加入白名单,从而防止运维/安全人员访问站点的时候发现。
2. 将跳转改为页面遮罩,这样用户下载执行木马以后只需要重新刷新网站即可。

本文作者:贝塔安全实验室

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/192987.html

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享