在 gdb 中分析恶意代码是否会带来安全风险?

信息安全 恶意软件 linux 逆向工程 外壳代码 调试
2021-09-06 20:28:39

我遇到了恶意 Shell-Code & 我已将 shellcode 移植到可以运行 shellcode 的兼容 C 代码中,我使用它编译它 gcc -fno-stack-protector -z execstack shellcode.c -o code提供输出 ELF 文件code,我计划使用gdb ./code命令分析文件以查看功能 &研究 Shell-Code。

现在我的问题是在 gdb 中运行的不受信任的 ELF 文件是否会导致文件在 gdb 之外执行?因为如果外壳代码是rm -rf / --no-preserve-root安全暗示或使用远程连接的外壳代码也是威胁,那么命令gdb ./code是否完全运行代码或只是简单地将代码移植到 gdb,因为之后我可以使用断点在执行 shell 代码之前进行分析。

任何答案将不胜感激。

1个回答

确实如此。 gdb根本不会隔离该过程,只会让您对其进行一些控制以了解它的作用。

要进行这种分析,您应该求助于完全隔离的系统,例如没有网络访问权限的 VM。

断点将受到尊重,但您应该始终考虑可能产生严重后果的人为错误。如果您足以安全地调试未知的混淆程序,则无需运行它,因为您只需阅读代码即可知道它的作用,这将是无风险的。