返回列表 发新帖

【原创教程】​超简单方法为软件添加签名校验!

  [复制链接]

21

主题

2019

回帖

8593

积分

硕士生

Rank: 6Rank: 6

金币
498
好评
280
信誉
108

MT论坛元老MT论坛荣誉管理MT论坛帅哥考神MT论坛活跃会员MT论坛最佳新人MT论坛侠客MT论坛新人

发表于 2019-4-2 11:15:28 来自手机  | 显示全部楼层 | 阅读模式  来自 重庆
本帖最后由 Exception. 于 2019-4-2 12:55 编辑

声明:此教程仅供学习参考使用,如您利用本贴所提供的内容修改了他人软件,由此产生的任何纠纷于发布人(楼主)无关。

先说一下代码中的小功能:现在继承Application并实现InvocationHandler接口来去除签名校验的类很多,所以我还在代码内加入了一个获取软件所有类的方法去检查有软件内没有包含去除签名校验的类。(通俗点说就是检查软件有没有包含某个类,如果有则直接退出,我们暂把这些类称为禁止出现的类,这些禁止的类是可以让你自行添加的,我在代码里已经对该添加到哪里做了明确注释,代码里也内置了一些不能出现的类,比如MT去除签名校验的PmsHookApplication类)


这里已'全局复制'为例子,示例软件和代码将会在本贴下方隐藏内容提供下载链接


打开Dex编辑器++
右上角-保存为工程
先保存为一个工程





保存之后会在MT的侧边栏找到你刚刚保存的工程
然后长按它,跳转到工程保存目录 在其目录内添加代码







将下载的代码复制到工程的根目录内

注意是根目录!否则可能造成包名路径错误





侧边栏-重新打开工程

可以发现代码已经添加进去
(如果代码路径不是com.XuanRan.GetClass就是你代码位置的复制错了)






现在我们来修改XuanRanCSApplication这个类的父类


为什么要修改它的父类呢?
因为我们待会要把AndroidManifest.xml中的Application标签下的android:name属性改成我们这个签名校验的,但为了不影响其他Application子类我们要把XuanRanCSApplication父类继承换成软件原来的Application子类(如何理解继承?当一个类被继承的话就表明继承的类拥有和被继承的类的所有特性,例如水果和苹果的关系,我们可以说苹果继承了水果,我们不做继承的话,其他类得不到调用就会造成一些问题

打开原APK的AndroidManifest.xml文件可在application标签下找到android:name这个属性先复制其值后改为:com.XuanRan.GetClass.XuanRanCSApplication
保存,暂不签名。





返回工程-找到XuanRanCSApplication类
修改其父类,这时候就要补充一个smali知识了

每个类最上面的super Lxxxxx/xxxx后面的xxx就代表是它的父类,我们只需要修改L后面的内容就好,但要保留L

这时候就要把我们刚刚复制的原来的Application粘贴到这里,而且要把.换成/  
还要记得最后面的';'符号不要掉








想必大家也已经看到了上图第27行的内容
没错,我就是利用签名的SHA-1指纹去检查签名的,那大家可能也想知道如何获取自己签名的SHA-1指纹吧?为此,我单独做了一个软件,使用你的签名去签名那个APK,打开后就可获取到你签名的SHA-1指纹(支持点击复制)






此软件在下面隐藏内容获取。

你还可以将SHA-1指纹加密处理,只需将上图23行的0×1改成0×0,填写SHA-1指纹的地方不变就好。

-------分-----------割------------线------

也许有人还记得我在之前提到的自定义一些不能出现的类,一旦出现就直接退出,我为什么要添加这个小机制呢?就是因为继承Application对getPackageInfo进行Hook的类太多,或者你有什么其他需求,我不可能把所有的这种类都添加到里面,虽然代码内置了一些,但还是有点少,这时候就要让你们自行发挥了。

如何添加呢??

打开com.XuanRan.GetClass.a类,跳转到64行,将你不想出现的类添加到里面就好,这里已com.XuanRan.GetClass.TestClass类为例子(添加的时候要把包名也加上,且为明文形式



而且你也不用担心不够用,因为我在写代码的时候故意将其空值添加了好多,你也不用担心那么多空值会不会影响效率问题,因为检查类的代码只会在首次使用的时候才检查,如果完全正常之后再打开并不会进行类检查。


总结:通过继承Application来获取到一个Context,然后传递Context进行检查,这样就可以避免一些人不会获取Context传递的问题,使其整个添加过程简单明了,但它极其容易被去除,如果你有能力的话完全可以将调用代码放到Activity的方法内进行,而且后面的类的检查纯属死马当活马医,当类名更换的时候即失效,这点要留意。




此外,如果本贴上浏览量超过一千我会把源代码分享一下的



最后-
右上角编译-
把Dex添加到APK内-
签名安装测试-
如有问题请私信我-

下面奉上代码、示例软件、SHA-1指纹获取工具

点击下载相关代码、示例软件、SHA-1获取工具

写贴不易,只求好评~




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
已有15人评分好评 金币 理由
御景 + 1 很给力!
Yu裕 + 1 + 1 赞一个!
Method + 1 + 1 还没消化完,明天继续看(笑哭).
有趣的灵魂 + 1 + 1 很给力!
轻叹 + 1
雨落惊鸿, + 1 + 1
爱你没么打 + 1 + 1 赞一个!
小小虾 + 1 + 1 赞一个!
清晰。 + 1
倾临雨落 + 1
amt + 1 + 1
luoawai + 2 + 3
似水年殇 + 1 + 1 别嫌金币少
喵喵猫 + 2 + 5 大佬辛苦了!
2830481431 + 1 + 1 谢谢分享

查看全部评分 总评分:好评 +17  金币 +17 

回复

使用道具 举报

21

主题

2019

回帖

8593

积分

硕士生

Rank: 6Rank: 6

金币
498
好评
280
信誉
108

MT论坛元老MT论坛荣誉管理MT论坛帅哥考神MT论坛活跃会员MT论坛最佳新人MT论坛侠客MT论坛新人

发表于 2019-4-2 11:26:49 来自手机  | 显示全部楼层  来自 重庆
写贴不易,只想要好评
回复

使用道具 举报

21

主题

2019

回帖

8593

积分

硕士生

Rank: 6Rank: 6

金币
498
好评
280
信誉
108

MT论坛元老MT论坛荣誉管理MT论坛帅哥考神MT论坛活跃会员MT论坛最佳新人MT论坛侠客MT论坛新人

发表于 2019-4-2 11:40:01 来自手机  | 显示全部楼层  来自 重庆
本帖最后由 Exception. 于 2019-4-2 12:53 编辑
©麟杰 发表于 2019-4-2 11:31
MT的一键去除能去掉不

这个是已经经过MT去除签名校验处理的

大家可以安装试一下

点击下载成品测试
回复

使用道具 举报

21

主题

2019

回帖

8593

积分

硕士生

Rank: 6Rank: 6

金币
498
好评
280
信誉
108

MT论坛元老MT论坛荣誉管理MT论坛帅哥考神MT论坛活跃会员MT论坛最佳新人MT论坛侠客MT论坛新人

发表于 2019-4-2 21:15:35 来自手机  | 显示全部楼层  来自 重庆
PS:教程为什么用Application来添加校验?

这是因为我担心论坛的有些人不懂的怎么获取Context,其实我完全可以将调用代码放在其他地方,但为了使教程更加简洁,使步骤更加少,才选择了Application,有能力的可以自己把调用代码换地方(调用代码需要一个Context)
回复

使用道具 举报

21

主题

2019

回帖

8593

积分

硕士生

Rank: 6Rank: 6

金币
498
好评
280
信誉
108

MT论坛元老MT论坛荣誉管理MT论坛帅哥考神MT论坛活跃会员MT论坛最佳新人MT论坛侠客MT论坛新人

发表于 2019-4-2 21:16:39 来自手机  | 显示全部楼层  来自 重庆
如果你们觉得太容易去除,可以自行将代码更改调用位置。
回复

使用道具 举报

21

主题

2019

回帖

8593

积分

硕士生

Rank: 6Rank: 6

金币
498
好评
280
信誉
108

MT论坛元老MT论坛荣誉管理MT论坛帅哥考神MT论坛活跃会员MT论坛最佳新人MT论坛侠客MT论坛新人

发表于 2019-4-10 18:19:50 来自手机  | 显示全部楼层  来自 重庆
源代码已经放出,详见:传送门
回复

使用道具 举报

21

主题

2019

回帖

8593

积分

硕士生

Rank: 6Rank: 6

金币
498
好评
280
信誉
108

MT论坛元老MT论坛荣誉管理MT论坛帅哥考神MT论坛活跃会员MT论坛最佳新人MT论坛侠客MT论坛新人

发表于 2019-6-18 17:08:46 来自手机  | 显示全部楼层  来自 河南
链接已失效,现补:https://www.lanzous.com/i4l99ra
回复

使用道具 举报

6

主题

893

回帖

2137

积分

大学生

Rank: 5Rank: 5

金币
799
好评
4
信誉
100
发表于 2019-4-2 11:22:50 来自手机  | 显示全部楼层  来自 广东
我是因为想你才来这里看看的
回复

使用道具 举报

54

主题

1690

回帖

6948

积分

硕士生

流氓头子

Rank: 6Rank: 6

金币
946
好评
25
信誉
100

考神

发表于 2019-4-2 11:30:35 来自手机  | 显示全部楼层  来自 广东
收藏先,感谢楼主分享
回复

使用道具 举报

20

主题

4314

回帖

1万

积分

博士生

1

Rank: 7Rank: 7Rank: 7

金币
3063
好评
26
信誉
101

2019-5.1节快乐MT论坛帅哥MT论坛最佳新人考神MT论坛新人

发表于 2019-4-2 11:31:06 来自手机  | 显示全部楼层  来自 河南
MT的一键去除能去掉不
回复

使用道具 举报

44

主题

1577

回帖

9400

积分

硕士生

亡灵歌者

Rank: 6Rank: 6

金币
4568
好评
55
信誉
85

考神MT论坛最佳新人MT论坛帅哥MT论坛活跃会员MT论坛侠客MT论坛新人

发表于 2019-4-2 11:31:46 来自手机  | 显示全部楼层  来自 天津
回复大法看秘密
回复

使用道具 举报

0

主题

133

回帖

563

积分

初中生

Rank: 3Rank: 3

金币
166
好评
0
信誉
100
发表于 2019-4-2 11:32:52 来自手机  | 显示全部楼层  来自 江西
学习学习
回复

使用道具 举报

21

主题

2019

回帖

8593

积分

硕士生

Rank: 6Rank: 6

金币
498
好评
280
信誉
108

MT论坛元老MT论坛荣誉管理MT论坛帅哥考神MT论坛活跃会员MT论坛最佳新人MT论坛侠客MT论坛新人

发表于 2019-4-2 11:33:33 来自手机  | 显示全部楼层  来自 重庆
©麟杰 发表于 2019-4-2 11:31
MT的一键去除能去掉不

你试一下
回复

使用道具 举报

11

主题

2144

回帖

7683

积分

硕士生

Rank: 6Rank: 6

金币
4298
好评
3
信誉
100
发表于 2019-4-2 11:35:02 | 显示全部楼层  来自 广东
大神太历害了,收下学习
回复

使用道具 举报

46

主题

2373

回帖

5796

积分

硕士生

Rank: 6Rank: 6

金币
1479
好评
5
信誉
101
发表于 2019-4-2 11:38:57 来自手机  | 显示全部楼层  来自 甘肃
那就是说MT去不掉了
回复

使用道具 举报

4

主题

122

回帖

328

积分

禁止访问

金币
1
好评
2
信誉
101

MT论坛帅哥

发表于 2019-4-2 11:41:54 来自手机  | 显示全部楼层  来自 山东
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

1

主题

2741

回帖

7927

积分

硕士生

Rank: 6Rank: 6

金币
514
好评
1
信誉
100

考神MT论坛最佳新人

发表于 2019-4-2 11:47:33 来自手机  | 显示全部楼层  来自 河北
感谢分享,辛苦了,给你点赞
回复

使用道具 举报

7

主题

3607

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
11379
好评
0
信誉
100

2019-5.1节快乐MT论坛最佳新人考神

发表于 2019-4-2 11:47:47 来自手机  | 显示全部楼层  来自 江苏
收藏,,,下载
回复

使用道具 举报

6

主题

789

回帖

6539

积分

硕士生

Rank: 6Rank: 6

金币
1587
好评
15
信誉
100

2019-5.1节快乐考神

发表于 2019-4-2 12:00:39 来自手机  | 显示全部楼层  来自 广东
收藏一波
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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