Help us learn about your current experience with the documentation. Take the survey.

操作系统命令注入

描述

可以在目标应用服务器上执行任意的操作系统命令。 操作系统命令注入是一种严重的安全漏洞,可能导致整个系统被完全控制。

修复建议

切勿在执行操作系统命令的命令或命令参数构造中使用用户输入。这包括用户上传或下载提供的文件名。

确保您的应用程序不会:

  • 使用用户提供的信息作为进程名来执行。
  • 在操作系统命令执行函数中使用用户提供的信息,而不转义 shell 元字符。
  • 在操作系统命令的参数中使用用户提供的信息。

应用程序应该有一组硬编码的参数,这些参数将传递给操作系统命令。如果要将文件名传递给这些函数,建议使用文件名的哈希值或其他唯一标识符。由于对第三方命令存在未知攻击的风险,强烈建议使用实现相同功能的原生库,而不是使用操作系统系统命令。

详情

ID 聚合 CWE 类型 风险
78.1 false 78 Active high

链接