博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android smali文件,jar包字符串混淆
阅读量:6157 次
发布时间:2019-06-21

本文共 1267 字,大约阅读时间需要 4 分钟。

hot3.png

https://github.com/ysrc/obfuseSmaliText

obfuseSmaliText

smali字符串混淆

相关文章 

注意:配置中设置了仅会混淆包名目录下的文件

2017-3-2

目前使用异或+十六进制的方式对字符串进行混淆,支持中文字符,测试未发现问题,有问题欢迎反馈

2017-3-14

参考StringFog,增加对jar包的字符串混淆(使用asm),支持自定义key

2017-3-21

修复了因ide字符串替换导致的错误,编译了两个可执行jar包,并写了两个bat文件,双击即可执行

2017-5-5

更新ObfuseJarString方法,替换其中class字节码为java7,防止dx无法正确编译dex

2017-5-10

更新jar包混淆string方式,改为每个字符串解密对应一个解密key,字符串以byte数组呈现(未更新jar包,需自行编译),一定要注意编码问题,不然会导致乱码

2017-07-17

修改smali混淆的目录为手工输入,部分apk包名对应的目录下可能会没有文件,先暂时修改为这样,后期修改为按照配置文件对目录进行混淆

2017-07-19

添加支持gradle的字符串混淆,在打包时进行自动混淆

  • 将obfuseStringGradle.jar文件放在工程根目录,在项目build.gradle下添加如下
android.libraryVariants.all{ variant ->  //module工程则为libraryVariants,主项目则是applicationVariants    variant.javaCompile.doLast{        println  ("start classes obfuscation "+"${variant.javaCompile.destinationDir}")        javaexec {            main = "-jar";            args = [                    "../obfuseStringGradle.jar",                    project.name,                    variant.javaCompile.destinationDir            ]        }    }}

使用方法

  • 先使用apktool.jar将apk进行反编译
  • java -Dfile.encoding=utf-8 -jar 执行jar
  • 输入当前已经反编译apk的路径(复制粘贴即可)
  • 等待任务完成,重新打包回去即可

注:jar包执行时需要指定运行编码,不然会导致混淆后乱码 ,使用命令如:java -Dfile.encoding=utf-8 -jar obfuseJarString.jar

转载于:https://my.oschina.net/phybrain/blog/1574646

你可能感兴趣的文章
微信小程序输入框input
查看>>
MySql字符串函数使用技巧
查看>>
Doc2Vec,Word2Vec文本相似度 初体验。
查看>>
系统ghost后变成一个盘了别的分区的文件怎么找回
查看>>
Win7+Ubuntu11
查看>>
请问华为三层交换机里面的那个从IP是个什么意思? -
查看>>
kFeedback开源啦
查看>>
大数据传输,文件传输的专业解决方案!
查看>>
阿里云专家穆轩的《杭州九年程序员之“修炼”手册》
查看>>
JQuery:deferred对象的方法
查看>>
eyoucms问答 百度权重是什么
查看>>
win10中遇到qq视频时摄像头打不开没反应的解决方法
查看>>
介绍自己的一个Android插桩热修复框架项目QuickPatch
查看>>
关于textarea的ie9的maxlength不起作用的问题,请参考如下URL解决。
查看>>
勒索病毒GANDCRAB新变种GANDCRAB V5.2新变种来袭 你中招了吗?
查看>>
Solr Facet 查询
查看>>
C++类的继承一
查看>>
数据库分库分表(sharding)系列(五) 一种支持自由规划无须数据迁移和修改路由代码的Sharding扩容方案...
查看>>
巧用VMware Workstation的clone来制作虚拟机模板
查看>>
Spring-Mybatis MapperScannerConfigurer 取不到PropertyPlaceholderConfigurer里的值
查看>>