avatar

Catalog
某桌面便签软件暴破

基础破解

  1. 首先发现,VIP功能需要登录。由于内网无法联网,所以先在外网做这个实验

  2. 随意输入一个账号并登录,提示账号不存在

  3. 进入OD搜索中文字符串,其当前被引用地址为0x79525C

  4. 在IDA中根据OD中载入的基址进行Rebase,定位到该地址,从而确定该函数

  5. 确定函数后,观察函数的逻辑。发现进入else分支后会去根据回传数据的验证码,判断出错的问题。所以这里不能进入else语句

  6. 找到if语句判断的位置

  7. 在OD中定位此处,单步过来,发现jnz。这里[esi+0x64]处的值为0,因此不会跳转。此时会继续往下继续判断[esi+0x34]处的值与0x3EC(1004)。所以下面就是判断出错类型的地方,因此这个位置必须要跳转,直接将框住的地方改成je即可,然后继续执行

  8. 然后就成功登录了

  9. 这里虽然显示账号过期,但是VIP功能可以正常使用(同步除外)

  10. 验证可以使用VIP功能,非VIP无法进入下图所示界面

  11. VIP功能如下,框住功能可以正常使用,同步功能需要打掉服务器,有风险

  12. 修改完jnz -> je后,右键选择Copy to executable -> All modifications,然后选择Copy All

  13. 进入这样一个界面,右键 -> Backup -> Save backup to file,替换掉用来的文件就行

抓包思路

  1. 由于burp只能抓设置了代理的应用,这个便签无法设置代理,key建议我使用proxifier进行全局代理。先在Profile -> Proxy Servers 中设置代理服务器地址为 BurpSuite 监听的地址。然后简单配置一下,拦截便签应用发送的数据包到代理,就可以用Burp进行操作

  2. 退出先前登录的账号,先随便登录一下。抓个包。可以看到回传包里面有一个 activated字段,目前它是空的。第一个字段code说明了,返回将导致输出结果“账号不存在”。如果对返回包进行适当的修改,也可以实现激活

  3. 注意到,后面有提示,注册后赠送40天VIP权限。这里就随便注册一个账号。看一下它的返回包。可以看到activated字段设置为了1。data和expires_data字段也都有值,这两个值表示从1970-01-01至今经过了多少秒。这里,只需要将expires_date的值进行修改。将1653104261修改为3653104261,延长一下激活时间,再来看看情况如何。

  4. 它会回传一些数据,我们不用管,进入账号管理可以看到,激活时间为永久

Author: cataLoc
Link: http://cata1oc.github.io/2019/04/11/%E6%9F%90%E6%A1%8C%E9%9D%A2%E4%BE%BF%E7%AD%BE%E8%BD%AF%E4%BB%B6%E6%9A%B4%E7%A0%B4/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Donate
  • 微信
    微信
  • 支付寶
    支付寶