Python-编写Python脚本进行iOS代码混淆(iOS防黑加固之代码混淆篇)

前言

最近一直在看Python,也很喜欢Python的灵活性;今天主要想说的是iOS的代码混淆,为什么想做代码混淆?为了APP的安全,为了防止别人破壳轻易破解我们代码;还有就是做 马甲包 了,我们知道马甲包的市场需求很大,但是不能花费过多的精力在开发上,毕竟只是个马甲,没必要花费太多的成本!

混淆工具

网上搜了一下,开源免费的混淆都在转载 念茜大姐大 的 sh脚本 的混淆方法,或者在念茜的脚本基础上二次开发,大家去看过就知道念茜的这篇博客是在14年写的,那时我刚做iOS没多久 ,而且那时候中国区审核还没有那么严格,若果你现在还使用那种方法进行混淆,你肯定会收到苹果的 2.3.1 大礼包 ,所以我们还是探索别的混淆方法吧,不要再挖坟了!

我这里主要是通过Python写的混淆工具,具体功能有方法混淆、属性混淆、类名混淆、添加垃圾代码、删除注释、修改资源文件Hash值、 加密字符串 、翻新资源名、 模拟人工混淆 、混淆文件名、混淆文件目录、混淆词库、混淆日志、映射列表、图片压缩、爬虫服务,具体的如下:

软件界面

1.下载地址:

链接: pan.baidu.com/s/1esdfDdjO… 密码:2lbr

:clap::clap::clap:进群免费拿邀请码:clap::clap::clap:365152048:clap::clap::clap:

2.教学视频:

链接: pan.baidu.com/s/1pqUkgU8Y… 密码:9sll

开始混淆

import addRubbishCode    as addCode
import cunfusionObjName  as conObjN
import confusionFun      as conFunc
import cunfusionProperty as conPro
import confusionLog      as conLog
import deleteNotes       as delNot
import updateSourceHash  as updHash
import encryptString     as encStr
import sourceName        as soName
import missFolder
from singletonModel import ZFJPersoninfo

def start_fun(file_dir, funMap = {}):
	personinfo = ZFJPersoninfo()
	personinfo.isMissing = True
	if len(file_dir) == 0:
		return
	if int(funMap['property']) > 0:
		# 混淆属性
		conLog.tips('*' * 30 + 'Fun:开始混淆属性' + '*' * 30)
		conPro.startConfusionPro(file_dir)

	if int(funMap['funName']) > 0:
		# 混淆方法
		conLog.tips('*' * 30 + 'Fun:开始混淆方法' + '*' * 30)
		conFunc.startConfusionFun(file_dir)

	if int(funMap['objName']) > 0:
		# 混淆类名
		conLog.tips('*' * 30 + 'Fun:开始混淆类名' + '*' * 30)
		prefix = funMap['funNamePref
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值