iOS虽然安全系统比较高,但也有很多方法破解,比如class-dump-z、Clutch、Hopper
Disassembler等。我们也可以使用一些方法,提高被破解的难度。

<>一、防止 tweak 依附

在 Xcode 里面工程配置 build setting 选项中将
-Wl,-sectcreate,__RESTRICT,__restrict,/dev/null
添加到Other Linker Flags

<>二、检测越狱设备上是否有针对性 tweak

在工程的main函数里加判断,读取/Library/MobileSubstrate/DynamicLibraries下所有的 plist
文件的内容,查看其中的plist是否有该项目的bundle id,如果有,可能是有人想利用 tweak分析app,可以直接把让App Crash。

<>三、防 http 抓包

将 NSURLSessionConfiguration 的 connectionProxyDictionary
设置成空的字典,如果使用AFNetWorking的使用方法
// 继承 AFHTTPSessionManager,重写下列方法 -
(instancetype)initWithServerHost:(PDLServerHost*)serverHost { #ifdef DEBUG //
debug 版本的包仍然能够正常抓包 self = [super initWithBaseURL:serverHost.baseURL]; #else //
由于使用 ephemeralSessionConfiguration session 发起的请求不带 cookie 和使用缓存等
NSURLSessionConfiguration *conf = [NSURLSessionConfiguration
ephemeralSessionConfiguration]; conf.connectionProxyDictionary = @{}; self =
[super initWithBaseURL:serverHost.baseURL sessionConfiguration:conf]; #endif
return self; }
<>四、代码混淆

1.添加无用代码
2.对类名、方法进行混淆 <https://blog.csdn.net/yiyaaixuexi/article/details/29201699>

<>五、其余方法

1.使用静态内连 C 函数
2.使用 block
3.使用 Swift 开发
这些方法也都能提高被破解的难度。

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信