Code Monkey home page Code Monkey logo

smali-anti-usageseach's Introduction

Smali-Anti-UsageSeach

简单来说就是C+ 和Java层交互调用

简单说明

利用native层回调java层方法来使大部分工具的交叉引用查找失效 此工具用于自动化修改smali文件和生成cpp文件(待实现自动编译)

(这里的smali框架有的地方写的不好,上传太麻烦了,移步https://github.com/Hoimk/Smali-RestoreString)

使用方法

  1. 使用apktool d 反编译apk
  2. 运行java -jar smalisafe.jar "要处理的smali文件名"
  3. 使用ndk-build编译jni下的SmaliSafe.cpp(注:此时smali文件已被修改)
  4. 将编译生成的libs文件夹改名lib移动至apktool工程中(注:只保留需要的abi,不然会导致如:arm64位的手机找不到原apk其他so)
  5. apktool b dir 回编译

Usage

-p <Apktool Project Dir>  --f <PageName>

-s <SmaliFile>

想法

  1. 把java方法名,native数组名,native方法名混淆打乱。(Added)
  2. 稍微改改可以实现全工程~ (Added)
  3. 添加包名过滤(Added)
  4. 加入随机参数
  5. 方法路径保护

已知问题:

  1. smali中已存在clinit的话要自己手动添加load (Fixed)
  2. 性能损耗未知........
  3. 使用SafeProject会造成N种问题,如:方法太多so库太大,调用太多无法回编...所以待添加过滤。(Fixed)
  4. 调用太多无法回编可以试试多Dex。
  5. 待添加。

##Sample 酷安(+字符串混淆) (不要问我字符串混淆哪来的,https://github.com/Qrilee/obfuseSmaliText)

效果图:

以下是smalisafe.jar -p coolapk --f com.coolapk.market.view.main后的处理结果

smali-anti-usageseach's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.