「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》
Command Injection
- 一、Low级别
- 二、Medium级别
- 三、High级别
命令注入这关是一个Ping测试功能,用户在输入框提交的内容,后被后台当做命令执行,并将执行结果显示在页面。
一、Low级别
低级别没有过滤,使用逻辑运算符拼接命令即可,payload:
; pwd
复制到输入框,点击 Submit
能看到命令执行成功的结果,就算过关
其他逻辑运算符也可以用,payload:
& pwd
| pwd
|| pwd
二、Medium级别
中级别过滤了 &&
和 ;
使用其他逻辑运算符绕过即可,payload:
& pwd
| pwd
|| pwd
三、High级别
高级别过滤了更多的字符
突破口在 |
的过滤,仔细观察上面代码过滤的地方就能发现,|
后面还有一个空格,我们不加空格就不会被过滤,payload:
|pwd
||
后面加空格也可以,payload:
|| pwd
原因是:代码按照从上往下的顺序执行,我们输入 || pwd
,在走到第三个过滤的时候,会把后边的|+空格
过滤掉,过滤后还剩下 |pwd
,后面的过滤条件就匹配不上了。