Git Product home page Git Product logo

iosmixproject's Introduction

iOSMixProject

马甲包混淆工程

原工程地址

首先感谢将此脚本初始脚本开源的大佬,但不太适合我们工程,于是我们在原有的轮子上加了几颗螺丝钉,仅供参考思路,奉上原仓库地址。 注意看这里!原始代码仓库地址:https://github.com/klaus01/KLGenerateSpamCode

新增功能

除了已有的图片资源递增修改、修改工程名、类前缀修改(修改了遍历方案)外,还加了一些*东西

0、直接在工程中添加垃圾代码,垃圾代码的规则可自己修改脚本代码自定义

1、混淆随机添加垃圾代码、参数

2、修改方法名前缀

3、修改方法名,使用plist文件创建原始方法名仓库,共有6^6个方法名可以配置,随机方法名配参数

4、删除垃圾代码。以脚本前缀为索引

5、混淆概率

注意点

1、这个工程里的方法名前缀只适应我们自己的工程,因为我们的工程方法名是前缀_xxx这类格式的,所以不要再问为什么没有资源改变了兄dei。没有执行的代码,麻烦看看main函数里是不是注释掉了,先看代码,再发问。

2、api名字是随机从6^6个方法名生成的,可以在plist文件中修改

使用方法

和原来的轮子一样,先配置启动参数再运行,如图

image_0 参数解释:

1.工程代码的绝对路径

2.-modifyProjectName [原工程名]>[新工程名]

3.-modifyClassNamePrefix [xcodeproj文件的绝对路径,不是pod安装后的那个打开文件] [旧类前缀]>[新类前缀]

4.-spamCodeOut

5.-ignoreDirNames [需要忽略的文件夹],[需要忽略的文件夹] 注意,Pods文件夹不在混淆范围内,不需要写

6.-handleXcassets (混淆图片文件)

7.-deleteComments (删除多余的空格和注释)

8.-chageAPIPrefix [旧方法名前缀]>[新方法名前缀] 注意,前缀要有“_”才能被识别,如果之前工程中没有xx_下划线开头来命名方法的,此项不要勾选

9.-modifyAPIName 改变api名字,注意是随机的,这个更改最好不要提交,只用来上架,一次性操作,否则可能增加后续维护的负担(看不懂方法名了)

此工程可以选择混淆概率,修改工程中kPercent数值。

详情

有关此工程的设计详情请看这篇文章传送门

实际测试

image_1

痛点

时间复杂度可以说是非常的高,跑起来运行时CPU占用率几乎达到百分百。好在这基本是一次性工具。。。

iosmixproject's People

Contributors

journeyyoung avatar

Watchers

 avatar  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.