吴少华
电子信息学院;1.堆溢出初探;1. 堆溢出初探;在Windows下,用户要求分配堆时,可以通过一系列函数来完成。可以使用Win32的堆调用API函数,或者C/C++运行期库的函数等。;2 RtlAllcoateHeap的失误;2.1 有堆溢出问题的程序;在mybuf数组很小的时候,程序没有任何问题,我们稍微改变下程序,只是加长mybuf的长度,变为240个A,重新生成RELEASE版的程序,在命令行下运行它。;定位溢出点
for(i=0; i240; i++)
{
mybuf[i] = 100 + i % 10;
};计算溢出点
(0x79-0x64)×10+(0x66-0x64)=21×10+2=212
验证一下,指定mybuf第212开始的四个字节是‘BBBB’,其余全部为‘A’。如果我们的计算正确,那么应该是0x42(B的十六进制)覆盖到溢出点。
for(i=0; i240; i++)
{
mybuf[i] = A;
}
mybuf[212] = B;
mybuf[213] = B;
mybuf[214] = B;
mybuf[215] = B;
;堆溢出的shellcode有如下特殊要求:
(1)如果溢出的是默认堆,则不能使用网络相关的函数,比如开端口、反连等ShellCode都不能使用;
(2)可以想办法在ShellCode中恢复默认堆,然后再使用网络相关Sh
您可能关注的文档
最近下载
- QBQB408-2023冷成形用冷轧低碳钢板及钢带.docx VIP
- CSCO结直肠癌诊疗指南(2026版).docx
- TCPCIF0391—2024 温室气体 产品碳足迹量化方法与要求 轮胎.pdf
- 汇川(INOVANCE)MD280变频器说明书.pdf VIP
- 2024-2025学年苏教版初中生物初中生物八年级下册全册(教案含反思).docx VIP
- 公路工程施工安全:公路路基施工安全PPT教学课件.pptx
- _挪威 船级社 DNV-RP-C203-2007.pdf
- 《酒店服务心理》教学课件.pptx
- 2024-2025学年苏教版(2024)初中生物八年级上册全册(教案含反思).docx VIP
- 2026 孟献贵民法精讲课(众合精讲卷)目录(共 49 专题).docx VIP
原创力文档

文档评论(0)