当我们想要破解一个软件时,个人认为最重要的就是对它的关键代码进行定位(ps:这里的关键代码是相对于我们而言的,比如想要去掉软件的启动页广告,其中一个思路时可以找到它加载的地方。分析一下,判断哪里判断是否启动页加载的逻辑改掉它就好啦。)

1、背景:因为学的专业开设有路由交换这门课,但是呢,每次启动都有一个烦人的登录页每次都是选择游客模式,这不是最关键,关键就是必须等待15秒才可以进入百度谷歌了一波,居然找不到破解版,也没找到任何相关教程,心里有点凉不过作为一个逆向菜鸡,真的是忍不了(ps:好久没实战破解过了,拿来练练手也不错嘛)

2、破解时用到的:环境(学校用的版本是6.3,我用的win10x64位系统),工具(PEiD,IDA Pro, Pexplorer,Olydbg,Spy++,x32dbg),方法(单步跟踪,各种回溯,各种断点等等),咳咳,最重要的就是眼手不能停,其他版本大家自己尝试

3、最后想要实现:就是跳过等待时间,直接进入模拟器,最好是可以直接去除Nag(登陆页面)

4、简单说下过程:本例中采用最简单的思路,就是查找关键字符串,首先观察下这个页面能挖出什么信息,这里我主要就是利用这三个字符串

软件很大IDA对于我这种菜鸡也派不上用场,而且加载和OD一样贼慢;这里我选用x32dbg:反汇编窗口右键,选择字符串,所有模块

我先过滤了一下ollydbg,这里就是过滤关键字符;

发现有以下两个字符串瞬间明白肯定是有对ollydbg的反调试:发现有ollydbg,结用ollydbg没办法动态调试,就是软件的反调试机制,有些公司会专门针对反编译软件做反调试看一个程序有没有对你的反编译软件做处理,过滤名字就是一种思路

难怪用ollydbg没办法进行动态调试(ps:这里没有仔细研究是怎么做的,不是本文重点)

再过滤一下Login,发现有GuessLogin,还有一些网址之类的;本来想到可以直接从网址入手,但是不行,这个网址只是用来与服务器交互的。

我本来就不想登陆账号

向下翻就突然发现set loginbanner之类的,心想banner不是那个横幅什么的嘛,下了断点,去试试

找到断首,逐行向下单步分析,结果发现没什么用。。。

又回到字符串那里,乖乖的把所有的GuestLogin下上了断点;调试到这里的时候,突然GuestLogin那个按钮变灰并出现了15;这时候心里非常开心,以为附近就是关键点,这样就可以跳过这个计时器或者改变数值15为0,结果调试着调试着我就乱了

不知道程序执行到哪了,单步了估计300次,不变14。。。

然后重新载入,有些觉得和这个没啥关系的call直接跳过(ps:好多可以根据注释还有名字来判断它的作用)

单步着,单步着,突然发现15变成14了,单步向下时多次在下面这两个跳转直间来回跳,将上面那个je跳转双击改成jmp之后F9运行两次,发现按钮上面的字符变了,从Guest变成了Gue:

接着13,可以看到我将je跳转还原之后,又变成了Gues

这里简单解释一下:在两个跳转处下上断点,单步几次就会发现5055C500地址处是取我们的字符串GuestLogin(的,而控制的正是这两个跳转。

12了:

然后发现注释窗口出现了“Time:%1“这样的字符串:这个字符串是在注释窗口中出现的,一般在的动态调试的过程中,都会出现类似的提示性的字符,time就是时间,那代表处理时间的逻辑可能被触发了。

想着这不是跟时间有关嘛,那这个倒计时处理函数肯定也在附近(ps:这时候一直在找这个函数所在位置)

接着

又出现了一个“2timeout()“,不知道何方神圣,继续单步

调试到这里的时候,发现了GuestLogin(11),就想着给它下一个内存断点

右键选择,在内存窗口中转到双字

右键设置硬件访问断点(Dword)

到这里就彻底凌乱了,程序一个劲儿的暂停,不是异常就是内存短点;后来想着是不是太长了,就重新删除,又只在11处下断点;结果还是一样,因为单步操作的快捷键是F8,所以我键盘的F8要炸了;鼠标点击也可以单步,手指也有点凉。

好吧,到这里都要打算放弃了,因为机房9.30就锁门了,回宿舍的路上感觉好不甘心呀,又想了想是不是思路有问题,换种思路行不行;一直都在想办法找到控制倒计时的地方,那可不可以直接在加载这个登陆页面的地方搞一下呢,回到宿舍后,立即进入状态,重新载入,回到断点窗口

双击进入

向上翻,发现全都是一些初始化的信息,猜测是不是Nag(登陆窗口也会在这里初始化)

后来发现这附近就这一个可能的跳转,心想着试试吧,不行就洗洗睡了;修改下ZF标志位的值使得je跳转成立。

方法:右侧寄存器窗口,双击ZF后面的0使他变成1就可以,这时可以发现CPU窗口跳转那条线变红

接着直接F9运行,发现居然跳过了登录窗口,直接进入主程序了,开心

好的,我们既然已经知道了这个je是决定时是否加载登录窗口的关键跳转;那我们将这里双击修改成jmp

接着选中被修改的部分(ps:这里可以多选)

Ctrl+ P打开补丁窗口,点击修补文件,选择你想要修补的源程序(ps:这里大家可以先备份下,这样的话修改出错能够及时恢复)

总结一下:本来是想要改判断倒计时的逻辑,结果不成,但是可以找到加载登录窗口的地方,改这里同样可以达到效果;修改的地方就这一处就好,但是调试过程非常麻烦,需要大量时间,我用了好几个小时才成功,其实还是太菜了,肯定有更简单的方法,希望有师傅可以指点一下,还有就是分析过程肯定错误不少,希望可以指出,感激不尽。

声明

文章仅用于普及网络安全知识,提高小伙伴的安全意识的同时介绍常见漏洞的特征等,若读者因此作出危害网络安全的行为后果自负,与合天智汇以及原作者无关,特此声明!

记得投稿哦

如果有好的技术原创文章

欢迎投稿至邮箱:edu@heetian.com

合天会根据时效、新颖程度、文笔及实用性等要素对文章进行评判,一经发布给予100元-500元不等的稿费

还等什么呢?有才能的你快来投稿吧!

了解更多详情点击重金悬赏 | 合天原创投稿等你来!

逆向菜鸡实战破解思科模拟器登录限制相关推荐

  1. javascript逆向入门级别实战--某小网站登录密码加密分析

    仅供学习,切勿用于非法用途! 难度 非常低 网站(请自行base64解码) aHR0cCUzQS8vd3d3LnBpZ2FpLm9yZy8= 抓包分析 按F12打开浏览器开发者工具,选到network ...

  2. 安卓逆向010之实战破解内购(斗地主)

    文章目录 快速定位关键代码 实例分析 ~Jadx分析 ~AndroidKiller分析 关键点分析 附带常见方法名: 快速定位关键代码 1. 分析流程 搜索特征字符串搜索关键api通过方法名来判断方法 ...

  3. 思科模拟器 Cisco Packet Tracer 8.2免登录以及汉化步骤

    目录 1.1 安装软件 1.2 免登录 1.3 软件汉化 思科模拟器Cisco Packet Tracer 8.2 在使用时需要必须登录才能使用,下面来教大家破解登录界面(文末有下载链接) 1.1 安 ...

  4. JAVASE基础模块三十四( 菜鸡版简单登录验证模块系统IO流文件写入)

    JAVASE基础模块三十四( 菜鸡版简单登录验证模块系统IO流文件写入) 开发流程:需求文档 接口文档 效果图 开发环境统一:JDK1.8 IDEA win10 GIT SSM SSH SpringB ...

  5. 电脑android模拟器下载地址,菜鸡电脑版怎么下载 安卓模拟器电脑版下载地址

    最近在朋友圈非常流行的手游菜鸡已经开放下载了,不过不少玩家都觉得手机上玩菜鸡手机屏幕太小,操作不方便,画面不够清晰炫酷.那么如何在电脑上运行菜鸡这款手游呢?小编现在就推荐一款菜鸡安卓模拟器给大家!希望 ...

  6. 思科模拟器:cisco路由器密码恢复(密码破解)

    环境:思科模拟器 准备一个路由器 我们如果要去密码恢复时候,需要去修改寄存器值,就是修改寄存器值让路由器不去加载以前的配置文件同理console口密码也会一起消失,也就说你修改完以后是所有配置都会没, ...

  7. bilibili源码_Java开源商城源码推荐,从菜鸡到大神,永远绕不开的商城系统

    每个Java程序员,从懵逼菜鸡,再到懵懂菜鸟,再到小鸟,大鸟,最后到技术大神,始终绕不开商城系统,里面蕴含了大量的业务,涉及到了大量的知识点和解决方案. 今天介绍一款Java开源商城源码 xmall- ...

  8. java停车收费系统 源码开源_Java开源商城源码推荐,从菜鸡到大神,永远绕不开的商城系统

    每个Java程序员,从懵逼菜鸡,再到懵懂菜鸟,再到小鸟,大鸟,最后到技术大神,始终绕不开商城系统,里面蕴含了大量的业务,涉及到了大量的知识点和解决方案. 今天介绍一款Java开源商城源码 xmall- ...

  9. 商城html源码_Java开源商城源码推荐,从菜鸡到大神,永远绕不开的商城系统

    每个Java程序员,从懵逼菜鸡,再到懵懂菜鸟,再到小鸟,大鸟,最后到技术大神,始终绕不开商城系统,里面蕴含了大量的业务,涉及到了大量的知识点和解决方案. 今天锋哥介绍一款Java开源商城源码 xmal ...

最新文章

  1. Exchange系列课程之三--群集环境中安装Exchange Server 2003
  2. 用命令行操作 VirtualBox 和 SGD
  3. 软件测试系列---软件测试基础
  4. dhs手术是什么意思_#下颌角手术# #磨骨瘦脸# 下颌角手术多少钱?
  5. CRF(条件随机场) 学习总结
  6. Linux删除带空格的文件 删除最后一个后缀名
  7. SVN 使用beyondcompare 来版本对比
  8. 因子分析以及SPSS实现
  9. 计算机二级vb考试题库app,全国计算机二级vb考试题库
  10. 审计小trick结合
  11. SSM+MySQL实现在线考试系统(含源码、MySQL、文档,包运行)
  12. GPRS DTU是什么?其工作原理是什么? (转自aerkate)
  13. 第七章、绘制3D图表和统计地图
  14. 后台管理 vue+element 开源框架
  15. 剑指 Offer 58 - II. 左旋转字符串
  16. c语言栈训练题目:括号匹配
  17. Nginx的启动安装和常用配置例子
  18. .msg转换成html,msg文件怎么打开
  19. python两张图合成一张_Python图像处理实现两幅图像合成一幅图像的方法【测试可用】...
  20. python爬虫教程-Python网络爬虫实例教程(视频讲解版)

热门文章

  1. [原]删除dboy病毒
  2. 视频剪辑 - Pr入门[第一次学习] - 小白蜕变!!!
  3. 初始化磁盘选哪个格式 初始化磁盘分区形式选什么好
  4. 计算机等级良好和优秀是什么意思?
  5. 世坤投资大学:欲提供数据科学硕士学位的对冲基金
  6. IPv6和IPv4共存技术之 ISATAP隧道技术
  7. 工作之余如何有效学习提升
  8. TaskView简述
  9. 惠民工程(2013中南大学研究生复试[最小生成树])
  10. 思科模拟器CISCO/华为模拟器ENSP配置一个完整的校园网(网络安全、数据冗余)