命令执行

375 字

命令执行

命令执行是应用把用户输入交给操作系统命令解释器处理,导致攻击者影响服务器执行的系统命令。

常见入口

图片处理、压缩解压、PDF 转换、网络诊断、备份恢复、Git 操作、系统管理面板、插件执行器等功能,都可能在后端调用系统命令。

危险信号 说明
参数进入命令行 文件名、地址、选项由用户控制
使用 Shell 拼接 字符串拼接后交给解释器
回显系统信息 返回命令输出、路径、用户、环境变量
权限过高 Web 进程拥有过多系统权限

风险影响

命令执行的影响通常很高,可能读取服务器文件、控制业务数据、横向访问内网、植入持久化任务,甚至完全接管服务器。它往往由一个“小功能”引出,比如在线 ping、图片裁剪或文档预览。

防护要点

优先使用语言内置库完成任务,避免调用 Shell。必须调用外部程序时,使用参数数组而不是字符串拼接,对可选参数做白名单,并用低权限用户、容器隔离、超时限制和审计日志降低影响。

Licensed under CC BY-NC-SA 4.0