




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、简析逆向逆向工程大家谈论文格式范例 内容导读:常用手段。美军一架RQ-170隐形无人机被伊朗截获,一些美高官忧心忡忡。据俄罗斯军事工业综合体网站报道,如果中国能够接触到伊朗手中的美制RQ-170隐形侦察机,那么就很有可能会通过逆向工程学的方法获取美国人的绝密技术,找到对付方法并可能复制其关键技术,甚至仿制成品。这一新闻事件的反复炒作,也使逆向工程这个物理学中的中 在上期亦正亦邪反编译中,我们主要讨论了反编译技术,这仅仅是逆向工程的一种。在工程和技术领域,逆向工程的运用非常普遍,而且大部分都合理合法。由于逆向工程是一种由结果来推导出实现方法和原始材料
2、的过程,因而其技术难度可能更大,当我们真正走进逆向工程领域,才会发现它不可低估的技术含量。在3D建模中就常用到逆向工程。一般的工业建模是根据模型参数来生产实物,而它的逆向工程可以把其他厂家的或者手工制作的实物还原为模型文件,汽车制造类的厂家不可避免地都要使用。因为很多时候,产品的模型不能凭空在电脑上设计出来,而是根据现有的实物经过各种变形和实验测试后确定下来的。要把这些经过实践检验认为是最好的结构形态批量生产出来,就需要根据实物来建立模型,这就需要逆向工程。在机械摘自:本科毕业论文评语制造领域,CAD、CAM、CAE等必不可少,经常要根据现有物理部件来构建3D模型。为此,有时还需要专门的逆向工
3、程软件来完成这些工作,如Imageware、Geomagic Studio、CopyCAD、RapidForm、UG等。通过结构光源转换、三维坐标测量、X射线断层成像、3D扫描等技术,可以方便地对真实对象进行尺寸测量,形成顶点信息,进一步生成3D模型。像雕塑、模具之类的物体,用3D扫描后很快就能批量生产,这也给了山寨产品一个可以完美仿效的空间。设想一下,如果3D扫描和3D打印相结合,那结果就不敢想象了。在电子行业,PCB抄板与IC解密已经非常流行。在已经有电子产品实物和电路板实物的前提下,利用反向研发技术手段对电路板进行逆向解析,可以将原有产品的PCB文件、BOM(物料清单)、原理图等技术文件
4、以及PCB丝印生产文件进行还原,进而完成PCD制板、元件焊接、电路调试,直至生成原电路板样板,这就是“抄板”。而对于集成块、智能卡以及单片机,可以层层刮掉用电子显微镜拍照,甚至借助设备直接复制烧录在其中的程序文件,或提取关键代码,完成芯片解密。对于这类逆向工程,法律上的阻止已经显得力不从心。从机械工程、电子线路,到美术雕塑、音乐制作,逆向工程都有用武之地。音乐行业的“扒带”(根据音乐来扒出乐谱),就是一种逆向工程,但一般都是靠人工进行,而且需要有敏锐的听觉,对音乐修养和水平都有较高要求。刘宗凡:走近逆向工程逆向工程源于商业及军事领域中的硬件分析。其主要目的是,在不能轻易获得必要的生产信息下,直
5、接从成品的分析,推导出产品的设计原理。即对一项目标产品进行逆向分析及研究,从而演绎并得出该产品的处理流程、组织结构、功能性能规格等设计要素,以制作出功能相近,但又不完全一样的产品。系统工程是通过对事物的排列与组合,提高其整体效益。而逆向工程则是按照与系统组织的相反方向,将其由系统到要素、由大至小一件件地拆卸开,分析各要素、各部件的结构原因、生成原理及成型过程中的成功思路,再结合自己的实际,对其进行必要的调整和改进,进而形成新的系统。如果说系统工程强调综合就是创造,那么逆向工程追求分解也是创造,也可以说是一项对现有成熟技术进行二次开发和深度加工的再创新工程。运用逆向工程破解难题,就是通过解剖麻雀
6、,把复杂的结构条理化、系统的工程清晰化,进而收到寻根探源、破题求解、复制创造之效。逆向工程从应用范围来看,可以分成硬件和软件两大部分。硬件的逆向工程主要在机械制造领域应用广泛,特别是在军事上的应用非常普遍。众所周知的原因,各国的尖端武器都是绝密资料,通过逆向工程来分析、了解、仿制、改进,成为发展中国家赶上先进国家的一个常用手段。美军一架RQ-170隐形无人机被伊朗截获,一些美高官忧心忡忡。据俄罗斯军事工业综合体网站报道,如果中国能够接触到伊朗手中的美制RQ-170隐形侦察机,那么就很有可能会通过逆向工程学的方法获取美国人的绝密技术,找到对付方法并可能复制其关键技术,甚至仿制成品。这一新闻事件的
7、反复炒作,也使逆向工程这个物理学中的中性词,一时热门了起来。一些国外媒体看到中国花样翻新的“克隆”或者“山寨”技术,将中国捧为“逆向工程大国”。但有关中国专家认为,逆向工程并不像媒体说的那样简单,成本甚至比自己研制还大(但研发时间可能缩短),隐形飞机制造工程尤其复杂,当残片遭到一定程度的物理破坏后,想准确判断材料本身都很困难。即便是逆向仿制工作,也不是哪个国家想做就可以随便做的。没有自身的技术创新,没有一支可靠有效的掌握高新技术的科研队伍,即便是逆向仿制也是步履维艰。在软件领域,逆向工程也很普遍。例如,公司购买的软件都是没有原程序的,如果要在原有基础上修改、改进某些功能,就可以通过逆向工程来实
8、现。软件的逆向工程可分通过反编译、反汇编和动态跟踪等方法来实现。反编 译不是简单地实现程序的还原,而且要倒推出设计思想、数据结构、算法等,使得原始程序实现可维护化。在汇编语言中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言。可以看出机器语言和汇编语言是可以对应起来的,所以反汇编是所有程序都可以实现的。当然,汇编语言相对来说阅读比较困难,要和现在流行的面向对象的程序对应起来更是非常困难,所以反汇编更加适合于小型的、核心的应用。动态跟踪技术最常用于协议逆向工程,特别适用于设备驱动程序的逆向
9、工程。邱元阳:再谈反编译软件的逆向工程最常见的还是反编译。但反编译需要有针对性,不可能把随意的一个EXE文件反编译成一个SWF或FLA文件,也不可能随意把一个EXE文件反编译成某种语言的源程序。当然,任意可执行文件的反汇编还是可能的。要防止程序被反编译,一个思路就是让别人无法知道它是在什么环境下编译的。除了使用不常见的编译环境外,程序加壳也会增加反编译的难度。
10、; 另外,有些开发环境下编译的程序源于:毕业设计论文格式目前还没有相应的反编译工具,如在Director、Authorware下生成的作品要反编译就非常困难。文本文档有时也是要保护的对象,它们可能会被重新生成各种不同的格式,这也可以看作是一种编译过程,最常见的是生成PDF格式。这样,一方面保证了文本文档不被篡改,另一方面也规范了文档的显示和阅读方式。然而很多时候,我们还是需要将一些PDF文档“反编译”成DOC等原来的格式。AnyBizSoft PDF C
11、onverter是一个专业的PDF转换器,支持将PDF转换为Word(doc/docx)、PowerPoint(ppt/pptx)、Excel(xls/xlsx)、HTML、TXT等格式,对中文字符的支持性良好,能够保存原有PDF的页面布局、图片、超链接等信息,对于加密或密码保护的PDF文件也能轻松转换。很多用其他软件无法转换的PDF文件,用AnyBizSoft PDF Converter却能搞定(如图1)。需要说明的是,有些扫描版的PDF文件,里面的文字其实是图片格式的,转换后仍然是图片,无法直接转换成文字。需要将它们也转换成文字时,还需要借助OCR(光电字符识别)工具进行,如汉化OCR、C
12、AJView OCR版阅读器等。实际上,如果仅仅是要编辑PDF文件,可以使用PDF文件编辑器,如Foxit PDF Editor,就是一个真正的PDF文件编辑软件,具有所见即所得的编辑功能,并能在PDF和Windows应用程序间复制粘贴文本和图像。此外,Word的DOC文档也逐渐被用来进行文档传输,近年来在政府部门下发红头文件的电子文档时就常用到。只是这些Word文档采用了IRM(信息权限管理)机制进行保护,其内容是禁止复制和编辑的,甚至根本无法选中内容。对于这些受到编辑权限保护的文档,可以另存为.rtf文件,用写字板打开,重新保存,再用Word打开,即可编辑修改。刘树明:程序逆向分析示例这里
13、以反编译难度较大的C+程序为例,说明软件逆向分析的方法和过程。1.运行时界面分析分析目标:分析和监视软件运行时产生的窗口类型。现在的各种软件很少全盘自己编写相关代码,或多或少都使用了一些第三方开源代码,并且采用这些代码的时候,很少对其中的封装类进行修改,所以监测到相关界面的类名称就显得非常有意义了,因为我们查到它使用了哪些类后,就可以查找相关的开源代码,轻松绕过反编译软件的难关。这项工作可以使用VC自带的工具spy+进行。spy+还能监测到软件的控件句柄、消息传递等。我们借助它了解到这些信息后,可以另外写程序向相关窗口发送消息,冒充用户人工使用软件,也就是通常我们常说的外挂。针对游戏软件的外挂
14、程序比较多见,利用外挂,我们可以实现自动玩游戏,如果再向游戏窗口发送SW_HIDE消息,则还可以隐藏游戏窗口,达到“后台挂机”的目的。现在网上流行的QQ聊天记录导出软件,就是直接向QQ发送相关消息,冒充用户手工操作,在QQ登录运行的情况下导出其个人的聊天记录,绕过以前的破解QQ本地聊天记录加密难题。2.反汇编跟踪调试通过这个办法可以了解到软件的功能和运行流程, 再另外编写高级语言程序实现相同功能。以调试Google Chrome浏览器为例。先运行Chrome浏览器,再打开Visual studio C+,选择“工具附加到进程”,界面如图2所示。选择Chrome进程,我们可以看到Chrome为每
15、个窗口生成了一个进程,如果打开了多个窗口,则有多个进程,如果只打开一个窗口,就只有一个进程,我们随便选择一个进程即可。附加上去后,可以看到它的反汇编代码,可在汇编程序的任意位置设置断点,程序运行到断点处会自动激活VC+,进程停在断点处,这时可以按F10和F11进行单步调试跟踪它,并且可以根据调用堆栈来快速定位各个功能模块,大体绘制出程序的功能模块构成图,软件界面如图3所示。3.相关动态链接库分析DLL Export Viewer是一个动态链接库分析软件,利用它可以查看到DLL文件里面的函数和接口名称,美中不足的是还不能确定函数参数类型,但我们看到函数名称后,基本上都能猜出它的功能,另外我们还可
16、以配合上面介绍的反汇编调试方法来获取一些信息。4.黑盒分析这一分析是指把软件完全当成一个黑盒,通过控制对软件的输入数据构造,并对输出数据进行分析来了解它的算法。黑盒分析在某些情况下也是非常有用的,著名的第三方QQ软件Lumaqq,就是清华大学计算机系的一个学生用腾讯官方QQ做黑盒分析后写出来的QQ客户端软件,这个软件在2008年以前不但具备QQ的所有功能,有些功能甚至做得比官方的更好,而且一直跟随官方升级相关功能,并且将所有的源码完全开放!5.数据抓包分析对于网络软件的逆向工程,数据抓包就显得非常重要了。尽管软件内部结构和逻辑对逆向工作者来说是不可见的,但是它始终是要通过网络跟服务器端交换数据
17、,我们将这些数据拦截下来后进行分析,可以了解到非常多的信息,包括它是采用什么网络协议和服务器端进行数据交换的?数据包是如何进行封装的?发送给服务器端的数据是否进行过预处理?网络接口的地址是什么?相关的参数名称是什么?这些问题都可以通过拦截数据包得到答案。常见的网络抓包软件主要有MiniSniffer、WSockExpert等。刘宗凡:展望逆向工程逆向工程包括形式反求、工艺反求和材料反求等几个方面。在机械领域的实际应用中,主要包括以下几个方面:对已有零件的复制,再现原产品的设计意图;当原始设计不可得时,用于对已有产品的改型或仿型设计;在设备维修中对个别损坏或磨损零件的复制;在美学设计特别重要的领域,通常采用真实比例的木制或泥塑模型来评估设计的美学效果,再通过逆向工程进行设计;当设计需要实验才能定型的工件模型时,通常采用逆向工程的方法。例如,在航天航空领域,为了满足空气动力学等要求,需要进行风洞实
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 民爆企业安全生产培训课件
- 民法总则课件律师
- 初中选班考试题目及答案
- 新质生产力教育发展中心
- 语文教研组工作方案
- 小学庆祝教师节活动方案
- 清明节小学教育活动方案
- 民族纹样简笔画课件
- 民族法的实施课件
- 民族文艺课件
- DL∕T 1804-2018 水轮发电机组振动摆度装置技术条件
- 新版学校班主任工作手册模板
- HG-T 5367.5-2022 轨道交通车辆用涂料 第5部分:防结冰涂料
- 国家公祭日成品课件
- 原油加工承揽合同
- QCT268-2023汽车冷冲压加工零件未注公差尺寸的极限偏差
- 八年级下册英语补全对话及答案
- 大便失禁课件
- (正式版)QBT 8003-2024 化妆品用原料 水杨酸
- 【大数据“杀熟”的法律规制探究17000字(论文)】
- 麻醉不良事件上报流程
评论
0/150
提交评论