OLLVM简单理解
OLLVM简单理解OLLVM是什么?OLLVM 是一个基于 LLVM 编译器框架的开源代码混淆工具,旨在通过多种混淆技术增强程序的安全性,使逆向工程(反编译、反汇编)变得更加困难。 OLLVM 的核心功能OLLVM 通过修改 LLVM 的中间表示(IR),在编译阶段对代码进行混淆,主要支持以下技术: 控制流平坦化(Control Flow Flattening) 将程序的控制流图(CFG)转换为 状态机 结构,使分支和循环逻辑变得难以分析。 指令替换(Instruction Substitution) 将简单的算术运算(如 +, -, *****, /)替换为更复杂的等效表达式。 虚假控制流(Bogus Control Flow) 插入 永远不会执行 的代码块(基于恒真/假条件),干扰逆向分析工具。 字符串加密(String...
Ptrace的简单实现(出题小计)
Ptrace的简单实现(出题小计)参考文章: 威力巨大的系统调用——ptrace 系统学习vm虚拟机逆向 偶然间看到一个有关ptrace的题目,对ptrace有点兴趣,于是研究了一下Ptrace的简单实现,下面是我写的一个简单的逆向Ptrace题目(Ptrace+VM) 一.Ptrace的父子进程的实现1.父进程(father)12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061#include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/ptrace.h> //提供ptrace系统调用的接口#include <sys/types.h> //定义系统相关的数据类型 #include <sys/wait.h> ...
初探Windows驱动逆向
初探Windows逆向参考文章链接: Windows驱动快速入门 Windows 驱动之IRP Windows驱动程序逆向工程方法 Windows内核驱动程序静态逆向工程的方法论 Windows驱动开发(三)—— 驱动和应用层通信的几种方式 前置知识动因分析 执行驱动程序分析时,收集以下信息很重要: 识别DriverEntry并确定 IRP 调度处理程序。 确定驱动程序是否附加到另一个设备以过滤/拦截其 I/O 请求。如果是这样,目标设备是什么? 确定DeviceName. 识别所有 IOCTL 代码及其相应的功能。确定他们使用什么缓冲方法。 尝试了解所有部分是如何组合在一起的。 Windows 驱动之IRP什么是IRP:I/O request...




![[2025软件系统安全赛]HappyLock](/img/%E5%8A%A8%E6%BC%AB%E5%B0%91%E5%A5%B3-%E5%AE%A4%E5%86%85%E5%9C%BA%E6%99%AF.png)
![[流量分析]2024强网杯-谍影重重5.0](/img/image_download_1733483405943_compressed.jpg)
![[SHCTF2024]easyLogin](/img/Image_437531313133693_compressed.jpg)

