新客立减

1.

啰嗦一下

之前有事找非虫大哥帮忙,然后被吐槽了,说我放大家鸽子,一直说要分享破解技巧,却从来没

见过爆料。

其实目前

Android

系统下的加固,来回就那么回事,直接说出来反而就没有意思了。

从加固者的角度来讲,由于

Android

系统蛋疼的碎片化,必须尽可能的考虑兼容性,从而使得操作

空间变得非常小。所以来来回回就是那么点技巧,只是不停地变换形式而已。所以,目前

Android

加固方面的攻防,个人觉得就是一种思维方式的对抗而已。

2.

卖(

zi

)瓜(

kua

认识我的人应该都知道,之前做加固只有短短的四个月的时间。而且之前没有做过任何

Android

PC

破解相关的工作。所以实际上我也是个新人,谈不上什么分享,只是和大家来聊聊一些个人

想法。

首先,必须承认经验还是很有用的。但是由于

Android

安全才刚起步。所以很难说谁在这方面有丰

富的经验,此时,

Linux

系统相关和

PC

端破解经验就显得很重要了,至少可以让你在起步的时候领

先别人。不过很不幸的是,我在这两方面都没有什么积累,使得现在很多看起来非常简单的问

题,当初遇到的时候,花费了大量的时间去搜集资料。

相信很多人会和我一样,甚至在整个安全方向,都是一个新手。那么这个时候该怎么做?

信息收集

-> 

分析总结

-> 

尝试解决

我觉得是想办法发挥自己的长处,和目前的方向结合起来,寻找捷径。当然,如果你的长处只有

dota

的话,那么就可以直接跳过这一段了

(-.-)

。对于我来说,之前虽然做过各种各样的内

(da)

(za)

,但由于比较向往漏洞挖掘,所以都偏向于二进制分析。也就是说我的特长在于分析。所

以经过最初的对

Android

源码熟悉的阶段之后。面对遇到的问题,我的解决过程都一样,就是

对于

(

Linux

系统

or PC

端破解

)

经验丰富的人来说,可能在看到问题的瞬间,就从脑海中完成了信

息收集的工作。但对于新手而言

(like me)

,信息收集往往需要大量的时间

(

不止一次被

<

>

上司吐槽

效率差

)

,而我想说的是,尤其是对新手,信息收集是最关键的一步,它直接决定了你能不能最终

解决这个问题。所以建议初期不需要考虑效率问题,尽可能的通过搜索引擎和源码,查找到所有

相关资料,整理概览,然后挑选出可能有用的进行理解吸收。总之,技多不压身,吸收到的知

识,总有一天会用的到的。而且对于任何人而言,信息收集这一步都是相对公平的,和人本身的

素质能力关系并不太大,只要肯投入精力,一定能找到解决问题所需的内容。

相对于信息收集,后两步骤对个人的能力就有一定的要求了。这与一个人的积累有非常大的关

系。关于分析能力,我觉的就是多关注一些技术

(

安全

and 

开发

)

问题以及解决方法和

思想

。最后

的尝试解决,就是多动手。

比较庆幸的是,一直以来

我在技术积累方面,都是靠个人的摸索,没有大牛的

"

手把手

"

指导,也

就没有人来拘束我的思维。从这点来说,有得有失。结果就是虽然能力增长缓慢,但在能力范围

之内,我的思维非常活跃。之前说目前加固的攻防就是思维方式的对抗。所以在这方面,还是占

了一些优势的。

卖瓜完毕,下面来说点实际内容

3.

这才是正文

之前提到如果直接说

"

xxx

保护如此这般可以破

"

,显得太没意思了。所以这篇文章的定位是从开发

者和攻击者两方面来讨论一些技术,一些问题也不会最终给出明确的解决办法。所以实际就是一

个和技术相关的闲聊而已。

3.1 

签名校验和完整性校验

我觉得,在任何时候提到

apk

的安全的时候,最先要考虑的就是签名校验和完整性校验,虽然我一

直认为,在

Android

系统下,签名这个东西运用的很搓。因为数字签名可以认为是安全的基石之一

啊,基于数字签名,本身可以做很多可信性校验,从而改善

Android

软件混乱的现状

(

考虑到伟大

GFW

,貌似这么做了对我们也没啥影响

)

闲聊

Android

软件保护

2015

6

2

9:51

   

分区

ApkProtect 

的第