命令执行漏洞介绍及利用
目录
命令执行漏洞原理
web应用程序接受用户输入,拼接到要执行的系统命令中执行
产生原理:
1.用户输入未过滤或净化
2.拼接到系统命令中执行
PHP下命令执行函数
- system
- exec
- shell_exec
- passthru
- popen
- proc_popen
提示:某些情况下,要注意以上函数的php文件,有可能是webshell
命令执行漏洞代码分析
<?php
echo"<pre>";
if(isset($_GET["cmd"])){
system($_GET["cmd"]);
echo"</pre>";
}
实例演示-获取网卡信息
命令执行漏洞利用思路
代码中拼接用户输入并代码system函数执行,但是无法直接执行用户的自定义命令。这时我们要采取截断输入,重新拼接。
命令执行漏洞拼接符介绍
& 前面的语句为假则直接执行后面的
&& 前面的语句为假则直接出错,后面的也不执行
| 直接执行后面的语句
|| 前面出错执行后面的
; 前面的执行完执行后面的(linux系统)
命令执行示例代码分析
<?php
echo“<pre>”;
$arg = $_GET['cmd'];
ig($arg){
system("ping -c 4 $arg");
}
echo"</pre>";
?>
实例演示-拼接符使用
http://192.168.1.103/cmd.php?cmd=1270.0.1;ifconfig