【原创】小小菜鸟爆破IphoneBackupextractor V3.08

请教下大家,怎样写文章让下面代码高亮起来囧。。。

 

标 题: 【原创】小小菜鸟爆破IphoneBackupextractor V3.08
作 者: Wmbit(wzpyh)
时 间: 2011-10-25,20:02

在此要先感谢下
【原创】DOTNET动态调试破解Spoon,及MSI安装包文件替换技术
的作者chenxiaolu 发的帖,让我受益匪浅!

前言
玩Iphone的朋友对这个东西应该并不陌生,它可以把电脑里的Iphone备份文件提取自己所需的东西出来。

作为一个超级潜水艇0 0(看我注册时间就知道了),逛了那么久的看雪。。觉得是该笨鸟飞起来了恩。。
废话不说了,进入正题。。
工具使用:
CFF Explorer
Simple Assembly Explorer
ILSPY

1、 打开软件我们可以看到有个注册按钮在主界面
 用Reflector打开软件,显示错误,看来软件动过手脚。。
改用Simple Assembly Explorer+ILSPY 顺利打开~
在Form类的MainForm,看到许多函数都被混淆了
 

尽管如此,硬着头皮用ILSPY分析下代码,发现个button叫btnButton

 
点右键Analyze一下恩。
 
看到这四个方法调用了BtnRegister,点第一个进去看看。。看到了一个东西~(运气太好了- -)


当case 为2的时候,注册按钮就会隐藏起来,看来这里是关键,因为一般注册成功了才会把它隐藏起来。那么看下是怎么才能到case 2的- -。。
 case 2:
   {
    YCAgON0yw60m63HqxL.nXwlNs0Yvy.btnRegister.Hide();
    num = 15;
    break;
   }


在下面点看到了这个
case 13:
   {
    if (!YCAgON0yw60m63HqxL.ARRlToEtRO)
    {
     return;
    }
    num = 2;
    break;
   }
也就说当YCAgON0yw60m63HqxL.ARRlToEtRO ==true时,赋值num=2,然后走循环走到case2验证就通过了。。

那么true的代码在哪呢?在Case 4那。。
case 4:
   {
    YCAgON0yw60m63HqxL.ARRlToEtRO = true;
    num = 9;
    break;
   }

也就是说我们让分支一开始就等于4,就可以无视掉其他分支了吧。。。再回到开头代码看下。

public static void ADBlBnyecQ()
{
 int arg_199_0 = 12;
 if (YCAgON0yw60m63HqxL.GqJHamoA9rMXWwobD70())
 {
  goto IL_10;
 }
 string text2;
 while (true)
 {
  IL_199:
  string text;
  int num;
  RegistryHelper registryHelper;
  switch (arg_199_0)[/CODE]

我的目的将arg_199_0改成4,那不就验证通过了?转成IL代码如下

0      L_0000: ldc.i4 12
1      L_0005: call System.Boolean Hx4BCgCK7VXi5M2Ni4.YCAgON0yw60m63HqxL::GqJHamoA9rMXWwobD70()
2      L_000a: brfalse 96 -> switch 29, 65, 23, 78, 14, 19, 50, 4, 56, 87, 29, 45, 8, 45, 100, 108

直接用SAE改保存。。软件功能失效- -,难道不能用它改?
查询Gerneral页可知道
/* Token: 0x060002df */
/* RVA: 0x2af58 */
.method public hidebysig static Void ADBlBnyecQ()
.maxstack 6
ldc.i4 的16进制为20
开启CFF Explorer 打开文件,在Address Converter 填入RVA显示如下

(此图是已经改过值后的)


20 0C  即0x0C=12 把0C 改成04,保存,
软件运行。。。Done!

后话:
只用改一个字节就搞定它了=。= ,但前后分析却花了半天。。。逆向入门真不容易啊

转载于:https://www.cnblogs.com/wmbit/archive/2011/10/26/2224685.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值