发新帖

【原创】so与dex互验证欺骗.

[复制链接]
26446 18
应用名字:朋友说要和谐下

应用包名:com.gale.sanguokill.hd

用到工具:Notepad++
          Ide
          C32asm
          Ida和ddms(因为用的朋友的电脑,很多东西都没装,这里就不演示了。)
前言:
这个游戏的支付验证时移动 MM和支付宝的,当修改好支付宝回编打包,运行游戏的时候出现闪退。不修改反而没事,于是想到如何来欺骗它。然后反复试验,成功了。判断这个游戏是so验证dex,dex验证so的一款验证.具体细节可能不太详细,大家看看方法和思路吧。

一.
IDE反编译好之后,我们在项目菜单里面,右键com.gale.sanguokill.hd打开文件夹。复制路径,打开notepad++,ctrl+f搜索classes.dex,在目录上面粘贴路径,全部查找 看看都那些文件调用了classes.dex。图1
http://bbs.pediy.com/attachment.php?attachmentid=91157&thumb=1&d=1406883425
看到了有6个文件调用了classes.dex,只需要关心so,就像前面提到了,这个是SO与dex互相验证.图2.
http://bbs.pediy.com/attachment.php?attachmentid=91158&thumb=1&d=1406883425
打开ide看AndroidManfest.xml启动文件sanguokillactivity,这里调用了libgame.so文件.图3
第一步,到这里结束.
http://bbs.pediy.com/attachment.php?attachmentid=91159&thumb=1&d=1406883425
二.
修改”game”名
未修改:
.method static constructor <clinit>()V
    .locals 1

    const-string v0, "game"

    invoke-static {v0}, Ljava/lang/System;->loadLibrary(Ljava/lang/String;)V

    return-void
.end method
修改后:
.method static constructor <clinit>()V
    .locals 1

    const-string v0, "kanxue"

    invoke-static {v0}, Ljava/lang/System;->loadLibrary(Ljava/lang/String;)V

    return-void
.end method
OK,执行下一步.

我们把.apk改成.rar把里面的classes.dex拖出来,修改成lkanxue.ooo,在拖放到里面. 图4
http://bbs.pediy.com/attachment.php?attachmentid=91160&thumb=1&d=1406883425
修改好后,来修改so文件名和so文件里面调用classes.dex文件名的字符.

刚刚提到过,修改so是两个,分别是armeabi和armeabi-v7a里的libgame.so.

拖出来,因为刚刚把dex监听so的名字改成kanxue所以要把libgame.so名字改成libkanxue.so.用c32asm打开libkanxue.so,用十六进制模式,因为不支持反汇编模式打开.

搜索ansi字符串 classes.dex,修改成刚刚外部修改的lkanxue.ooo.图5
http://bbs.pediy.com/attachment.php?attachmentid=91161&thumb=1&d=1406883425
保存,把这个libkanxue.so拖放到armeabi目录里面.图6
http://bbs.pediy.com/attachment.php?attachmentid=91162&thumb=1&d=1406883425
Armeabi-v7a目录下的libgame.so文件和armeabi的一样,就不写了。

然后修改classes.dex文件的内购就不会闪退了

简洁原理:
原文件是1.dex 2.so 复制1.dex 2.so 文件改名为3.dex 4.so  
1.  dex调用4.so
2.  4so调用3.dex
3.so 还是原来的so

欺骗,欺骗,或者说是狸猫换太子。

OK,教程到这里结束,写的不好,笑笑就好了,别喷我,现在对喷子有阴影了。

文档下载:链接: http://pan.baidu.com/s/1jGurV8M 密码: 123h  

已有2人评分 NB 荣获致谢 理由
B6B6B6 + 1 + 1 很给力!
Lnju + 1 很给力!

查看全部评分 总评分: NB +2  荣获致谢 +1 

举报 使用道具

回复

精彩评论18

听鬼哥说故事    发表于 2014-11-14 10:48:49 | 显示全部楼层
前排支持荡老湿。。。

举报 使用道具

回复 支持 反对
JackIO    发表于 2014-11-14 10:50:46 | 显示全部楼层
写的很好,新手前来学习荡老师啦。

举报 使用道具

回复 支持 反对
peterdocter    发表于 2014-11-14 13:14:05 | 显示全部楼层
老当手中的剑还是那锋利:victory:

举报 使用道具

回复 支持 反对
wgz001    发表于 2014-11-14 16:00:49 | 显示全部楼层
默默地支持一把
:P

举报 使用道具

回复 支持 反对
dawnchen    发表于 2014-11-15 07:35:30 | 显示全部楼层
Dawn老师给力,:)

举报 使用道具

回复 支持 反对
737672679    发表于 2014-11-16 19:12:39 | 显示全部楼层
顶10个:D

举报 使用道具

回复
1171610056    发表于 2014-12-23 18:13:52 来自手机  | 显示全部楼层
4L查水表

举报 使用道具

回复 支持 反对
beijingshi1    发表于 2014-12-24 11:26:23 | 显示全部楼层
不错不错。。。。。

举报 使用道具

回复
737672679    发表于 2014-12-24 15:49:46 | 显示全部楼层
荡 师傅。

希望更新帖子。。。顶

举报 使用道具

回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表