解读西方诠释失败敬请关注《0day安全软件漏洞分析与利

上传人:艾力 文档编号:36575245 上传时间:2018-03-30 格式:PDF 页数:33 大小:413.33KB
返回 下载 相关 举报
解读西方诠释失败敬请关注《0day安全软件漏洞分析与利_第1页
第1页 / 共33页
解读西方诠释失败敬请关注《0day安全软件漏洞分析与利_第2页
第2页 / 共33页
解读西方诠释失败敬请关注《0day安全软件漏洞分析与利_第3页
第3页 / 共33页
解读西方诠释失败敬请关注《0day安全软件漏洞分析与利_第4页
第4页 / 共33页
解读西方诠释失败敬请关注《0day安全软件漏洞分析与利_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《解读西方诠释失败敬请关注《0day安全软件漏洞分析与利》由会员分享,可在线阅读,更多相关《解读西方诠释失败敬请关注《0day安全软件漏洞分析与利(33页珍藏版)》请在金锄头文库上搜索。

1、解读西方 诠释失败 敬请关注: 0day 安全:软件漏洞分析与利用 加密与解密 3 敬请关注敬请关注 2008 年“看雪”新书年“看雪”新书 0day 安全:软件漏洞分析与利用安全:软件漏洞分析与利用 failwest 加密与解密第加密与解密第 3 版版 kanxue 电子工业出版社电子工业出版社 看雪论坛倾力打造看雪论坛倾力打造 解读西方 诠释失败 敬请关注: 0day 安全:软件漏洞分析与利用 加密与解密 3 声明声明 本文曾发表于黑客防线本文曾发表于黑客防线2006 年第年第 10 期。看雪论坛为作者授权的唯一发布网站。期。看雪论坛为作者授权的唯一发布网站。 本文谨用于漏洞分析技术爱好者

2、学习研究 之用,转载请注明作者及引用看雪论坛相应 链接。本文谨用于漏洞分析技术爱好者学习研究 之用,转载请注明作者及引用看雪论坛相应 链接。 本文不得在作者未经许可的情况下以任何 形式用于任何赢利目的的组织、机构与培 训。本文不得在作者未经许可的情况下以任何 形式用于任何赢利目的的组织、机构与培 训。 解读西方 诠释失败 敬请关注: 0day 安全:软件漏洞分析与利用 加密与解密 3 深入浅出深入浅出 MS06-040 To be the apostrophe which changed “Impossible“ into “Im possible“ ! failwest 目录目录 前言. 4

3、 1 浅出篇. 5 1.1 逆向,永恒的主题. 5 1.2 IDA,迷宫的地图. 6 1.3 OLLYDBG,庖丁解牛. 10 1.4 shellcode DIY. 13 2 深入篇. 21 2.1 初识,RPC的玄机. 21 2.2 Hacking,远程攻击. 24 2.3 踏雪无痕,寄存器状态的恢复. 25 3 展望篇. 28 3.1 魔波,蠕虫现身!. 28 3.2 补丁,无洞可钻?. 29 附件清单. 32 解读西方 诠释失败 敬请关注: 0day 安全:软件漏洞分析与利用 加密与解密 3 前言前言 时至今日,网上已有颇多 MS06-040 的文章,其中不乏精辟之作。与其相比,本文突显

4、业 余,技术上无法超越,徒逞口舌之快。然而对于普通的学生和技术爱好者来说,离漏洞挖掘和利 用的路还是相当遥远的。回想自己当年拜读安焦和绿盟的文章时那种纵使滔滔的仰慕之情也无法 掩盖的抓狂的感觉,我决定还是基础一点,把给导师的漏洞分析报告写成了这么一篇实验教 程: ) 本文适合有一定计算机基础,初步了解溢出攻击原理,稍微了解逆向技术的朋友阅读。如果 您根据本文的指导亲手完成了全部的 7 节实验内容,相信您对栈溢出的掌握和漏洞利用的认识一 定会到一个更高的 level。 文章组织如下: 第一章主要讨论 MS06040 的溢出原理和本地溢出实验。其中:1.1 中介绍了本地溢出实验 的环境要求和 MS

5、06040 的一些基础知识;1.2 中结合反汇编代码对漏洞进行静态分析;1.3 中 结合动态调试进一步了解漏洞函数调用时的栈空间状态;1.4 中则手把手的教你制作自己的 shellcode,并完成对 MS06040 的本地溢出实验。 第二章主要讨论 MS06040 的远程利用实验。2.1 中介绍了 RPC 调用的一些基础知识,这 也是远程利用 RPC 系列漏洞的基础,有相关的分布式计算编程经验的朋友可以跳过这一节;2.2 中实现远程攻击;2.3 中进一步讨论从 shellcode 返回到正常程序时,寄存器状态恢复的问题,在 这一节中,我们将结束本文中的实验部分。 第三章在完成实验的基础上,做了

6、一些展望。3.1 中简介了利用 MS06040 传播的蠕虫病毒 魔鬼波以及学术界对蠕虫研究的概况;3.2 中结合从安全焦点技术峰会上听到的业界动向和自己 研究工作的体会,谈了一下我个人对漏洞挖掘这个领域的研究前景和研究价值的一些看法。 本文实验中涉及的所有细节均可重现,使用的源代码都已经过详细的注释附于附录之中。所 有代码都已调试通过,个别依赖于机器和操作系统版本的函数地址已在文章中特别指出,并指明 了计算方法。 如果您发现文章中的分析或代码有不妥之处,欢迎来信与我讨论MS06-040 及其他安全问 题。 ( ) 好了,现在让我们立刻去体会把“Impossible”变成“Im possibl

7、e”的那一撇是怎么画进 WINDOWS 里的吧。 解读西方 诠释失败 敬请关注: 0day 安全:软件漏洞分析与利用 加密与解密 3 1 浅出篇浅出篇 欲善其事,先利其器 思考许久,为了让更多的人能够享受到实验的乐趣,我还是决定用一些篇幅来介绍几个在本 章的实验中涉及到的逆向工具。没有工具的 hacker 如同没有枪的战士,欲善其事,先利其器! 1.1 逆向,永恒的主题逆向,永恒的主题 MS06040 打破了 RPC 系列安全问题许久的寂静,魔波的出现恰好戏剧性的给即将上市的 vistal 安全体系做了免费广告。 勿庸置疑,这是一个被犇人们玩了很久的 0day,发现漏洞的犇人肯定不会浮躁到写个

8、蠕虫 出来炫耀的。从技术角度看,真正应该引起关注的应该是漏洞而不是蠕虫。在学习的过程中找不 到第一手的漏洞资料一直困扰着我,想想在漆黑的夜里肯定还有无数和我经历类似,满腔热情但 却无从下手的做着黑客梦的朋友,我决定详细的分析下这个漏洞。 不巧由于参加安焦的 XCon 峰会耽误了一个星期,一圈玩回来,网上已经满是 MS06040 的 exploits 版本和介绍,几乎家喻户晓了。但我想,如果能够亲手分析调试一遍,走一下漏洞利 用的全部流程,不管是安全工作者还是学习黑客技术的发烧友,肯定都会受益匪浅的。 微软 POST 出的漏洞信息是没有技术细节的,一般都是几句简短的类似“XXXX 可能存在 允许

9、远程代码执行的漏洞”之类的话。光靠这些是没有办法利用,渗透,入侵,控制的。详细技 术资料其实是很难搜到的,因为那都是安全专家和 hacker 们辛苦的研究成果,当然今天讨论的 MS06-040 除外。要想第一时间研究和利用漏洞,你需要查出漏洞对应的补丁号,追查这个补丁 patch 了哪几个系统文件的哪几个部分,然后进行逆向分析。IDA 就有类似用途的比较 BIN 文件 差异的插件。 下面我们来关注 MS06-040。这个漏洞指的是 windows 系统的 DLL 文件 netapi32.dll 中的几 个导出函数在字符串复制时有边界检查的缺陷。本文的实验和分析都基于 WIN2000 SP4 版

10、本的 操作系统,它也是这个漏洞危害最严重的操作系统版本。 要获得这个 DLL 文件才有的玩。在 WIN2000 SP4 中,Netapi32.dll 位于系统目录 c:winntsystem32 下,大小为 309008 字节。如果你的系统已经打过补丁,则该文件会被补丁替 换 , 大 小 为309520字 节 , 原 先 的 漏 洞DLL会 备 份 到 系 统 目 录 下 的 c:winnt$NtUninstallKB921883$ 里。不管是从别人机器上拷贝还是在卸载目录下寻找,要完成 本章的实验,都需要得到这个 DLL 文件。当然为了方便您的研究和实验调试,我为您在本文的 附加资料中提供了

11、这个 DLL。 让我们来初步认识一下这个 DLL。用诸如 LordPE、PETools 之类的 PE 工具查看下导出表, 有 317 个导出函数,很多都是我们耳熟能详的调用。要想看看这个 DLL 应用有多广泛的话,可解读西方 诠释失败 敬请关注: 0day 安全:软件漏洞分析与利用 加密与解密 3 以用大名鼎鼎的 sysinternals 出品的 Process Explorer 查一下当前加载了这个库的进程,你会发现 什么 svchost、 service、winlogin,、lsass 之类的只要有网络操作的进程都会使用这个库。 MS06-040 实际上包含了 Netapi32.dll 中几个有溢出问题的函数,本文实验以目前讨论最多的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号