能力值:
( LV3,RANK:20 )
|
-
-
2 楼
好好把汇编,编程学号,别一开始就shellcode, 你执行成功一次,但不知道为啥成功
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
XP下搜到的 JMP ESP 通常是不变的
Win7下有ASLR 所以 OP CODE 地址和 API 地址 会小范围内随机化,
硬编码的就不行了,
解决方法:
去找没有开启ASLR的模块内的 JMP ESP 的地址,
尝试动态搜索 API 地址。
mov eax,fs:[30h] //;PEB的地址
mov eax, [eax + 0ch] //;Ldr的地址
mov esi, [eax + 01ch] //;Flink地址
lodsd
mov eax, [eax + 08h] //;eax就是kernel32.dll的地址
获得LoadLibrary GetProcAddress ,然后就行了。
|
能力值:
( LV6,RANK:90 )
|
-
-
4 楼
下了你的分析看了一下,既然你都用Windbg确定了漏洞触发的位置以及填写shellcode的位置,为什么不在更换目录时再次崩溃的时候再用windbg附加看看是什么原因呢?是因为更换目录后栈里字节没有对齐,ASLR,DEP没有绕过(你的分析里没有针对DEP构造ROP链)还是什么原因,另外这个m3u应该是个很老的漏洞吧,这个exploit的python只是最后攻击的结果,个人感觉新手学习应该从漏洞原理入手,而不是exploit,既然windbg轻松到达现场,那么何不回溯一下漏洞形成的原因呢?
|
能力值:
( LV3,RANK:20 )
|
-
-
5 楼
非常感谢你的回复,因为是新手,学完汇编之后没有方向,只好在看雪kssd中找个教程跟着做,很多知识都不知道 谢谢你给了我方向,嘿嘿,回去找找这方面资料。
|
能力值:
( LV3,RANK:20 )
|
-
-
6 楼
谢谢大神提点 一会跟跟试试
|
能力值:
( LV3,RANK:20 )
|
-
-
7 楼
多谢楼上的大神们提醒,给了思路,同时又接触到有用的知识点。
本菜鸟跟踪了一下代码,发现换个目录的m3u文件就不好使的原因就是路径问题。
本来在D盘好使,然后我放到桌面上,程序崩溃:
可以看到原因是程序在加载m3u中的文件数据先把文件的目录存到缓冲区中,由于
目录不同所以导致shellcode不同
如图,在d盘加载时候的缓冲区内容:
非常感谢楼上的大神给了本菜鸟思路。。。
|
|
|