收藏 分销(赏)

星期一沙.pptx

上传人:精*** 文档编号:6086458 上传时间:2024-11-27 格式:PPTX 页数:35 大小:158.71KB 下载积分:12 金币
下载 相关 举报
星期一沙.pptx_第1页
第1页 / 共35页
星期一沙.pptx_第2页
第2页 / 共35页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,#,Windows 2003,堆溢出及其利用技术深入研究,作者:,FlashSky,日期:,2003-12-26,感谢,安全焦点所有的成员与启明星辰积极防御实验室的同事,主讲目录,WINDOWS,堆结构简介,WINDOWS,堆溢出利用,WINDOWS 2003,堆溢出保护,WINDOWS 2003,堆溢出保护的弱点,思路的延续:弱点利用深入的讨论,思路的突变:更广泛的另类有效利用的手段,未来,WINDOWS 2003,堆溢出利用研究的方向,Copyright FlashSkyxfocus.org 2003,WINDOWS,堆结构简介(,1,),前言,WINDOWS 2003,,系统低层的安全性改进,本文的目的,当前关于,WINDOWS,堆的研究,WINDOWS,堆管理结构与管理特性的研究,WINDOWS,堆特性在堆溢出时的利用的研究,WINDOWS 2003,的堆特性的研究,Copyright FlashSkyxfocus.org 2003,WINDOWS,堆结构简介(,2,),WINDOWS,堆结构简介,堆与堆块,堆管理结构与堆块管理结构,堆的整体结构构架,Copyright FlashSkyxfocus.org 2003,Copyright FlashSkyxfocus.org 2003,堆管理结构块,(,SIZE,:,0X640/0XC50,),堆段表块,0,(,SIZE,:,0X40,),小堆块分配管理表结构,(,SIZE,:,0X1818,),可选,用户堆块数据区,堆的基地址,一般紧接着堆管理结构块之后,WINDOWS,堆结构简介(,3,),WINDOWS,堆块分配与释放的管理,大堆块对象与小堆块对象,空闲堆块双向链表头,空闲大堆对象与空闲小堆对象入链算法,Copyright FlashSkyxfocus.org 2003,WINDOWS,堆溢出利用(,1,),基本原理,常见的普通利用方式:,引起空闲堆组成的双向链表的脱链的操作,Copyright FlashSkyxfocus.org 2003,Copyright FlashSkyxfocus.org 2003,NextP2,PrevP0,NextP3,PrevP1,NextP4,PrevP2,NextP3/PrevP3,NextP2/PrevP2,NextP1/PrevP1,NextP3,PrevP0,NextP3,PrevP1,NextP4,PrevP1,一个正常的堆块脱链表过程,WINDOWS,堆溢出利用(,2,),双向链表的入链利用的可能性,可利用的原理,利用的要求,Copyright FlashSkyxfocus.org 2003,NextP3,PrevP0,NextP3,PrevP1,NextP4,PrevP1,NextP3/PrevP3,NextP2/PrevP2,NextP1/PrevP1,NextP2,PrevP0,NextP4,PrevP1,UNKN,UNKP,NextP3,PrevP1,NextP2,PrevP0,NextP4,PrevP2,一个正常的大堆块插入入链表过程,Copyright FlashSkyxfocus.org 2003,WINDOWS,堆溢出利用(,3,),覆盖空闲大堆可以达到的目的:,我们能将一个当前释放堆的地址填入到一个由我们指定的内存地址中,Copyright FlashSkyxfocus.org 2003,NextP3,PrevP0,NextP4,PrevP1,NextP3,PrevP0,JMP,TSEHP,TSEH,NextP3,PrevP0,JMP,NextP2,NextP2,NextP3,SEHP,TOPSEH,TOPSEH,一个利用大堆块插入入链表的过程,NextP3/PrevP3,NextP1/PrevP1,NextP2/PrevP2,Copyright FlashSkyxfocus.org 2003,WINDOWS,堆溢出利用(,4,),入链表利用的进一步,问题:当前释放堆块地址的前,8,字节内容是我们无法控制的指针价值。,解决方法:再次分配时候可以将我们可以控制的,4,字节写入,Copyright FlashSkyxfocus.org 2003,Copyright FlashSkyxfocus.org 2003,NextP3,PrevP0,JMP,NextP2,NextP2,JMP,SEHP,NextP3,PrevP0,JMP,NextP2,NextP2,JMP,SEHP,TOPSEH,JMP ADDR,触发异常,利用分配再次写入,JMP,代码到头四字节,WINDOWS,堆溢出利用(,5,),WINDOWS,堆溢出可以利用的途径,脱链表时,入链表时,Copyright FlashSkyxfocus.org 2003,WINDOWS 2003,堆溢出保护(,1,),基于堆溢出利用原理的检查,基于覆盖双向链表的地址导致可写入任一地址空间,检查上下链表的一致性可以检查和防止堆溢出的利用,Copyright FlashSkyxfocus.org 2003,Copyright FlashSkyxfocus.org 2003,lea ecx,esi+8,mov edi,ecx,mov ebp-0D8h,edi,mov eax,esi+0Ch,mov ebp-94h,eax,mov edx,eax,cmp edx,edi+4,jnz loc_77F36DE1,cmp edx,ecx,jnz loc_77F36DE1,mov eax,edi,mov edi+4,eax,WINDOWS 2003,的检查的代码,WINDOWS 2003,堆溢出保护(,2,),简单而言,其要求就是,被处理的当前堆块的管理结构的双向链表的下一个堆块指针与上一堆块指针要满足如下条件:,1.,当前堆块的下一个堆块指针指向的堆块的上一个堆块指针要等于当前堆块的地址,2.,当前堆块的上一个堆块指针指向的堆块的下一个堆块指针要等于当前堆块的地址,Copyright FlashSkyxfocus.org 2003,WINDOWS 2003,堆溢出保护(,3,),普通饶过的困难,需要构造这样的条件需要准确的知道当前堆块的地址,然而往往当前堆块的地址我们不可知。,同时我们需要改写的有效的内存地址如,SHE,,,RET ADDR,,,TOP SHE,,,FUNC HANDLE,等周围的内容我们不可控制,Copyright FlashSkyxfocus.org 2003,WINDOWS 2003,堆溢出保护的弱点与问题(,1,),保护的范围,跟踪所有的利用途径,发现:,WINDOWS 2003,只对出链表的路径做了完善检查,缺乏对入链表路径利用的检查。,构造满足入链表攻击的条件就能成功修改一个特定内存的值为释放堆块的地址。,MS,遗漏检查的原因?,Copyright FlashSkyxfocus.org 2003,WINDOWS 2003,堆溢出保护的弱点与问题(,2,),检查的逻辑,逻辑上,并不能真正保证 检查的正确性。,某种含义上,我们还是能欺骗这种保护,如果我们能找到一种有普遍意义的特殊的利用形式,我们也能饶过检查。,Copyright FlashSkyxfocus.org 2003,思路的延续:遗漏检查利用深入的讨论(,1,),新的困难,无法使用分配的过程再次写入,JMP CODE,,这样头,8,字节我们无法控制其内容,引起,SHELLCODE,执行的异常或失败。,因为分配路径做了完整的保护检查。,Copyright FlashSkyxfocus.org 2003,Copyright FlashSkyxfocus.org 2003,NextP3,PrevP0,JMP,NextP2,NextP2,NextP3,SEHP,TOPSEH,无法满足检查的条件,思路的延续:遗漏检查利用深入的讨论(,2,),期待于运气?,再次的推导:构造的欺骗,如果我们能知道堆块的准确地址,是否可以构造欺骗?,为什么这里能构造欺骗而前面不能?,演示:一个构造欺骗写入,JMP,的实现,Copyright FlashSkyxfocus.org 2003,思路的延续:遗漏检查利用深入的讨论(,3,),新的发现与困境,一个可以满足检查的堆块的脱链操作将再次改写,SEH,Copyright FlashSkyxfocus.org 2003,Copyright FlashSkyxfocus.org 2003,NextP3,PrevP0,JMP,NextP2,NextP2,NextP3,SEHP,TOPSEH,如果我们能让这个堆块进行脱链表操作又如何?,Copyright FlashSkyxfocus.org 2003,NextP2,PrevP0,JMP,SEHP,NextP3,NextP3,SEHP,TOPSEH,这时异常会有什么结果?,思路的延续:遗漏检查利用深入的讨论(,4,),双堆块释放的触发,一个可以满足检查的堆块的脱链操作将再次改写,SHE,指向我们原来的被覆盖的堆块(而不是当前释放的堆块),而这里的头,4,字节是我们可以控制的内容。,演示:双堆块释放二次重写,TOP SHE,的实现利用,Copyright FlashSkyxfocus.org 2003,思路的延续:遗漏检查利用深入的讨论(,5,),更深入一步:,利用次序,在非双堆块释放环境下构造双堆块释放的环境,演示:构造双堆块释放的实现,限制条件汇总,Copyright FlashSkyxfocus.org 2003,思路的突变:更广泛的另类有效利用手段(,1,),不能满足于覆盖空闲大堆块的苛刻条件,我们需要再求新的思路,转换一下思路,构造欺骗用于新的利用形式:,思路的来源,Copyright FlashSkyxfocus.org 2003,思路的突变:更广泛的另类有效利用手段(,2,),一种利用的转换,与堆栈,/,数据区的结合,甚至可以用于制造空闲大堆块覆盖的条件,Copyright FlashSkyxfocus.org 2003,思路的突变:更广泛的另类有效利用手段(,3,),演示:一个将堆溢出转化为数据区溢出利用的实现,限制条件汇总,Copyright FlashSkyxfocus.org 2003,未来,WINDOWS 2003,堆溢出研究的方向,Copyright FlashSkyxfocus.org 2003,Thanks!,Q/A,QeNbK8G5D2A-x*t$qZnVkShPdMaJ7F4C0z)w&s!pYmUjRfOcL9H6E3B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u$rZoWkTdMaI7F3C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u$rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlTiQeNbK8G5D1A-x*t$qZnVkSgPdMaI7F4C0z)v&s!pXmUjRfOcK9H6E2B+y(u%r#oWlThQeNbJ8G5D1A-w*t$qYnVkSgPdLaI7F3C0z)v&s#pXmUiRfOcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v&s#pXlUiRfNcK9H5E2A+x(u$rZoWkThPeMbJ7G4D1z-w&t!qYmVjSgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkThPeMaJ7G4C1z-w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oXlTiQeNbK8G5D2A-x*t$qZnVkShPdMaI7F4C0z)w&s!pXmUjRfOcL9H6E2B+y(u%r#oWlThQeNbJ8G5D1A-w*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI6F3C0y)v&s#pXlUiRfNcK9H5E2B+x(u$rZoWkThQeMbJ7G4D1z-w*t!qYmVjSgOdLaI6F3B0y)v%s#pXlUiQfNcK8H5E2A+x*u$rZnWkThPeMaJ7G4C1z-w&t!pYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNbK8H5D2A+x*u$qZnWkShPeMaJ7F0y)v%s#pXlUiQfNcK8H5E2A+x*u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjRgOdL92B+x(u$rZoWkThQeMbJ7G4D1z-w*t!qYmVjSgOdLaI6F3B0y)v%s#pXlUiQfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNbK8H5D2A+x*u$qZnWkShPeMaJ7F4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C0z)w&s!pYmUjRfOcL9H6E3B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qZnVkSgPdMaI7F4C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfOcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4D1z-w&t!qYmVjSgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8H5D2A-x*qYmVjSgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlTiQeNbK8G5D1A-x*t$qZnVkShPdMaI7F4C0z)w&s!pXmUjRfOcL9H6E2B+y(u%r#oWlThQeNbJ8G5D1A-w*t$qYnVkSgPdLaI7F3C0z)v&s#pXmUiRfOcK9H6E2B+x(u%rZoWlThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI6F3C0y)v&s#pXlUiRfNcK9H5E2A+x(u$rZoWkThPeMbJ7G4)v&s!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI6F3C0y)v&s#pXlUiRfN8G5D1A-x*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI6F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u$rZoWkThQeMbJ7G4D1z-w*t!qYmVjSgOdLaI6F3B0y)v%s#pXlUiQfNcK8H5E2A+x*u$rZnWkThPeMaJ7G4C1z-w&t!qYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNbK8H5D2A+x*u$qZnWkShPeMaJ7F4C1z)w&t!pYmUjRgOcL9I6E3B+y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C0z)w&s!pYmUjRfOcL9H6E3B+y(u%r#oWlTiQeNbJ8Gz)w&t!pYmUjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C0z)w&s!pYmUjRfOcL9H6E3B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qZnVkSgPdMaI7F4C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjSgOdL9I6F3B0y%rZoWkThQeMbJ8C0z)v&s!pXmUjRfOcK9H6E2B+y(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVkSgPdLaI7F3C0z)v&s#pXmUiRfOcK9H5E2B+x(u%rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK9H5E2A+x(u$rZoWkThPeMbJ7G4D1z-w&t!qYmVjSgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z-w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2&t!qYmVjSgOdL9I6F3B0y)v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkThPeMaJ7G4C1z-w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9I6E3B+y(v%r#oXlTiQeNbK8G5D2A-x*t$qZnVkShPdMaI7F4C0z)w&s!pXmUjRfOcL9H6E2B+y(u%r#oWlThQeNbJ8G5D1A-w*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK5D2A-x*t$qZnVkShPdMaI7F4C0z)w&s!pXmUjRfOcL9H6E2B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeMbJ8G4D1A-w*t!qYnVjSgPdLaI6F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u$rZoWkThQeMbJ7G4D1zs!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeMbJ8G4D1A-w*t$qYnVjSgPdL6E3B+y(u%r#oWlTiQeNbJ8G5D1A-x*t$qYnVkSgPdMaI7F3C0z)v&s!pXmUiRfOcK9H6E2B+x(u%rZoWlThQeNbJ8G4D1A-w*t$qYnVjSgPdLaI7F3C0y)v&s#pXmUiRfNcK9H5E2B+x(u$rZoWkThQeMbJ7G4D1z-w*t!qYmVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjRgOdL92B+x(u$rZoWkThQeMbJ8G4D1z-w*t!qYnVjSgOdLaI6F3C0y)v%s#pXlUiRfNcK8H5E2A+x(u$rZnWkThPeMbJ7G4C1z-w&t!qYmVjRgOdL9I6F3B0y(v%s#oXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnVkShPdMaJ7F4C1z)w&sXlUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%r#oXlTiQfNbK8G5D2A-x*u$qZnWkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlPeMaJ7G4C1z)w&t!pYmVjRgOcL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkShPdMaJ7F4C1z)w&slUiQfNcK8H5D2A+x*u$rZnWkShPeMaJ7G4C1z)w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkShPdMaJ7F4C1z)w&s!pYmUjRgOcL9H6E3B+y(v%r#oWlTiQeNbK8C1z-w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkShPdMaJ7F4C1z)w&s!pYmUjRK8H5E2A+x*u$rZnWkThPeMaJ7G4C1z-w&t!pYmVjRgOdL9I6E3B0y(v%s#oXlTiQfNbK8H5D2A-x*u$qZnWkOdLaI6F3B0y)v%s#pXlUiQfNcK8H5E2A+x*u$rZnWkThPeMaJ7G4C1z-w&t!pY,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服