菜鸟笔记#2.获取注册码

来源:互联网 发布:湘妹子的特点 知乎 编辑:程序博客网 时间:2024/05/29 15:12

【实验目的】

1) 掌握利用查找字符串的方法下断点追出软件内的注册码

【实验原理】

1) 利用软件登录时,提供的关键字,找到关键CALL下断点,单步调试追出注册码。

【实验环境】

工具:OllyDBG
软件:C:\software\20.获得注册码\Remove Nag.exe

【实验步骤】

一、了解软件验证机制

1.1 运行Remove Nag.exe软件,在用户名和密码栏中输入任意数值,单击“登录”按钮。如图1所示


图1

1.2 弹出关键字提示对话框,记录下关键字“Name / Code mis-match. Try again.”。 如图2所示


图2

二、利用PEID查壳

2.1 进入软件目录,选择目标软件,右键发送到PEID,进行查壳。如图3所示


图3

2.2 PEID软件提示无壳。如图4所示


图4

三、利用OllyDBG程序暴力破解软件

3.1 将Remove Nag.exe载入OllyDBG程序。如图5所示


图5

3.2 单击反汇编窗口,右键菜单选择“中文搜索引擎”->”智能搜索”。 如图6所示


图6

3.3 在弹出字符串界面,在字符串对话框中发现了“Name / Code mis-match. Try again.”。双击这行,跳转到反汇编窗口对应的那行。如图7所示


图7

3.4 向上查找关键跳转,接着向上找到关键CALL,按F2下断点。如图8所示


图8

3.5 单击工具栏中的“运行”按钮,软件登录界面输入帐号和密码(输入值为任意,因为要观察软件在输入错误的帐号和密码的情况下,这个关键CALL是否会实现),发现跳转实现(红色代表实现跳转)。如图9所示


图9

3.6 程序在关键CALL处暂停,按F7进入CALL函数中查找序列号。如图10所示


图10

3.7 按F8快捷键,单步跟踪,直到找到对应的注册码(E8AE81EBA17C4551CB123FFCA919B5D7)。如图11所示


图11

3.8 把对应的用户名111111和密码E8AE81EBA17C4551CB123FFCA919B5D7输入软件,注册成功。如图12所示


图12


Q1.关于这个实验似乎Code是有一个注册码算法,所以最后F8追踪出来的注册码可能不是E8AE81EBA17C4551CB123FFCA919B5D7。
[?]Q2.除了看call以外,这个实验可以暴力破解吗?根据实验,最后程序崩溃0.0。why?

1 0
原创粉丝点击