DVWA 命令注入从 Low 到 Impossible 教程及源码分析
1. Low 级别
127.0.0.1; ls -la
防护措施: 使用 escapeshellarg()
或 escapeshellcmd()
函数对用户输入进行转义。
源码分析:
没有对用户输入做任何限制
2. Medium 级别
输入 127.0.0.1 || ls -la
源码分析:
过滤了&&
;
修复建议:
使用更严格的输入验证,例如只允许 IP 地址格式的输入。
使用白名单机制,只允许特定的字符或命令。
3. High 级别
输入 |ls
**源码分析:**他给| 空格
过滤了,所以直接用|
绕过
4. Impossible 级别
在 Impossible 级别,DVWA 通过严格的输入验证和白名单机制彻底修复了命令注入漏洞。