漏洞总结:Ghidra 命令中的命令注入漏洞 漏洞概述 在 Ghidra 的 命令中,存在一个通过未 sanitization 的 DWARF 参数名导致的命令注入漏洞。当 Ghidra 分析包含恶意构造的 ELF 二进制文件时,DWARF 调试信息中的 的 字段会被直接用于构建 命令。由于该字段内容未经过过滤,攻击者可以嵌入任意 shell 命令(如 ),在调试器检查二进制文件时静默执行。 影响范围 受影响组件:Ghidra 的 命令(用于打印函数参数) 触发条件:分析包含恶意 DWARF 调试信息的 ELF 二进制文件 严重程度:高(可导致任意命令执行) 修复方案 1. 使用安全的 API:避免直接使用 执行未过滤的字符串。 2. 参数化查询:使用 命令的 占位符进行参数化,避免 shell 语法解析。 - 修改前: - 修改后: 并确保 通过 安全传递。 3. 代码变更: - 在 中,将 替换为更安全的调用方式。 - 在 中,对 使用 和 进行安全处理。 POC 代码