关于某人挑战吾爱高手的CM破文
本帖最后由 520Kelly 于 2014-9-23 02:57 编辑关于这种人、、我只想说、、你挑战高手还不够资格、、连我这个菜鸟都过不去、、丢不丢人?
装B遭雷P、、做人低调一点、、高手一般是不出手、、你这种小丑还不够看的、、笑死人了、、好意思在那显摆、、
编写语言:E language 静态编译
验证方式:帐号密码型网络验证
验证地址:122.10.87.85
验证端口:19005
程序保护方式:无任何加密
首先直接运行软件,不输入帐号密码 点功能1、、
这时候载入OD搜索这个字符串
直接是双击这个 功能错误 提示
发现这么一段、、很明显没有任何比较、、就是单独一段代码
由此发现有两个可能 一个是call 调用 一个是线程
call调用:程序在另外一段比较 直接调用call载入某一段代码
例子:cmp eax,0此时eax=0
je00401000 实现状态
地址:00401000代码:call 00402000 -----00402000代码段 也就是如上图所视那样 是一个错误的提示
也就是说je直接跳到 call 00402000这个地方 那么假如je不跳转的话 代码所视
je00401000
call 00403000-----00403000代码段 也如上图所视 但是却是一个正确的提示
这是简单的一个判断 然后就是这种线程型的、、
线程型的一样是被call 调用 但是是由线程直接进行call 调用 而不进行比较之类的、、至于这个比较到底在哪、、抱歉 我也找不到
玩过易语言的都知道 易语言的封装是很深的 所以挖掘不到什么有用的信息、、
关于线程调用想必大家特别熟悉 有的程序直接断按钮事件是断不下来的 那么很可能是用了线程比较 或者是时钟比较、、各种可能、、
当然这个程序是线程比较 那么特别简单、、
首先呢 记录下功能1的段首 地址为00401B06
然后直接二进制搜索--FF 55 FC 5F 5E搜索按钮事件、、帐号密码可以不用输入、、
点击 功能1 按钮 直接断来下 然后这样改
call 00401B06
retn
也就是直接调用成功的那一段代码 后面的全部让他见鬼去吧、、
然后功能2 之类的是一样的改法、、不多作解释 照葫芦画瓢大家应该会
接下来放出程序发包的情况
大家对比可以发现 发包的情况是 请求功能x|帐号|密码|
特别简单啊、、大家也可以进行封包破解、、也是特别简单 关于本地的话也是比较简单的、、这个就不多说了、、
最后放出反逆源码 当然是直接本地验证的、、所以功能上是相等的 只是验证不一样 他的是网络验证 我的是本地验证、、
源码中帐号和密码均为admin 和原程序一样的
再一次提醒某些人、、不要在吾爱装B、、大神只是不屑与出手、、敢和大神叫板、、得先掂量下自己有几斤几两、、
膜拜一下大神 ! 本帖最后由 小淫仙 于 2014-9-23 03:19 编辑
我支持楼主 自己多大的脚就穿多大的鞋鞋大了不合脚会摔跤的 支持..秒杀他 我纯属来支持我师傅的 膜拜一下大niu 支持楼主~~ 顶起来,楼主威武 顶楼主!支持论坛