0x01: 命令执行代码分析
以下使用php代码,对知道目标进行Ping 命令。
<?php
echo "<pre>";
$arg = $_GET['cmd'];
if($arg){
system("ping -c 4 $arg");
}
echo "<pre>";
?>
0x02: 命令执行漏洞思路
代码中拼接用户的输入并代码system函数执行,但是无法执行用户 的自定义命令
思路:截断输入,重新拼接。两条命令都输入并执行。
0x03: LInux 系统支持的管道符如下
“;”:执行完前面的语句在执行后面的语句。 例如: ping 127.0.0.1 ; whoami
| :显示后面的语句的执行结果。 例如 : ping 127.0.0.1 | whoami
” || “ :当前面的语句执行出错时,执行后面的语句。 例如 : ping 1 || whoami
” & “ : 如果前面的语句为假直接执行后面的语句,前面的语句可真可假,例如: ping 127.0.0.1 & whoami
” &&" :如果前面的语句为假直接出错,也不执行后面的,前面的语句只能为真。 例如:ping 127.0.0.1 && whoami。
0x04: 命令注入工具介绍(Commix)
Commix 是一个使用Python 开发的漏洞测试工具,这个工具是为了方便的检测一个请求是否存在命令注入漏洞,并且对其进行测试,作者发布的最新版本中支持直接导入Burp的历史记录进行检测。
项目地址: http://github.com/stasinopoulos/commix
kali linux 自带commix可以直接使用
commix -h 获取帮助信息