没有“明显”先前指令的指令

逆向工程 艾达 x86
2021-06-29 14:55:48

我正在处理教育“bomb.exe”文件,您必须在其中输入正确的输入来拆除炸弹。这只能通过反转可执行文件来完成。文件运行时没有提示。

我遇到了这两个随机跳转指令,它们似乎是从程序流程中插入的。它们存在的理由是什么?这是未优化编译的副产品吗?如果他们是故意在那里,那么哪个指令指向这些?

神秘的入口 整个功能 + 到/从位置

感谢任何帮助!

查看“平面”视图,似乎没有从任何地方调用它们。如果有人怀有恶意,这些跳转是否会成为恶意代码注入的站点?似乎如果它们连接到正确的流,注入的代码乍一看不会被注意到。如果我应该为这个问题打开另一个线程,我也可以这样做。

平面视图

1个回答

平面视图很明显:“挂起”跳转是函数的一部分,但 IDA 检测到它们不可访问,因为它们之前的函数调用(exitbombExplodes)没有返回。如果您真的想在“正确”图中看到跳转,您可以从这些函数中清除不返回标志,但这会有些人为,因为在正常执行流程中无法访问这些指令。