现在位置: 首页 > 自动控制 > 文章
2013-09-19 19:00 工业·编程 ⁄ 共 36728字 暂无评论
1. 概述 用户成功安装微软Windows调试工具集后,能够在安装目录下发现四个调试器程序,分别是:cdb.exe、ntsd.exe、kd.exe和Windbg.exe。其中cdb.exe和ntsd.exe只能调试用户程序,Kd.exe主要用于内核调试,有时候也用于用户态调试,上述三者的一个共同特点是,都只有控制台界面,以命令行形式工作。 Windbg.exe在用户态、内核态下都能够发挥调试功能,尤其重要的是,它不再是命令行格式而是采用了可视化的用户界面。所以绝大部...
阅读全文
    找了几十个不同语言编写的 crackme,发现只用消息断点的话有很多并不能真正到达我们要找的关键位置,想想还是把消息断点和 RUN 跟踪结合在一起讲,更有效一点。关于消息断点的更多内容大家可以参考 jingulong 兄的那篇《几种典型程序Button处理代码的定位》的文章,堪称经典之作。今天仍然选择 crackmes.cjb.net 镜像打包中的一个名称为 cycle 的 crackme。     按照惯例,我们先运行一下这...
阅读全文
    还记得上一篇《OllyDBG入门系列(三):函数参考》中的内容吗?在那篇文章中我们分析后发现一个 ESI 寄存器值不知是从什么地方产生的,要弄清这个问题必须要找到生成这个 ESI 值的计算部分。      今天我们的任务就是使用 OllyDBG 的内存断点功能找到这个地方,搞清楚这个值是如何算出来的。这次分析的目标程序还是上一篇的那个 crackme,附件我就不再上传了,用上篇中的附件就可以了。...
阅读全文
    现在进入第三篇,这一篇我们重点讲解怎样使用 OllyDBG 中的函数参考(即名称参考)功能。仍然选择 crackmes.cjb.net 镜像打包中的一个名称为 CrackHead 的crackme。 相关阅读 ----OllyDBG入门系列(二):字串参考 老规矩,先运行一下这个程序看看: 呵,竟然没找到输入注册码的地方!别急,我们点一下程序上的那个菜单“Shit”(真是 Shit 啊,呵呵),在下拉菜单中选“Try It”,会来到如下界面: ...
阅读全文
上一篇是使用入门,现在我们开始正式进入破解。今天的目标程序是看雪兄《加密与解密》第一版附带光盘中的 crackmes.cjb.net 镜像打包中的 CFF Crackme #3,采用用户名/序列号保护方式。原版加了个 UPX 的壳。刚开始学破解先不涉及壳的问题,我们主要是熟悉用 OllyDBG 来破解的一般方法。我这里把壳脱掉来分析,附件是脱壳后的文件,直接就可以拿来用。先说一下一般软件破解的流程:拿到一个软件先别接着马上用 OllyDBG 调试,先...
阅读全文
一、OllyDBG 的安装与配置 OllyDBG 1.10 版的发布版本是个 ZIP 压缩包,只要解压到一个目录下,运行 OllyDBG.exe 就可以了。汉化版的发布版本是个 RAR 压缩包,同样只需解压到一个目录下运行 OllyDBG.exe 即可: OllyDBG 中各个窗口的功能如上图。简单解释一下各个窗口的功能,更详细的内容可以参考 TT 小组翻译的中文帮助: 反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地址、HEX 数据、反汇编、注释可以...
阅读全文
在[Code]字段这样写 使用Inno制作安装包,活用[Code]字段的代码可实现很多功能,在编写Pascal代码时,可能会用到[Setup]字段的先的一些关键字,如:AppId={{30E1A3ED-7869-4C99-A426-D331A221234A},可能你会需要获得这个GUID字符串来执行卸载 在stackoverflow上搜索一下,找到了答案: http://stackoverflow.com/questions/1926164/innosetup-getting-appname-in-code-section 大致三种方法: 1.比较“笨”的方法,定义一个常量...
阅读全文
2013-09-17 22:44 工业·编程 ⁄ 共 664字 暂无评论
某些程序运行后会留下一些残余的文件 诸如:日志目录,隐藏文件等无法被卸载程序删除的文件,下面就概述如何使用Inno Setup默认功能删除这些不用的垃圾文件以达到干净卸载的目的。 代码如下: //注意!代码必须使用[code]段才能够正常运行 [code] //删除所有配置文件以达到干净卸载的目的 procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); begin if CurUninstallStep = usUninstall then if M...
阅读全文
2013-09-17 22:42 工业·编程 ⁄ 共 6456字 暂无评论
1 、如何让协议许可页面默认选中我同意按钮 [code] procedure InitializeWizard(); begin WizardForm.LICENSEACCEPTEDRADIO.Checked := true; end; 2、自定义安装程序右上角图片大小 [code] procedure InitializeWizard(); begin WizardForm.WizardSmallBitmapImage.width:=150; //设置页眉图片的大小 WizardForm.WizardSmallBitmapImage.left:=WizardForm.width-150; //设置左边页眉留出的空隙 ...
阅读全文
2013-09-17 22:29 工业·编程 ⁄ 共 1245字 暂无评论
最近打包用到了Inno setup,在这个过程中容易犯一些低级错误,特别写出来已提醒自己 1.打包文件夹 打包文件按照向导来一般没什么问题,但文件夹就不一样了。向导生成的打包文件夹的代码如下: Source: "D:MyProject/XX/*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs  它解压时直接把XX目录下的所以文件拷贝到安装目录下,而没有生成XX目录,程序如果要引用XX目录下...
阅读全文