在现代编译器中,控制流是优化的关键环节之一。LLVM(Low Level Virtual Machine)作为一个强大的编译器框架,提供了多种工具来优化代码。其中,SplitAllCriticalEd...
从源码视角分析Arkari间接跳转混淆
本文仅对Arkari用于混淆的pass的源码分析和讲解,没有提供去除混淆的方案,请需要去混淆的师傅自己想出解决方案,希望分析能够帮到各位师傅。文章大部分对源码的解释都直接以注释的形式写在代码中。PS:...
交互式反混淆:打造最强控制流平坦化分析交互式插件 | 第三期 | 混淆与反混淆
交互式UI的优点:支持自动分析支持人工调整分析结果支持人工调整修补结果支持动态导航地址交互式 UI 最大程度应对编译优化(例如共用尾部基本块、部分平坦化、多分发器)、定制变种修改(状态变量复杂化、过程...
【SDL实践指南】Fortify控制流巧用之XXE规则调试记录
文章前言在Fortify执行静态代码扫描时会加载默认规则和自定义规则目录下的自定义规则内容,输出结果中不仅有默认规则的众多的安全问题还会有自定义规则扫描出来的问题,如果我们想要只扫描我们自定义的规则那...
【硬核来袭!】程序分析与反混淆【已完结】
本期课程以 Angr 符号执行技术为核心,对多种常见二进制混淆技术建模分析,包括间接跳转混淆、字符串混淆、虚假控制流混淆、控制流平坦化混淆以及过程间混淆等实际生产环境中常见的二进制混淆技术。课程从混淆...
Angr 构建污点分析 x 反混淆
污点分析 污点分析(Taint Analysis)是一种广泛应用于软件安全和漏洞检测领域的程序分析技术。其核心思想是通过追踪程序中不可信或敏感数据(称为“污点数据”)的传播路径,识别这些数据是否可能被...
国外红队大佬内核+系统级后门维持骚姿势【附代码】
使用代码混淆避免检测 代码混淆是一种使源代码或机器代码难以理解的技术。攻击者通常采用这种做法来隐藏恶意代码(如后门),以防安全分析师、自动分析工具和其他检测机制发现。其主要目的是防止代码...
Lumma Stealer 信息窃取程序的反混淆
介绍Lumma Stealer 是一种存在已有数年的信息窃取程序,并且一直在 MalwareBazaar 等网站的统计中名列前茅,是分布最广的恶意软件家族之一。Lumma Stealer 首次发布时,...
一文看懂关于逆向中的干扰分析技术!
前言逆向分析在网络安全技术中算是较难一块的了,但其运用场景也及其丰富,不光是日常破解还是CTF竞赛都是不可获取的,但往往在拿到某一程序时会发现,开发者并不会简单的将他开发的程序任人摆布,还会加入一些干...
源代码安全审计研究
【摘 要】 源代码是软件的根本,其存在的安全缺陷是导致软件出现漏洞的根源所在,人为因素的影响使得每个应用程序的源代码都可能存在安全漏洞。从根本意义上来说,代码审计就是挖掘源代码中存在的代码安全问题。本...
phi指令在控制流平坦化的修复
这里填充错了,后面只能改20个字,😓,统称为科学技术,简称科技。实际二者既有密切联系,又有重要区别。科学解决理论问题,技术解决实际问题。⊙1.修复原因⊙2.修复过程⊙3.注意点1.修复原因在控制流平坦...
基于 LLVM 的虚拟化二进制文件去混淆
LLVM-powered deobfuscation of virtualized binaries这项工作是在 Thalium 进行的实习期间完成的,主题是虚拟化二进制文件的去混淆。背景混淆是故意使...