[讨论]学习溢出中遇到的一个问题
[讨论]学习溢出中遇到的一个问题议题作者:achillis
信息来源:邪恶八进制信息安全团队([url=http://www.eviloctal.com/]www.eviloctal.com[/url])
小弟初学溢出,在分析一个比较简单的栈例子时出已经定位了溢出点。
使用经典的'AA....A'+jmp esp+shellcode填充方法已经可以执行自己的"shellcode".
但是,因为这个溢出原因是文件路径超长引起的,使用的shellcode必须不能出现非法字符。
问题就在于,在这种字符要求下,我如何执行真正的shellcode?即编码问题如何解决?
详细情况我画个图.
因为是文件名过长溢出,总长度有259字节。前面有206个字节可以自己填充,中间是4字节的jmp esp,后面还有49个字节可以得用。正确填充后,溢出时就会执行后面49字节的内容。如果我使用"CCCCC"(16进制为0x43)填充的话,可以被当成inc ebx执行。
但是,49字节太短,不能放置一个真正有实用功能的shellcode。记得看到别人的想法是把真正的shellcode放在别处,而在这里放一个search code,让它真正的shellcode并执行。
在我这个例子里面,我想这么搞:
把编码过的符合要求的shellcode放在前面的206字节中,在后面的49字节处只需要一个跳转,跳到这206字节的起始处开始执行就可以了。为了不出现非法字法,我使用了一段编码指令把shellcode编码为只含有字母和数字的,但是其解码头部就有52字节长,用来编码前面的shellcode可以,但是后面只有49字节就不行了。所以,我现在需要的是一个符合编码要求的跳转指令即可。但苦于找不到,所以到这里求助。
其它数据有:
溢出时esp=0013E5E8
缓冲区首址=0013E51A,
在esp后面有49个字节可以利用。
其它利用方法我也尝试过,ebx指向Unicode编码过的缓冲区,貌似可以call ebx.我参考了gyzy兄的《编写Unicode有效的shellcode 》(在此感谢gyzy兄的好文章),但是它的编码头部中有不符合文件名要求的特殊字符。所以后来还是利用jmp esp方法 。大家有其它什么方法指点下小弟也可。
附件
[img]http://forum.eviloctal.com/images/attachicons/image.gif[/img][url=http://forum.eviloctal.com/attachment.php?aid=10935¬humb=yes]未命名.JPG[/url] (13 KB)
2008-1-28 15:17
缓冲区分析
[img]http://forum.eviloctal.com/attachments/Mon_0801/58_63567_e7722ad460891de.jpg[/img]学习中.......
[url=http://wpa.qq.com/msgrd?V=1&Uin=344132161&Site=邪恶八进制信息安全团队技术讨论组&Menu=yes][img]http://forum.eviloctal.com/images/default/qq.gif[/img][/url]
帖子54 精华[url=http://forum.eviloctal.com/digest.php?authorid=63567]0[/url] 积分194 阅读权限40 性别男 在线时间12 小时 注册时间2006-9-10 最后登录2008-7-18 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=63567]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=32089&repquote=137801&extra=page%3D9&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=32089&pid=137801&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP [url=http://www.google.cn/search?q=兼职&client=pub-0204114945524753&forid=1&prog=aff&ie=UTF-8&oe=UTF-8&cof=GALT%3A#008000;GL%3A1;DIV%3A336699;VLC%3A663399;AH%3Acenter;BGC%3AFFFFFF;LBGC%3A336699;ALC%3A0000FF;LC%3A0000FF;T%3A000000;GFNT%3A0000FF;GIMP%3A0000FF;FORID%3A1&hl=zh-CN]赚更多的钱[/url]
[url=http://forum.eviloctal.com/space-uid-23097.html]plbb18[/url] [img]http://forum.eviloctal.com/images/avatars/pw/univer4.gif[/img]
晶莹剔透§烈日灼然 "我现在需要的是一个符合编码要求的跳转指令即可"---------->
1)编码有什么具体要求呢?
2)使用编码器会增大shellcode,可用空间有限,挑个具备简单功能的小shellcode吧;
3)CALL EBX 应该属于不错的选择,编码头部出问题,能否饶过去呢?
4)考虑一下类似jmp short * 的指令;
5)把shellcode汇编成ASCII码是否可行呢?
帖子6 精华[url=http://forum.eviloctal.com/digest.php?authorid=23097]0[/url] 积分18 阅读权限40 性别男 在线时间19 小时 注册时间2005-12-16 最后登录2008-5-27 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=23097]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=32089&repquote=138993&extra=page%3D9&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=32089&pid=138993&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP [url=http://www.google.cn/search?q=猎头&client=pub-0204114945524753&forid=1&prog=aff&ie=UTF-8&oe=UTF-8&cof=GALT%3A#008000;GL%3A1;DIV%3A336699;VLC%3A663399;AH%3Acenter;BGC%3AFFFFFF;LBGC%3A336699;ALC%3A0000FF;LC%3A0000FF;T%3A000000;GFNT%3A0000FF;GIMP%3A0000FF;FORID%3A1&hl=zh-CN]您知道您年薪应是多少?[/url]
[url=http://forum.eviloctal.com/space-uid-92612.html]neversaylove[/url] [img]http://forum.eviloctal.com/images/avatars/noavatar.gif[/img]
晶莹剔透§烈日灼然 前面还有209个MS可以利用,可以在jmp esp 后面写jmp -214试试
[url=http://wpa.qq.com/msgrd?V=1&Uin=12361629&Site=邪恶八进制信息安全团队技术讨论组&Menu=yes][img]http://forum.eviloctal.com/images/default/qq.gif[/img][/url]
帖子38 精华[url=http://forum.eviloctal.com/digest.php?authorid=92612]2[/url] 积分147 阅读权限40 性别男 在线时间108 小时 注册时间2007-3-18 最后登录2008-5-25 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=92612]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=32089&repquote=139106&extra=page%3D9&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=32089&pid=139106&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP [url=http://www.google.cn/search?q=鲜花预定&client=pub-0204114945524753&forid=1&prog=aff&ie=UTF-8&oe=UTF-8&cof=GALT%3A#008000;GL%3A1;DIV%3A336699;VLC%3A663399;AH%3Acenter;BGC%3AFFFFFF;LBGC%3A336699;ALC%3A0000FF;LC%3A0000FF;T%3A000000;GFNT%3A0000FF;GIMP%3A0000FF;FORID%3A1&hl=zh-CN]爱要怎么说出口[/url]
[url=http://forum.eviloctal.com/space-uid-63567.html]achillis[/url] [img]http://forum.eviloctal.com/images/avatars/pw/univer2.gif[/img]
晶莹剔透§烈日灼然 回复 沙发 plbb18 的帖子
我需要的就是符合编码要求的一个转移指令。
编码的唯一要求就是在长度不超出49的情况下符合文件命名的字符要求。
这导致有不少字符不能用啊,因为是在文件名中。
我就是因为原有的shellcode中有不符合文件命名要求的字符才选择编码,如果我有符合要求的shellcode,当然不会这么做了。
call ebx使用Unicode有效的shellcode同样面临这样的问题。解码头部也有不可用字符。
只要能以某种方式跳转到前面缓冲区开头,而又不出现非法字符,那么就达到目的了。
不晓得我说清楚了没有...学习中.......
[url=http://wpa.qq.com/msgrd?V=1&Uin=344132161&Site=邪恶八进制信息安全团队技术讨论组&Menu=yes][img]http://forum.eviloctal.com/images/default/qq.gif[/img][/url]
帖子54 精华[url=http://forum.eviloctal.com/digest.php?authorid=63567]0[/url] 积分194 阅读权限40 性别男 在线时间12 小时 注册时间2006-9-10 最后登录2008-7-18 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=63567]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=32089&repquote=139161&extra=page%3D9&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=32089&pid=139161&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP
[url=http://forum.eviloctal.com/space-uid-63567.html]achillis[/url] [img]http://forum.eviloctal.com/images/avatars/pw/univer2.gif[/img]
晶莹剔透§烈日灼然 回复 椅子 neversaylove 的帖子
我就是这么想的。可是跳转指令中有非法字符,不符合文件名要求。学习中.......
[url=http://wpa.qq.com/msgrd?V=1&Uin=344132161&Site=邪恶八进制信息安全团队技术讨论组&Menu=yes][img]http://forum.eviloctal.com/images/default/qq.gif[/img][/url]
帖子54 精华[url=http://forum.eviloctal.com/digest.php?authorid=63567]0[/url] 积分194 阅读权限40 性别男 在线时间12 小时 注册时间2006-9-10 最后登录2008-7-18 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=63567]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=32089&repquote=139162&extra=page%3D9&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=32089&pid=139162&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP [url=http://www.google.cn/search?q=DHC化妆品&client=pub-0204114945524753&forid=1&prog=aff&ie=UTF-8&oe=UTF-8&cof=GALT%3A#008000;GL%3A1;DIV%3A336699;VLC%3A663399;AH%3Acenter;BGC%3AFFFFFF;LBGC%3A336699;ALC%3A0000FF;LC%3A0000FF;T%3A000000;GFNT%3A0000FF;GIMP%3A0000FF;FORID%3A1&hl=zh-CN]让女孩一夜变的更有女人味[/url]
[url=http://forum.eviloctal.com/space-uid-23097.html]plbb18[/url] [img]http://forum.eviloctal.com/images/avatars/pw/univer4.gif[/img]
晶莹剔透§烈日灼然
页:
[1]