play with AXML
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
Demo.apk
README
config.py
extendStringChunk.py
handleAXML.py
options.py
utf_16.py
zipApk.sh

README

本程序用于修改AXML二进制文件。目前完成的功能有:
   1、混淆、替换AndroidManifes.xml中的属性名
   2、向AXML中加入一个无效属性以实现AXML Ambiguity方案
   
使用平台:
   由于加入了options相关代码,所以只能在LINUX环境下运行。
限制:
   目前只对utf-16编码的AXML文件进行处理,暂不支持UTF-8。不过后者简单很多,大家可以自己实现~
使用方法:
   1、下载https://github.com/wanchouchou/ManifestAmbiguity中的所有文件,并make,得到manifestAmbiguit可执行文件
   2、chmod a+x manifestAmbiguity   #添加可执行权限
   ps:之所以要这样做,是因为我太懒,不重写AXML Ambiguity方案的代码,为了复用它,就在后续的代码中直接调用这个可执行文件了...
   3、下载此分支下所有文件。
   4、由于需要重签名apk,所以需要将自己的签名文件keystore放在此目录下,并重命名为clientkeystore。
   5、useage:
       ./handleAXML.py -s/--source=[Source.apk] -o/--out=new.apk -c/--confuse  -a/--ambiguity  
       注意,由于某些原因,这里的-o 后的参必须为new.apk~~  -s 后跟源apk名 -c 表示混淆 -a 表示加入一个无效属性以实现AXML Ambiguity方案
   这两个参是可选的,大家可根据自己的需要选择。
   6、程序执行过程中,会停留在签名阶段,输入自己clientkeystore对应的密码即可。
   7、config.py为配置文件,具体作用里面有说明~