iOS Hacker obfuscator-llvm Xcode集成配置
生活随笔
收集整理的這篇文章主要介紹了
iOS Hacker obfuscator-llvm Xcode集成配置
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一、簡(jiǎn)介
obfuscator-llvm 是一個(gè)開源的代碼混淆編譯器,能夠使編譯出來(lái)的文件添加垃圾代碼和各種跳轉(zhuǎn)流程,給逆向分析者增加難度。
二、編譯
下載地址
目前最新版的是4.0的,下載地址是 https://github.com/obfuscator-llvm/obfuscator/tree/llvm-4.0,也可以用 git 下載。
安裝 cmake
OSX 下沒有 cmake,需要安裝,不然是不能編譯 obfuscator-llvm 的。下載地址是:http://www.cmake.org/download,我下的版本是3.4.3。下載完成之后,進(jìn)入到解壓之后目錄下,輸入以下命令進(jìn)行安裝
sudo ./bootstrap && sudo make && sudo make install編譯
git clone -b llvm-4.0 https://github.com/obfuscator-llvm/obfuscator.git mkdir build cd build cmake -DCMAKE_BUILD_TYPE=Release ../obfuscator/ make -j7編譯成功之后 clang 在 build 下的 bin 目錄。
三、集成到 Xcode 使用
修改 xcplugin
首先復(fù)制一個(gè) Obfuscator.xcplugin
cd /Applications/Xcode.app/Contents/PlugIns/Xcode3Core.ideplugin/Contents/SharedSupport/Developer/Library/Xcode/Plug-ins/ sudo cp -r Clang\ LLVM\ 1.0.xcplugin/ Obfuscator.xcplugin cd Obfuscator.xcplugin/Contents/ sudo plutil -convert xml1 Info.plist sudo vim Info.plist將以下鍵值修改一下
<string>com.apple.compilers.clang</string> -> <string>com.apple.compilers.obfuscator</string> <string>Clang LLVM 1.0 Compiler Xcode Plug-in</string> -> <string>Obfuscator Xcode Plug-in</string>修改 xcspec
執(zhí)行如下命令
sudo plutil -convert binary1 Info.plist cd Resources/ sudo mv Clang\ LLVM\ 1.0.xcspec Obfuscator.xcspec sudo vim Obfuscator.xcspec將以下鍵值修改一下
<key>Description</key> <string>Apple LLVM 8.0 compiler</string> -> <string>Obfuscator 4.0 compiler</string> <key>ExecPath</key> <string>clang</string> -> <string>/path/to/obfuscator_bin/clang</string> <key>Identifier</key> <string>com.apple.compilers.llvm.clang.1_0</string> -> <string>com.apple.compilers.llvm.obfuscator.4_0</string> <key>Name</key> <string>Apple LLVM 8.0</string> -> <string>Obfuscator 4.0</string> <key>Vendor</key> <string>Apple</string> -> <string>HEIG-VD</string> <key>Version</key> <string>7.0</string> -> <string>4.0</string>修改 English.lproj
執(zhí)行如下命令
cd English.lproj/ sudo mv Apple\ LLVM\ 5.1.strings "Obfuscator 3.4.strings" sudo plutil -convert xml1 Obfuscator\ 3.4.strings sudo vim Obfuscator\ 3.4.strings 將以下鍵值修改一下將以下鍵值修改一下
<key>Description</key> <string>Apple LLVM 8.0 compiler</string> -> <string>Obfuscator 4.0 compiler</string> <key>Name</key> <string>Apple LLVM 8.0</string> -> <string>Obfuscator 4.0</string> <key>Vendor</key> <string>Apple</string> -> <string>HEIG-VD</string> <key>Version</key> <string>7.0</string> -> <string>4.0</string>最后執(zhí)行以下命令就大功告成了
$ sudo plutil -convert binary1 Obfuscator\ 3.4.strings去 Xcode 里看下編譯設(shè)置
然后添加 obfuscation flags
四、效果
混淆之后,用靜態(tài)工具分析效果如下圖:
總結(jié)
以上是生活随笔為你收集整理的iOS Hacker obfuscator-llvm Xcode集成配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用fastcoll进行md5碰撞,两个
- 下一篇: iOS Hacker 动态库 dylib