OD 实验(六) - 对一个程序的破解】的更多相关文章

程序: 双击进行安装,安装过程默认就好了 安装完成 运行程序 输入 User 为 sch01ar,点击 Create 点击 Log In 这里显示为未注册版本 看看未注册版本有哪些功能被限制 这里会显示这个是未注册的版本,要在今天注册 最多只能创建 3 个组 每个组最多只能添加四个联系人 目标: 修改程序添加组和联系人的限制 修改程序中的未注册的提示信息 实战: 用 OD 打开程序 该可执行文件在安装目录下 联系人数量的突破 按 F9 运行 再次试图新建一个联系人,还是不行 按 F12 暂停运行…
程序: 这里有很多的动态链接库 双击运行程序 这个程序有次数限制 按钮也在隐藏处 主界面 退出程序,会弹出一个广告 目的: 让程序的使用次数不受限制,且没有显示次数的窗口 去除程序关闭时候的广告 逆向: 修改次数限制: 用 OD 打开程序 按 F8 走一下程序 程序在这里走到了一个循环,程序会在这个循环中走很久 要想退出这个循环,可以在 004BD452 处下一个断点,然后按 F9 然后接着往下走 当运行到这个地方的时候,就会启动程序 在这个地方应该按 F7 步入,而不是步过 要是步过,之后就会…
程序: 点击安装程序 这是一个拼图程序 点击 Options -> Flash Sizes 程序会提示是未注册版本 点击一些选项的时候会提示该程序只给注册的用户 点击 Register 随便输入一个密码,然后点击 OK 密码错误 用 PEiD 看一下该程序使用的是什么编译器 Microsoft Visual C++ 7.0 逆向: 用 OD 打开程序 首先先查找一下关键字 右键 -> 查找 -> 所有参考文本字串 拉到最顶端,右键 -> 查找文本 双击跟进该字符串所在的地方 这里有…
程序: 运行程序 点击 About 这是要注册的 点击 Register 输入邮箱和注册码,点击 Register Now 逆向: 用 OD 打开程序 右键 -> 查找 -> 所有参考文本字串 搜索上图的内容 双击进去 上面有个 jnz 跳转指令 如果 jnz 实现跳转的话,就会提示注册成功 jnz 跳转语句上有个 test 指令 test al,al 判断 al 是否为 0 如果 al 为 0 的话,ZF 置 1,jnz 就不会实现跳转 所以 al 要为非零的数,jnz 才会实现跳转 al…
程序: 运行程序 弹出一个对话框,点击 OK 来到主界面,点击 Help -> Register Now 这是输入注册码的地方 按关闭程序的按钮 会提示剩下 30 天的使用时间 用 Resscope 载入程序 在 Dialog 下找到程序要退出时的那个对话框 在 100 处找到该对话框 103 为 lpTemplateName 对话框模板 逆向: 用 OD 载入程序 右键 -> 查找 -> 所有命令 64 为 100 的十六进制 找到很多 push 0x64 的指令 右键 -> 在…
程序: 运行程序 点击 Start,它就会进行对系统的扫描 点击 About -> Enter Registration Code 随便输入一下内容,点击 OK,会弹出该弹窗 用 PEiD 看一下 该程序是用 Microsoft Visual C++ 6.0 写的 逆向: 用 OD 载入程序 右键 -> 查找 -> 所有模块间的调用 键盘直接敲 getwindowtext 找到几个 GetWindowTextA,A 为 ASCII 码,W 为 Unicode 右键 -> 在每个调用…
程序: 运行 弹出 NAG 窗口,提示要花 20 美元注册 然后会进入主窗口 提示剩余 5 天的使用时间 点击,菜单栏 -> Help -> About 显示未注册版本 逆向: 用 OD 打开程序 首先把剩余 5 天的字符串作为切入点 先按 F9 运行一下程序 右键 -> 查找 -> 所有参考文本字串 右键 -> 查找文本 要把整个范围勾选上 继续查找看看,按 Ctrl+L 这个和第一个是一样的 双击第一个查找到的结果,跳到该字符串所在的位置 这个地方的上一条语句是一个 jn…
前话: VB 程序用 OD 进行逆向的话,可以先查找相关的变量和字符串,以寻找突破口 变量: __vbaVarTstEq __vbaVarCompEq __vbaVarTstNe __vbaVarCompLe __vbaVarCompLt __vbaVarCompGe __vbaVarCompGt __vbaVarCompNe 字符串: __vbaStrCmp __vbaStrComp __vbaStrCompVar __vbaStrLike __vbaStrTextComp __vbaStrT…
实验六:分析Linux内核创建一个新进程的过程 作者:王朝宪  <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 进程 1.进程即处于执行期的程序,并不局限于一个可执行的代码,是处于执行期程序以及其相关资源的总称. 2.Linux系统中,对于进程和线程并没有明显的区分,线程是一种特殊的进程. 3.Linux系统中,常用fork()进程创建子进程.调用fork()进程的成之为其子进程的父进程. 4.fork()继承…
第二题 已知有十六支男子足球队参加2008 北京奥运会.写一个程序,把这16 支球队随机分为4 个组.采用List集合和随机数 2008 北京奥运会男足参赛国家: 科特迪瓦,阿根廷,澳大利亚,塞尔维亚,荷兰,尼日利亚.日本,美国,中国,新西 兰,巴西,比利时,韩国,喀麦隆,洪都拉斯,意大利 package Test03; import java.util.ArrayList; import java.util.List; import java.util.Random; public class…