能力值:
( LV6,RANK:90 )
|
-
-
2 楼
楼主不是故意给你抬杠, 既然楼主已经把failwest的书看完了,关于通用性的问题应该就清楚了吧
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
问题一:
最近在学习exploit编写。学习了《Exploit 编写系列教程第一篇.pdf》,根据提示做试验。经过几天的折腾最终调试出来了。但拷贝到其他计 算机上运行失败。跟踪一下发现是由于返回地址覆盖不一样的结果。请问对于同一个软件漏洞针对不同的环境exploit通用性是如何做到的?
答案: 2楼说的正确,你确实没好好看书,不同语言系统,甚至不同sp的情况下,有一些跳转地址都是一样的,所以可以构造比较通用的,比如通用的跳转JMPESp,poppoppopret,还有一些页码地址也是通用的。
问题二:
同时希望大家推荐基本关于exploit,shellcode和漏洞挖掘技术讲解比较深入,好的教材。可以是电子资源,也可以是书籍,failwest的 书我已看完就不用推荐了哈。
小弟不胜感激!
答案:failwest的书看完 ,我也看完了,但为了巩固,建议你多看几次,练习多做几次,然后可以看看xfocus的网络渗透技术。
|
能力值:
( LV4,RANK:50 )
|
-
-
4 楼
我是通过jmp esp实现的。但是把jmp esp的地址覆盖到返回地址上也会根据具体环境而定啊。我的就是这个问题搞不定。呵呵。
|
能力值:
( LV17,RANK:1820 )
|
-
-
5 楼
先说明一下,《Exploit 编写系列教程》是基于windows XP 操作平台的
|
能力值:
( LV4,RANK:50 )
|
-
-
6 楼
我的环境就是xp sp3,但同学的还是xp sp3。跨操作系统那是很难的。
|
能力值:
( LV6,RANK:90 )
|
-
-
7 楼
不知道你用的是哪个地址,有时间的话可以试试看0x7E413A44,看看这里是不是user32.dll(xp sp3)的jmp esp地址呢?
如果不行,再看看:
0x7c9d30d7
补充:真正非常通用的地址是比较难找的,用系统dll中的jmp esp地址,当然它会更加固定和精确,但会与系统版本有关。
PS:曾经有一个中文版(中文版!)2000/xp/2003通用地址0x7ffa4512,这个在xp sp3上是不是有效俺不清楚,因为俺没用过xp:(
BTW:你的文章标题其实应该修改一下
exp通常指“漏洞的利用程序或方式、方法”,这个“漏洞”种类很多;你所说的exp,我理解大概是“缓冲区溢出漏洞利用程序”,这个“漏洞”是有定语的,有限制条件的,因此有点狭隘了;举个例子,比如你发现一个被广泛使用的web app存在一个表单绕过漏洞(缺陷),你写了个脚本来利用它,你这个脚本绝对可以称为exp,但这个exp不会面临你所说的“返回地址覆盖”的问题;如果你的标题改为“溢出exp编写中返回地址覆盖的通用性问题(基于XP SP3环境,选择JMP ESP方式)”,个人感觉会更精确和严谨。至少我看到你的标题觉得太宽泛了——exp的通用性,这个问题牵扯的话题就太多太多了。
不知道有没有用,希望有点帮助吧,有说错的地方,请大家多批评指教!
关于推荐的阅读资料,我觉得你看的那些已经很经典了啊,看雪翻译的这一系列教材,也非常好啊,而且作者非常仔细、严谨,写得文章很详细,这些都是值得反复阅读体会的,再剩下的,就是开动脑筋、锻炼思维、培养思路等问题了。你这个问题也就演变成:如何在XX环境下,寻找通用jmp esp地址?或者,除了jmp esp之外,还有什么更好的方法让溢出程序顺利跳转到我们的shellcode?等等……那就更像方法论的问题,至少是思路相关的问题啦。
|
能力值:
( LV4,RANK:50 )
|
-
-
8 楼
我用的是0x77d8508c。我的标题好像是写宽了点。呵呵
下次一定写准确点。
对大家提出的问题和意见。我这些过了哈!
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
mark一下,failwest是什么?
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
0 day 软件漏洞一书的作者ID,好像看雪的
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
这是作者书的链接,还是看雪上面的
http://bbs.pediy.com/forumdisplay.php?f=95
|
|
|