首页 【doc】易语言程序的另类破解实验及防范

【doc】易语言程序的另类破解实验及防范

举报
开通vip

【doc】易语言程序的另类破解实验及防范【doc】易语言程序的另类破解实验及防范 易语言程序的另类破解实验及防范 >栏目编辑>icefi~>icefire@hackercorn.Cn icefir'e:易语言简单易学易用,所以吸引了很多人学习及使用.杂志上一期中《RsA: 马其 诺防线?!》一文讲述了易语言签名验证()的另类破解,在本期,将由小万同学带领大 家了解一 下取硬盘特征字()的另类破解及如何防范此类的破解. 适合读者逆向爱好者,易语言程序员 前置知识汇编入门知识.0D的简单使用,易语言编程 易语言程序的 另类破解实...

【doc】易语言程序的另类破解实验及防范
【doc】易语言程序的另类破解实验及防范 易语言程序的另类破解实验及防范 >栏目编辑>icefi~>icefire@hackercorn.Cn icefir'e:易语言简单易学易用,所以吸引了很多人学习及使用.杂志上一期中《RsA: 马其 诺防线?!》一文讲述了易语言签名验证()的另类破解,在本期,将由小万同学带领大 家了解一 下取硬盘特征字()的另类破解及如何防范此类的破解. 适合读者逆向爱好者,易语言程序员 前置知识汇编入门知识.0D的简单使用,易语言编程 易语言程序的 另类破解实验及防 先简单介绍一下易语言中的一个命令取硬盘 特征字() 髑甩格式:整数塑>取硬盘特征字()一系统核 心支挎瘁0?其能 英文名鞠GetHl~Code 返厨电磨中第夺物理硬盘的物理特征字,该特征字是 仅硬件相关的,也就是说与任何软件系统舔嚣荚(包括摄作系 统).掰户可以使痢就特征字来限锻自己的程序仅在莱一台计算 枫上运行.以保护骞软件的版权.本命夸可以在任何Win— do'r8系统版本下运行龠令执嚣期果遥鞫,表示此次取 瑷|盘特征字失败瞻手有可能是霹为暂时的/冲突激减,因 此失敢詹可瑷等待一段精槐时饲后再试(可以参藿l碉程).如皋 重复尝试四五次詹仍然失败,表明该硬盘免法取出特征字.本 命令为:朗级命令. 操作系统需求:Windows 实验原理 正是因为取硬盘特征字()的易用性.绝大多数 的易语言程序员使用了此命令作为共享软件的机器 码.然而此命令却给易语言共享软件带来很大的隐 患从介绍中我们可以得知它是易语言系统核心支 持库中的命令,也就是由系统核心支持库完成取硬 盘特征字的操作.聪明的你一定想到.问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 就出在 这个核心支持库上.Cracker通过十六进制编辑工具 修改易语言的系统核心支持库,使得程序调用取硬 命令时返回Cracker想得到的值,这就是 盘特征字() 易语言的另类破解. 实验目的 了解易语言的另类破解过程,并通过实验找出 防范另类破解的方法. 实验工具 1.HA— olIyDBG一 1. 1O_ second_ cao— cong—fix 2.用易语言新建一程序.界面如图1所示. 图1 双击取硬盘特征字"按钮,进入程序设计界 面.输入程序代码如图2所示.事件子程序的作用是 将系统核心支持库返回的硬盘特征字写到取硬盘特 征字编辑框中.并弹出一信息框. 实验用的测试程序到此就写完了,非独立编译 后待用. 于以上二种鳊译方式,本文为实验方便选用的是非 独立鳊译. 实验过程 用0IIyDbg载入编译好的测试程序,F9运行. 在命令行处下断点BpMessageBoxA.如图3所 示.这就是我为什么要在按钮单击事件的子程序中 加入信息框的目的. 骛霉蠹嚣嚣爨萋篓聚 j目缩辑)iceflre)icefire@h— acker.c— om.cn 图5 单击"取硬盘特征字"按钮,程序断在 可以从右下角堆栈友好提示中得知MessageBoxA 的调用处,如图4所示. 0咖0咖?m…j:.. ?1.18?Txt=当前硬盘特征宇为-2lIl9'2l2q 1?DeTlue=孺?: ?000-st=B_OKI?_T^smD^L ?l彻 ?lIM? 长劬伽0Dl翻 I伽5肋,2噬回到hn1O05DPF2木自rdn100520一 ?l2F6I8吼I一2141942~ 009%?3J 图4 根据提示来到10062140处并向上找到 100620A0处. 在100620A0处下断按F9让程序继续运行直到 弹出信息框再次单击"取硬盘特征字"按钮,程 序断在100620A0处从右下角堆栈友好提示中得知 更上一层的调用处如图5所示. 图5 100620A083EC64SUBESP.64 ;在比处下新,找足上一曩的调用 1OO62OA356PUSHESI 1O062OA48B742474MOV?ESlDWoRDP,rR SS:lEsP+74I 1OO62OA857PUSHEDI 来到10028F89处向上查找代码在10028F61 处下断.按F9让程序继续运行直到弹出信息框再 次单击"取硬盘特征字"按钮,程序断在 10028F61,此时右下角堆栈友好提示如图6所示. 根据右下角堆栈友好提示来~joo4o36c8处,向 002,5媚O咖O 00!F6?000?l 002F6BL00922o 002F6~4l蚴Fc8逆司到kIlln~.0026FC;3来自hd.I?s? 0[『2F6髓啪l2F6BC O02F6~ClO脚9延回到hIlln10029009 O0ZFSC000目惭30 O02F6Cl00功Bl0h?d100皿BIO O0ZF6C~0明日g的0 O02F6CC100皿B10hnh100瑚10 图6 上查找代码,来~J004036B0处,也就按钮单击事件 的开始点.下断并按F9让程序继续运行直到弹出信 息框,再次单击取硬盘特征字"按钮,程序断在 004036B0处.此时我们单步跟踪. 进入004036C3,可以看到JMP到系统核心支持 库的调用代码.F7继续跟进. 来到如下代码处 1oo28F61A1O8DBOE1OMOVEAX.DWoRD 阿DS:【1O咂D嘲】 10o28F66o318ADDEBx,DWoRDP,rRDS:[EAX】 …… 略去代码若干…… 10028F8652PUSHEDX 1Oo28F87FFI3CALLDWORDPTRDS: 【EBX】krnLn.Iooeg2co//此处藏是芙链了,F7蠢避 1Oo28F89BB4424OCMOVEA)【.DWORDPTR SS[ESP+C1 10o28F8D8B54241OM0VEDX.DWORDP,rR sS:lESP+lOl 1oo28F918B4C2414MoVECX.DWoRD P,rRsS:【,P+14】 10o28F9583C418ADDESP,18 1O028F98C3RETN 跟进10028F87处的系统核心支持库的服务调用 CALL来到100692C0处后继续跟进100692C2处的 CALLkrnln.1000DFF0.可以得出如下分析: 目编辑>icefire>icefire@hacker.comcn l0o0DFFO56PUSHESI l000DlE8DAFEFFFFCALLkmln.1OO啊0叻0 ,囊?盘赣往孛,麓兴蠢的可坟曩避奢麓一下敷曩土..往串 的镰停过囊 l咖DFF68B1)o.MOVEDX.EAX l00哪8BE0100OO0OMOVESI.l l0o0DFFD85D2TESTEDX正DX lOO00FFF752EJNZSH0RTkmln.1OOOEO2F ;如秉囊一值,室囊幂冀 l000E001鹞lAFDFFFFCALL嘲1000DD20 蠢?囊羹l量齄缸亭一 ? 1000E0068BD0MOVEDX,EAX, 将曩盘麓撼串?暮AX俘軎llEDX中 l/BE0:柏0oO00MOVE.2 lO0oE0oD85D21.断EDX.EDX lOOOEOOF751EJNZSHORTkrnln. 1oo0E02F;.1秉囊?值身宝囊不蕞 l咖E0ll'E8BAFFFFFFCALLkrnln.1000Dn)o ;蠢繁囊t盘糖往串 l0O0E0168BD0MOVEDX.EAX l0o0EOl8BE030o0o0o0,rEs1.3 l00oEolD85D2TESTEDX.EDX 1000E01F750EJNZSHORTkrnln. IO00E02F.1jI取膏值为宝砖誉蕊.?叁曩|毫?值将为O 1000E02I57PU8HEDI …… 略去代码若干…… l00嘲08MOVDWORD阿tDS~EAXCX l明'日n48BC2MOVEAX.EDX X,曩?屯曩置将EDX謦坎 POPESl RETN 经过如图7所示的修改,并通过选择代码行后 点右键弹出的菜单,选择"复制到可执行文件"并 保存为新文件.另类破解的实验就基本完成了. 图7 鲁篡釜 编辑当前代码行.不过字节数不能超出当前行,否 则超出部分将把下面的代码行覆盖.如果不小心将 下面的代码行覆盖或修改错误,可以通过右键菜单 中的"撤消选择处修改"命令返回原始状态. 实验结果 将修改过的文件重命名为krnln.fnr并与测试程序 放到同一目录下.运行后界面如图8所示. 图8 实验 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf 本次实验演示了如何从易语言支持库下手的破 解.这是易语言程序员必须注意的一个问题,因为 使用此法可以通破绝大多数易语言程序,如自身加 密很变态的《求真易语言工具箱3.0)),用常规方法 很难破解,但在另类破解面前却很轻易的被破解. 要防止另类破解,即要检查系统核心支持库是 否被修改,可以有很多种方法.下面的例程是取系 统核心支持库的数据摘要(I~pMD5值)进行校验是否 被修改.易语言源码如下: . 版本2 . 支持库dp1 . 程序集程序集1 . 子程序J表动子程序,整数型,,本子程序在程序启动后最 先执行 局部变量核心支持库数据摘要,文本型…核心支持库的 数据摘要 局部变量核心支持库文件,文本型…核心支持库文件全 路径 局部变量打开核心支持库,整数型…打开核心支持库以 便读取数据摘要 局部变量正确核心支持库数据摘要值,文本型,,.自行设 定所用支持库的数据摘要值 核心支持库文件=取运行目录0+"\kmlnfnr"' 通过自身运行目录取核心支持库全路径 打开核心支持库=打开文件(核心支持库文件,#读入,) 核心支持库数据摘要=取数据摘要(读入字节集(打开核 心支持库,取文件长度(打开核J支持库)))'取杨支持库的数 据摘要 誊喜瑟魏夔轻鬟菱 &童ill?2堂旦堕塑!.堕21壁.cn一——/ 正确核心支持库数据摘要值= I"97c8fe752e354b2945e4c593a87e4a8b'此处为易语言4,03 l正式版中kl-nln.fnr的数据攮要,可自行设定 l关闭文件(打开核心支持库)'释放核心支持库 1.判断开始(核心支持库数据摘要正确核心支持库数据摘 I要值) Ir数据摘要不正确,可以在此处加入其它一些什么代码,如 l关机,重启或是引入歧途等 l信息框(系统核心支持库已被病毒玻坏,程序将不能运行! I请重新安装程序!,#错误图标,.警告") I结束0r本例程以结束自身进程为终 1.默认 l信息框(.系统核心支持库通过认证!欢迎使用!",#信息图 I标,.提示") l,判胄i结零 I返回(o),可以根据您的需要返回任意数值 例程中只是简单的做了一个防止核心支持库被 修改的检查,效果如图9所示(注以上源代码在易 语言4.03正式版+windowsXPSp2下编译通过测 试).在实际运用中可以跟据自己软件的需要编写适 当的代码,当然,也可以选择放弃使用"取硬盘特 征字()命令改用自编代码取特征字. (文中涉及程序或代码已经收录到杂志配套光 盘"杂志相关"栏目,按文章名查找即可.此程序 和代码~-f--4月20El收录于I',F#VlPT区)仂 适合读者网络爱好者,网民,免费爱好者 前置知识:无 文/图ImAtC 相信大家一定有在网吧上网的经历吧7现在很 多网吧或学校机房为了防止用户修改电脑的设置和 防止中毒,都装了还原精灵.这对我们这些玩家带 来了不便.要是一个软件安装后要求重启,那还怎 么用啊.本着共享的理念.本人写下此文. 今天介绍的是还原精灵6.1版的密码破解方法. 有朋友会说,不是用WinHEX就可以在输入错误密码 的时候在内存中找到密码么7确实,老版本可以, 但对6.1是无效的.因为它的密码不是以明文出现在 内存中. 先准备好工具.O【lyDbg和Peid就够了.还原精 灵61的管理界面是在WindOWS下运行的一个叫 hddgmon. exe的程序.用Peid查壳,显示为tElock0. 98.如图1所示. 这是个老壳了,下个工具就能解决,要是你想 再温习一下,就手脱吧.不再多说. 使用OD载入脱壳的hddgmon.exe.运行,右下角 图1 出现还原精灵的图标,右键点该图标一还原精灵, 然后输入密码.随便来个123123,点确定,接着 出现一个对话 框,上面写 "正在检查密 码...",如图2 所示. 几秒后!
本文档为【【doc】易语言程序的另类破解实验及防范】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_769014
暂无简介~
格式:doc
大小:24KB
软件:Word
页数:0
分类:生活休闲
上传时间:2018-05-01
浏览量:34