IOS代码混淆:Hikari 加固使用教程

1、下载pkg安装文件: https://github.com/HikariObfuscator/Hikari/releases

安装成功Toolchains会出现Hikari选项

IOS代码混淆:Hikari 加固使用教程


2、将项目中所有target(包括pod进来的三方库)Enable Index-While-Building Functionality设为NO

主工程可以参照下面截图设置


IOS代码混淆:Hikari 加固使用教程


pod的第三方库,在podfile设置


IOS代码混淆:Hikari 加固使用教程


3、在 Build Settings -> Other C Flags 中加入混淆标记:

-mllvm -enable-bcfobf 启用伪控制流

-mllvm -enable-cffobf 启用控制流平坦化

-mllvm -enable-splitobf 启用基本块分割

-mllvm -enable-subobf 启用指令替换

-mllvm -enable-acdobf 启用反class-dump

-mllvm -enable-indibran 启用基于寄存器的相对跳转,配合其他加固可以彻底破坏IDA/Hopper的伪代码(俗称F5)

-mllvm -enable-strcry 启用字符串加密

-mllvm -enable-funcwra 启用函数封装

-mllvm -enable-allobf 依次性启用上述所有标记

IOS代码混淆:Hikari 加固使用教程


4、编译完成后混淆就完成了,可以用hopper工具进行对比

编译可能出现问题:

ps:我用的xcode10,Hikari.xctoolchain的clang版本太低,会出现如下报错:

IOS代码混淆:Hikari 加固使用教程

进入/资源库/Developer/Toolchains/,找到Hikari.xctoolchain右键显示包内容,进入usr/lib/clang,里面有两个文件夹,分别是7.0.0和10.0.0,把7.0.0删除,把10.0.0重命名为7.0.0,编译就通过了

展开阅读全文

页面更新:2024-05-24

标签:代码   寄存器   资源库   字符串   平坦   俗称   截图   指令   文件夹   函数   标记   选项   版本   文件   工具   教程   数码

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top