漏洞形成的原因
原因
- 对一些高危函数没有做过滤或者权限限制不严格 是一种注入手段
判断
- 是否调用系统命令
- 函数和函数参数是否可控
- 是否可以拼接命令
常见的连接符 指令
& ----&之后的命令无论如何都会被执行
&& ----之前的命令执行成功才会被执行
| ----将第一输出作为第二输入 只print第二的执行结果
|| ----如果第一执行失败则执行第二指令
DVWA实操
Low模式
- 使用&&链接自己的命令 cobalstrike shellcode直接上线
Mudiem模式
- 发现做了字符过滤 过滤了&& 使用复写绕过
- 使用过滤规则绕过过滤规则 &;&
- 或者故意弄错第一个指令 使用单& 执行第二条命令

High模式
- 仔细分析 黑名单会不会多打了空格 这都是绕过的关键
漏洞的可利用性