什么是命令注入(command injection)?
https://b1ngz.github.io/java-os-command-injection-note/
如何防御命令注入(command injection)
方法1 白名单校验命令参数
方法2 单引号禁止命令注入
一般情况下尽可能使用白名单彻底解决命令注入风险,但是存在某些场景白名单不支持,例如 命令参数是设备密码,不能用白名单 限制特殊字符(&& || | ;等特殊字符),这时可以考虑使用单引号禁止命令解析功能。
https://b1ngz.github.io/java-os-command-injection-note/
方法1 白名单校验命令参数
方法2 单引号禁止命令注入
一般情况下尽可能使用白名单彻底解决命令注入风险,但是存在某些场景白名单不支持,例如 命令参数是设备密码,不能用白名单 限制特殊字符(&& || | ;等特殊字符),这时可以考虑使用单引号禁止命令解析功能。