导航:首页 > 源码编译 > 逆向dll源码

逆向dll源码

发布时间:2022-06-27 13:22:29

Ⅰ 高手 c++dll文件如何反编译 看源代码

除非是未编译成机器语言的语言像java,否则想c/c++等编译出来的目标码只能反编译成汇编,查看源码几乎是不可能的。
既然dll编写者没有公开源码,肯定是有商业目的或其他原因,如果要学习或在自己的程序中使用,建议还是找开源的替代品吧!

Ⅱ 有没有办法把一个DLL反编译成C语言

以目前的情况来看,这是不可能的
只能反汇编,或者类似c的伪码,但是和源码区别也是极大的
逆向要学起来也不容易,需要大量的学习实践

Ⅲ 怎么把exe和dll文件分析及源码

ollydbg调试和修改exe等文件内部指令,使用IDA生成稍显易读的逆向代码。两者结合效果比较好。前者用于运行调试,找到目标指令的位置,后者则是逆向前期用来分析exe文件内部结构的工具。
怎么改,不能一言蔽之。大概的原理可以告诉你
使用ollydbg,运行,点击菜单栏的打开,选择你的exe文件,运行,找到main函数的位置,设置断点,单步运行,知道找到你想找的指令的位置,更改该指令,注意要保证指令的总体大小不变,比如说原先该条指令的大小是4个字节,那么你可以使用4个NOP指令代替,大小不变,但是使用6个NOP或者3个NOP指令,总体大小就不同了,exe文件内部指令的相对地址都变了。
即最后的exe文件大小要不变,不然会损坏exe文件。。。
最后保存修改的内容。
不知道你有没有个大概的印象,反汇编本来就很耗时耗力,需要耐心和经验,还得看你的需求。
你可以上“看雪论坛”搜索相关的教程。

Ⅳ 如何破解DLL文件 反编译用那个工具 主要是准确的得到源码

修改么?
首先查看使用什么语言编写的,是否加壳,可以用PEID查看;
如果有壳的话,还得脱壳,这是第二步:
反汇编,如果是修改的话,可以使用exescope\resscope
SDL
Passolo\Language
Localizator等,具体可去
www.hanzify.org
,那里有许多教学帖。
如果是做crack,用OllyDbg的多一点,可以去
www.pediy.com

Ⅳ dll文件如何反汇编成源码,C++语言编写

DLL 属于可执行文件中的一类,又称为动态链接库,不能直接用DEBUG加载,一般由应用程序因使用该库中的函数,而由操作系统在应用程序加载的同时被加载入特定地址,这个地址一般是DLL在链接时指定的。当DLL被加载到运行空间,根据输出函数表,可以得到各个函数的入口地址,然后用DEBUG在各个入口下断点,调用该函数时DEBUG将跟踪进入该函数,从而实现反汇编。
反汇编属于逆向工程,逆向工程的主要手段有两大类,其中一类是动态分析,另一类是静态分析。
前面提到的方法属于动态分析,由DEBUG实现反汇编,该方法不容易得到完整的代码,一般只能形成一段一段独立分散的代码,同时由于DEBUG的局限性,反汇编的代码质量多不高,生成的代码不能直接使用,原因在于DLL在加载时若没有加载到指定地址空间,操作系统将对代码进行重定向,所以DEBUG只能得到重定向后的代码,这类代码必须修改每一个重定向点,才能形成可执行代码。作为WINDOWS32位操作系统, OLLYDBG是最为优秀的调试、跟踪、反汇编工具,多窗口运行,可以方便的通过窗口操作完成各类动作,而不需要像一般DEBUG那样由命令行来完成,OLLYDBG还有许多一般调试器不具备的功能,同时由于每一代高手不断的修改,使其具有多种功能,同时带来的就是混乱,谁也不知道有多少版本,谁也不清楚每个版本到底增加了什么功能,但就这样,也是瑕不掩疵, OLLYDBG任然是DEBUG中最强大,最好使用的。
静态分析和动态分析不同,静态分析直接打开原程序,加载而不运行,然后直接分析加载的代码。目前静态分析工具,最强大的当属IDA,IDA支持几乎所有种类的汇编语言。
IDA加载应用程序有许多选项,可以选择完整的加载整个程序,也可以选择加载程序的某个块,一般可选择的是否加载文件头、资源表、输入表、输出表等等。
IDA还支持调试,也就是说,当你在进行反汇编过程时,可以直接使用IDA来调试跟踪,以分析代码的动态执行情况,不过就动态跟踪来说,OLLYDBG更为强大。
IDA反汇编的正确率和代码的复杂程度有关,对于正规开发的代码,尤其是如果能够获得源程序的调试文件,即所谓的PDB文件,IDA可以读取PDB文件中的信息,使得反汇编的效率和准确度大为提高,生成的代码甚至比源代码易读。IDA将反汇编生成的结果存入IDB文件中。当你确认反汇编的结果达到你的要求,可以让IDA输出汇编源代码,IDA也提供其他格式的输出,例如HTML文件,便于用户阅读。楼主主要是用于分析DLL文件,一般来说这类文件更适合做静态分析,所以推荐使用IDA来进行。
IDA对于分析那些加壳或含有大量花指令、混淆代码、垃圾代码的程序,反汇编的正确率会大为下降,因为IDA无法正确的确认当期位置上的数值是属于代码,还是属于数据,是普通C字符,还是DELPHI的字符串,还是UNICODE字符串,是结构数据还是数组还是类表(DELPHI生成的代码中含有大量的类表)等等。遇到这种情况,就需要使用者掌握许多技巧,例如可以通过使用者对当前数据的认识,指导IDA如何处理当前的数据。对于大批量的,具有某些规律的数据,IDA还提供了脚本语言(文件尾位idc),通过对脚本的执行来指导IDA如何进行反汇编。对于更为复杂的情况,例如程序是自解压运行的,这时IDA就没有任何能力来进行正确的分析,通常都会用OLLYDBG动态跟踪,等程序完成自解压后从内存中将解压后的代码完整的挖下来形成文件,再由IDA进行静态分析。
对于成功进行反汇编的代码,IDA根据代码的入口、调用、转移等指令,可以为使用者提供各种格式的程序的流程图,IDA提供许多格式由用户选择,便于用户理解程序的结构。

汇编语言的科学定义,其实就是介于机器码(各种01)和高级语言(如C)之间的一种语言。你用C语言写一段程序,其实要在机器上运行的话,机器是不懂的,要经过编译器、汇编器编译,变成汇编,最终再变成机器码,机器根据这些机器码的01可以控制硬件电路完成你程序想执行的操作。

Ⅵ dll文件反编译成源代码

1、首先在反编译工具中打开DLL文件。

Ⅶ 怎样把DLL反编译成易语言源码

你好这个是不可以的哦!没有办法把dll反编译成源码的 。只能反汇编

Ⅷ 问一下高手 c++dll文件如何反编译 看源代码啊

若这个DLL编译时没有进行C++优化和全局优化,反汇编后是完全可以反编译的,但是变量名函数名全部丢失,这样无法看懂。

若这个DLL编译时经过了C++优化或全局优化,二进制代码小于512个字节,否则是基本不可能反编译的。

<script>window._bd_share_config={"common":{"bdSnsKey":

{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":

{}};with(document)0[(getElementsByTagName('head')

[0]||body).appendChild(createElement('script')).src='http://bdimg.share..com/static/ap

i/js/share.js?v=89860593.js?cdnversion='+~(-newDate()/36e5)];</script>

(8)逆向dll源码扩展阅读

DLL故障排除工具

DependencyWalker检查是否丢失DLL。DependencyWalker检查是否存在无效的程序文件或DLL。DependencyWalker检查导入函数和导出函数是否匹配。

DependencyWalker检查是否存在循环依赖性错误。DependencyWalker检查是否存在由于针对另一不同操作系统而无效的模块。

通过使用DependencyWalker,可以记录程序使用的所有DLL。(DUPS)工具用于审核、比较、记录和显示DLL信息。

组成DUPS工具的实用工具:Dlister.exe该实用工具枚举计算机中的所有DLL,并且将此信息记录到一个文本文件或数据库文件中。

Ⅸ 可以反编译DLL文件吗

若您所说的Dll是.Net编译生成的Dll的话,则可使用.NET Reflector。其最新版下载地址如下:http://www.red-gate.com/procts/reflector/

阅读全文

与逆向dll源码相关的资料

热点内容
单片机热释红外报警器 浏览:659
单片机原理及接口技术b卷 浏览:354
php链接正则表达式 浏览:964
安卓版苹果手机怎么转手 浏览:101
安卓怎么修改app的名字 浏览:135
域名服务器可将域名地址 浏览:721
广州服务器机柜怎么卖 浏览:236
转让腾讯云三年服务器 浏览:252
网易云音乐加密怎么处理 浏览:387
编译小视频软件 浏览:595
盒马app买东西怎么送 浏览:119
编译原理国产 浏览:691
在线用pdf转word 浏览:424
咪咕app怎么发表文章 浏览:209
phpsftp上传 浏览:936
php可以干嘛 浏览:879
梁箍筋加密区需要满绑扎吗 浏览:331
程序员半个月工资多少 浏览:821
云服务器租赁还是私有 浏览:752
php七牛视频上传 浏览:14