Tinia's Blog
testpic
返回首页
testpic
发表于
2025-07-24
|
更新于
2025-07-24
|
浏览量:
文章作者:
Tinia
文章链接:
http://example.com/2025/07/24/testpic/
版权声明:
本博客所有文章除特别声明外,均采用
CC BY-NC-SA 4.0
许可协议。转载请注明来源
Tinia's Blog
!
上一篇
使用ida脚本去除ollvm混淆
纸上得来终觉浅。尝试一下通过ida脚本解ollvm混淆。样本来自看雪 前言首先放上经典图片 函数的开始地址为序言(Prologue)的地址 序言的后继为主分发器(Main dispatcher) 后继为主分发器的块为预处理器(Predispatcher) 后继为预处理器的块为真实块(Relevant blocks) 无后继的块为retn块 剩下的为无用块与子分发器(Sub dispatchers) 举个例子,ollvm混淆前,程序的执行流程如下: 混淆后,变成: 我们要做的就是将其还原成: 分析接下来看样本。序言块如图所示。除了初始化W8外还初始化了W20-W28用于分发。 解ollvm混淆首先要找到主分发器,这里我们可以认为入度大于某个阈值的块即为主分发器。 针对这个样本,真实块的后继节点就是主分发器,通过一个无条件跳转跳转到主分发器。所以只需要通过寻找主分发器的前驱节点即可找到所有真实块。 真实块会在最后更新W8,可以以此作为根据来还原控制流。其更新的W8的Index所对应的真实块即为其真实后继。 对于真实块的index,可以通过真实块的前驱分发块来获取到真实...
下一篇
小白写给小白的wp-腾讯游戏安全竞赛2024安卓
0x0 逆向前的准备(本文中引用的代码基于UE4.27) 笔者是第一次接触虚幻引擎相关的逆向,所以这里先速览一下基础知识 先快速看一眼UE5的文档,核心的开发模型应该变化不会太大。 UE5文档速览直接看虚幻引擎术语。这里摘要自认为重要的地方 虚幻引擎术语 对象Object 是虚幻引擎中最基本的类。虚幻引擎中的几乎所有功能都继承自object(或使用其中的部分功能)。 在C++中,UObject 是所有object的基类,可以实施多种功能,例如垃圾回收、用于将变量提供给虚幻编辑器的元数据(UProperty)支持以及用于加载和保存的序列化。 ActorActor 是可以放到关卡中的任何object,例如摄像机、静态网格体或玩家出生点位置。 在C++中,AActor 是所有Actor的基类。 PawnPawn 是Actor的子类,作为游戏内的形象或人像(例如游戏中的角色)。玩家或游戏的AI可以控制Pawn,将其作为非玩家角色(NPC)。 角色角色(Character) 是计划用作玩家角色的Pawn Actor的子类。角色子类包括碰撞设置、双足运动的输入绑定以及用于玩家控制动作的其他...
Tinia
文章
4
标签
0
分类
0
Follow Me
公告
This is my Blog
最新文章
使用ida脚本去除ollvm混淆
2025-07-24
testpic
2025-07-24
小白写给小白的wp-腾讯游戏安全竞赛2024安卓
2025-07-24
Hello World
2025-07-22