程序逆向

xdbg + IDA过Windows API反调试

1、反调试技术基本概念许多软件为防止被破解,阻止调试器的分析,会使用反调试技术来检测自身是否正在被调试,或采取一系列手段让调试器失效,从而增加调试分析时间和复杂度。常见的反调试手段大致可以分为检测、干...
阅读全文
程序逆向

IDA 技巧(70) 多重高亮

在之前的IDA版本中,已经有了高亮功能,并且可以选择锁定它,以便在浏览数据库时保持固定。在IDA 7.7中,这个功能得到了改进,现在你可以同时激活多个高亮!设置高亮基本用法保持不变:高亮任何你想要的字...
阅读全文
程序逆向

IDA 技巧(69) 拆分表达式

在使用反编译器时,有时您可能会在上下文菜单中看到名为拆分表达式的项目。它的作用是什么,在哪些情况下有用呢?让我们来看两个可以应用的例子。结构字段初始化现代编译器执行许多优化以加快代码执行速度。其中之一...
阅读全文
程序逆向

IDA 技巧(68) 可跳过指令

在编译代码中,有时会发现一些指令并不直接代表程序员编写的代码,而是由编译器为了自身目的或程序执行环境的要求而添加的。可跳过指令的种类编译函数通常在开始时有序言指令,用于执行各种记录操作,例如:保存函数...
阅读全文
程序逆向

IDA 技巧(66) 反编译器注释

当你在反编译器中处理伪代码时,可能会注意到变量声明和提示中有一些内容略显神秘的注释。那么它们是什么意思呢?Image虽然有些注释的含义显而易见,但有些则不那么明显,还有一些仅在罕见情况下出现。变量位置...
阅读全文
程序逆向

IDA 技巧(65) 栈帧视图

栈帧是由当前函数管理的栈的一部分,包含该函数使用的数据。背景栈帧通常包含以下数据:局部和临时变量;传入参数(对于使用栈传递参数的调用约定);保存的易失性寄存器;其他记录信息(例如x86上的返回地址)。...
阅读全文
程序逆向

IDA 技巧(64) 全屏模式

全屏模式虽然不常用,但在使用单个显示器或笔记本电脑处理复杂的IDA布局时可能会很有帮助。例如,当你需要阅读一长串列表行而不想一直滚动时,这个功能就显得尤为实用。这个功能有些隐藏,但在视图菜单中确实可以...
阅读全文