环境
vmware虚拟机,ubuntu20.04
ollvm定义
LLVM(Low Level Virtual Machine)是一个开源的编译器基础架构,它包含了一组模块化、可重用的编译器和工具,支持多种编程语言和目标架构,包括x86、ARM和MIPS等。LLVM的核心思想是将编译器分为前端和后端两个部分,前端负责将源代码转换为中间表示(IR),后端负责将中间表示转换为目标机器的汇编代码。这种设计使得LLVM可以支持多种编程语言,因为只需要为每种语言编写一个前端,就可以利用后端的通用性支持多种目标架构。
OLLVM(Obfuscator-LLVM)是瑞士西北应用科技大学安全实验室于2010年6月份发起的一个项目,这个项目的目标是提供一个LLVM编译套件的开源分支,能够通过代码混淆和防篡改,所使用的编译器是clang。
搭建ollvm环境
ollvm github仓库
https://github.com/obfuscator-llvm/obfuscator
git下载ollvm源码
git clone -b llvm-4.0 --depth=1 https://github.com/obfuscator-llvm/obfuscator.git
配置编译工具
cmake , gcc , g++
cmake
去官网下载cmake或者直接sudo安装
sudo apt install cmake
安装 gcc-8 g+±8 降低版本
查看gcc和g++版本,若为9则要降低版本

安装gcc-8和g+±8
sudo apt-get install gcc-8 g++-8 -y
配置软件的优先级,可以根据需要去选择默认的版本
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 8
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 9
gcc切换版本 默认gcc 8
sudo update-alternatives --config gcc
输入选择版本的数字


本文详细介绍了如何在Ubuntu20.04环境下搭建OLLVM(Obfuscator-LLVM)编译套件,涉及Git克隆、CMake配置、GCC版本管理、OLLVM源码修改、编译过程以及混淆技术,包括使用NDK和Angr进行代码混淆的步骤。
最低0.47元/天 解锁文章
3233

被折叠的 条评论
为什么被折叠?



