实验课程

THIS NAME

实验课程

当前位置: 首页 >> 实验课程 >> 正文

软件安全-登录窗口爆破实验

发布日期:2024-08-03    作者:孙玲     来源:     点击:

登录窗口爆破实验

一、实验目的

对程序登录窗口中nameserial进行窗口爆破,达成无需正确用户名密码也可登录,

了解动态调试大致过程,

掌握登录窗口爆破知识。知识点OD、登录爆破、动态调试。

二、实验原理

登录单机程序时有两种验证机制,其一是程序账户密码已经写到程序中,登录时会利用分支语句例如:if等进行判断是否与程序中给定账户密码一致,对于这样的程序,可以直接nop掉分支语句,或者将跳转指令地址修改为登录成功地址。其二是:程序附带注册机机制,用户输入账户后会根据程序算法自动生成密码,对于这样的程序,仍然可以选择nop掉分支语句,也可以通过对程序的动态调试分析注册机算法,编写相同计算方式的程序。

三、实验环境

软件工具Ÿ操作系统:Windows7x64Ÿ其他:ollydebugAcidburn.exe

undefined

1

四、实验目标

1. 去掉进程主接口之前的一个NAG窗口。

2. 找到Serial/Name校验页面的注册码。

3. 找到Serial校验页面的注册码。

五、实验步骤

首先要了解程序的运行逻辑,运行桌面上窗口爆破文件夹中的Acidburn.exe程序。

undefined

2

然后点击确定后进入进程的主窗口。

undefined

3

进去后发现有两个按钮,根据按钮上的字符串判断应该是需要输入序列号和名称的位置。首先看下左边那个按钮,点击进去看下情况,发现有两个输入框,分别是输入用户名和序列号,然后点击CheckitBaby,进程会进行校验,校验失败会弹出下面窗口,提醒你tryagain

undefined

4

发现了两个输入的文本框,以及两个按钮,需要输入nameserial,点击CheckitBaby!来验证,如果登录成功会弹窗显示成功,否则会提示SorryTheserialisincorect

undefined

5

然后点击Igiveup按钮返回到进程的主接口,看下右边那个按钮的情况。点击进去后发现有一个输入框,提醒你输入序列号,然后点击CheckitBaby,进程会进行校验,校验失败会弹出下面窗口,提醒你Failed

undefined

6

Serial窗口破解在od中重新运行程序,按F9然后在软件主界面点击Serial按钮, undefined

7

弹出的Serial验证窗口中,内容不变点击CheckitBaby!按钮。会弹出TryAgain!!弹框。

undefined

8

和前面寻找字符串的方法一样,寻找TryAgain字符串,一共有三处位置。

undefined

9

12分别在这三处位置下断点,然后回到Serial验证界面点击CheckitBaby!!按钮,程序会断在42F4F8位置。

undefined

10

在此处向上翻查代码,反汇编是将HelloDude!字符串拼接,然后和用户输入内容作比较。重新运行程序,在Serial界面输入HelloDude!,显示正确。

undefined

11

上一条:网络安全-DOS实验 下一条:软件安全-Windows缓冲区溢出实验

关闭