欢迎来到“兰州日报网”,在这里您可以浏览到兰州榆中县、永登县、皋兰县、城关区、西古区、红古区、安宁区、七里河区等地区最近发生的大小事。

主页 > 新闻 > 【要闻】骇客技术:简单十招教你学会破解软件

【要闻】骇客技术:简单十招教你学会破解软件

来源:兰州日报网作者:府雪兰更新时间:2021-04-02 02:56:51 阅读:

本篇文章5165字,读完约13分钟

我谈了学习解读的过程中经常遇到的问题,本人会根据自己的经验简单地告诉大家。 这些问题对初学者来说需要很好地理解。 根据我自己的学习经验,你直接按照很多破解教程学习的话,经常会让自己困惑。 我不知道有很多概念,自己不清楚或者完全怎么样,所以我想在下次的讨论中给大家一定的帮助。

1 .断点:断点是程序中断的地方,这个词对解密者来说不太熟悉。 那么什么是中断呢? 中断是指由于发生了特殊的事情(中断事),计算机中断当前的任务(即程序),执行其他任务(中断服务程序),返回原来的任务继续执行。 例如,假设你上班的时候,突然接到同学的电话,他叫你从外国坐火车来,去车站接他。 然后你向上司请假,去车站接同学,然后让他冷静下来,然后你又回到企业继续工作,这是中断过程。 解密的过程是获取程序输入的登录代码,准备好与正确的登录代码进行比较后中断,分解程序找到正确的登录代码。 因此,必须在解密的程序中设置断点,根据需要切入程序内部,跟踪程序的注册代码以达到crack的目的。

【要闻】骇客技术:简单十招教你学会破解软件

.领空 :这是重要的概念,但初学者也不太清楚。 我们可以在各种解读复印中看到领子空这个词。 如果不知道程序的领子空在哪里,就不能进入解读之门。 你可能也破译过一些软件,那只是一只盲人猫遇到了死老鼠(以前我是这样的^_^,现在不好说啊! “是的”。 程序的领域空明确地说是程序本身的地方,也就是我们要破译的程序本身的程序代码所在的地方。 你马上:我是程序运行时设定的断点,为什么中断后不是程序自己的空之间呢? 每个程序的编写都没有固定的模式,所以想要切入程序时中断程序时,需要不依赖特定的程序而设定断点。 也就是说,我们设定的断点应该是每个程序使用的。 在dos时代,基本上所有的程序都在中断程序上工作,也就是说大部分dos程序都调用各种中断来完成任务。 但是到了windows时代,程序没有直接调用中断的权限,windows系统提供了系统功能调用平台( api ),以中断程序为基础,windows程序 由于实现了各种功能,windwos中的软件其断点的设定以api函数为基础,调用程序。 例如,在softice中设定了名为bpx getdlgitemtext (取得对话框的副本)的断点,读取输入了解读的程序的数据,调用getdlgitemtext后,立即进行softing 所以,可以回到从系统区域解密的程序本身的位置(即程序衣领空 ),解密程序。 关于程序领域空,请参阅前面的softice图。 想一想:对于每个程序调用的程序段,我们能从那里找到什么有用的东西吗? (如何加密不是调用系统功能,而是程序自己决定的! )

【要闻】骇客技术:简单十招教你学会破解软件

3.API:applicationprogramminginterface的缩写,中文称为应用程序编程接口,是提供访问操作系统特征的方法的系统定义函数的大集合。 api包括调用执行与操作系统相关的所有必要操作的数百个应用程序的函数,如分配内存、输出到屏幕、创建窗口等,客户的程序通过调用api接口,在WPI接口上 一般api有win16和win32两种基本形式。 win16是windows 3.1的原始api的16位版本。win32是当前api的32位版本,适用于windows 95/98/nt/me/2000。 win32包括win16,是win16的超集,大部分函数的名称、使用方法都相同。 16位api函数和32位api函数的区别是最后一个字符。 例如,设置bpx getdlgitemtext、bpx getdlgitemtexta和bpx getdlgitemtextw。 其中getdlgitemtext是16位api函数。 getdlgitemtexta和getdlgitemtextw是32位api函数,getdlgitemtexta表示函数是单字节,getdlgitemtextw表示函数是双字节。 现在我们常用的是win32单字节api函数,和getdlgitemtexta类似的函数,其他两种( win16 api和win32双字节api函数)比较少见。 win32 api函数包含在动态类库( dlls )中。 也就是说,它包含在kernel32.dll、user32.dll、gdi32.dll和comctl32.dll中。 因此,我们在Soff。 因为否则将无法监听系统win32 api函数调用。

【要闻】骇客技术:简单十招教你学会破解软件

4 .关于程序中登录代码的存在方法:去找比较解读中输入的登录代码和正确登录代码的地方,通过程序的追踪、分解找到正确的登录代码。 但是,正确的注册代码通常以两种形式存在于程序中。 显式存在的注册代码和隐式存在的注册代码直接显示在程序所在的存储器中。 例如,softice的数据窗口显示存在的注册代码(这里是自由写的),如“297500523”,并解密明确存在注册代码的软件。 但是,有些软件程序不能直接比较输入的注册代码和正确的注册代码。 例如,可以将登录代码换算为整数,分解登录代码,分别比较各登录代码,转换输入的登录代码,通过特殊程序进行验证。 总之,应用程序采用了各种不同的复杂运算方法来避免直接的注册代码比较。 对于这样的程序,我们一般必须仔细跟踪、分解各程序的功能,找到加密算法,然后对其进行解密。 当然,这需要一定的8086程序集编程基础和巨大的耐心。

【要闻】骇客技术:简单十招教你学会破解软件

5 .关于软件破解方法:本人把破解方法分为完全破解和暴力破解两大类。 完全解密是指比较注册代码和密码等需要输入软件的内容。 如果我们能通过程序跟踪找到正确的注册代码,软件本身的注册功能就能正常注册软件。 这样的解读称为完全解读。 但是,在一些软件本身不提供注册功能的情况下,提供试用( demo ),或者在软件本身不能注册的情况下(例如,需要获得其他专用的注册程序,或者通过互联网注册等) 如果软件破译者的能力、劳力和时间有限,并且无法直接获得正确的注册代码,则需要编写软件本身的程序代码。 也就是说,必须更改软件。

【要闻】骇客技术:简单十招教你学会破解软件

6 .关于破解教程的程序代码地址问题:在破解教程中,为说明如下程序代码的解析方法,放置程序代码的一部分。

……。

0167:00408033push00

0167:00408035pushebx

00408036 call [ user32! 结束诊断]

0167:0040803cjmp0040812c

……。

这里程序中的代码地址可能会因计算机而异,例如0167:00408033。 不一定相同,但偏移值应该是固定的( 00408033不变)。 由于正在解密的程序代码的地址值与自己的计算机不同,因此在看到位置后,请不要弄错程序代码。

7 .关于如何设置断点的问题:正确设置断点对快速有效地解密很重要。 一个好的断点的设置可以快速找到重要的段。 不正确的断点消耗了解密不必要的精力,甚至无法阻止程序的执行。 但是,什么时候使用什么样的断点并不简单。 这个需要自己积累经验。 总的来说,bpx hmemcpy这个万能断点对大多数登录代码方法的软件很有用。 初学者可以试试很多这个断点(一般我也请在这个断点处设定。 懒惰啊^^,哈哈)。 。 。 “是的”。 对于需要暴力破解的非注册代码软件,需要阻止bpx dialogbox等对话框和消息框( bpx messagebox(a )等)。 在任何软件中,我们设定的断点都不是很有效,但当我们尝试bpx lockmytask时,这个断点的作用是阻止其中一个键的动作,具体常用的断点设定是 另外,破解登录代码一般需要输入顾客名和登录代码,通常可以自由输入顾客名和密码,但根据我的经验,有很多软件逐个解决登录代码。 如果输入“78787878”这个数字,我们就不知道跟踪程序时我们看到的“78”是哪个“78”,所以我喜欢输入“12345678”这个登录代码的方法。 这样,对于程序运算登录代码的哪个位、同样需要输入长序列号的软件,输入“12345-67890-abcdef”这样的序列号即可。 但是,上述登录代码的输入方法" 12345678 "与监听win32 api函数相比,根据情况直接监听win32 api函数很难找到程序的突破口,在用" s "命令查找在存储器内输入的顾客名和登录代码的情况下 存储器中很可能有多个“12345678”字符串,所以不知道我们破译的程序采用了哪个“12345678”,所以应该选择与存储器数据不同的登录代码。 例如,74747474 (本人喜欢。 什么意思? :去死吧。 。 。 哈哈^_^ ),对应的搜索命令是: S30:0l FFFFFFFFFFFFF ' 747474 '。 当然,以上只是我的个体习性,具体使用什么样的输入形式可以根据本人的兴趣、习性来决定,不需要拘泥于其中一种固定模式。

【要闻】骇客技术:简单十招教你学会破解软件

8 .关于如何跟踪程序的问题:初学者开始解读时,经常不知道如何跟踪程序,如何找到注册代码的比较地方,面对一堆长的程序代码就很困惑。 在一般软件的程序内部,使用了验证输入的登录代码是否正确的子程序( call ******** )。 在注册代码明确存在的程序中,通常将输入的注册代码和正确的注册代码放在寄存器中,调用验证子程序进行评价,返回结果,根据子程序返回的结果决定应用程序是否成功注册 这类程序经常采取以下形式:。

【要闻】骇客技术:简单十招教你学会破解软件

**********moveax、[*****] (或push eax等格式)

**********Movedx、[*****] (或push edx等格式)

**********call*********

****:********testeax、eax (或test al、al或没有此语句)

* * * * * * * * JNZ * * * * * * * * (或jz ********等格式)

这里,eax和edx所指的内存区域是我们输入的登录代码和正确的登录代码。 这里的寄存器eax和edx是自由写的,或者是ecx、ebx、edi、esi等。 对于登录代码隐含存在的程序,不能直接看到正确的登录代码,但在将输入的登录代码的地址放入寄存器后调用子程序进行验证,解密时需要进入子程序分解登录算法 也就是说,如果看到子程序( call * * * * * * * * * * * )之后继续有跳转命令( jnz ********或jz ******** )的地方,我们应该提高警戒,多用d eax 有些人需要注意程序中采用了以下函数:。 也就是说,getdlgitenint起着将输入副本转换为整数的作用,因此这些程序不显示存在的注册代码。 因为注册代码已转换为整数,所以程序通常使用cmp ecx、edx这种指令来验证注册代码的正确性。 这里存储在ecx和edx中。 和edx? ecx看到了那个十进制形式,即我们输入的形式。

【要闻】骇客技术:简单十招教你学会破解软件

9 .关于软件的反安装问题:在很多情况下,我们采用一些软件时,共享软件到期后,即使删除原来的程序重新安装,程序也还不能使用,试用期已经注册。 或者,即使破译了软件,也还想继续研究。 没有注册选项,因为软件已经注册。 在这种情况下,即使完全删除程序并重新安装软件,程序运行后也是注册的。 之所以遇到这种情况,是因为程序在系统注册表中保存了注册或过期的消息,所以简单地重新安装软件是没有用的。 对策是自己删除与注册表相关的新闻,但由于注册表是windows系统的业务基础,很可能因粗心损坏而引起系统异常,因此如果不熟悉注册表,在创建注册表之前,请使用bar 可以使用windows注册表管理工具“regedit”创建和备份注册表。 一种方法是在“开始-运行”中输入regedit启动,或者直接单击“c:\windows\regedit.exe”运行。 大多数应用程序都将自己的消息存储在hkey_local_machine\software、HKEY _ local _ machine _ software _ Microsoft和Hkey_curent路径中。 在microsoft或hkey_users\.default\software中,哪个位置因程序而异? 只要按照上述顺序找到应用程序的关键点,删除与客户名称和注册代码相关的关键点值即可。

【要闻】骇客技术:简单十招教你学会破解软件

10 .关于破解练习的问题:学习破解需要很多练习,对于破解目标的选择,初学者不能以大型有名的软件为目标。 这些软件一般加密多复杂,难以破解,不出名,应该选择小型早期的共享软件进行练习。 因为加密比较简单的软件有助于初学者迅速掌握破解思想和技能。 关于练习问题的来源,可以从网上下载,也可以去市场购买共享软件CD。

【要闻】骇客技术:简单十招教你学会破解软件

( e129 )

标题:【要闻】骇客技术:简单十招教你学会破解软件

地址:http://www.huarenwang.vip/new/20181024/11.html

免责声明:兰州日报网致力于为网友提供兰州最新的资讯,部分内容来自于网络,不为其真实性负责,只为传播网络信息为目的,非商业用途,如有异议请及时联系btr2031@163.com,兰州日报网将予以删除。

兰州日报介绍

兰州日报网立足甘肃,着眼于服务各行各业和广大群众对信息获取的需要,坚持贴近实际、贴近生活、贴近群众,开拓创新,努力建成省内一流的新闻类网站,网站现开设新闻中心、兰州视窗、区县频道、媒体聚焦、领导活动报道集、视频新闻、理论学习、新媒体H5、文化、摄影、健康等频道为您介绍兰州新闻以及甘肃经济和社会资讯。