PHP命令注入攻击基础

  • A+
所属分类:安全博客

命令注入攻击(Command Injection),是指黑客通过利用HTML代码输入机制缺陷(例如缺乏有效验证限制的表格域)来改变网页的动态生成的内容。从而可以使用系统命令操作,实现使用远程数据来构造要执行的命令的操作。

PHP中可以使用下列四个函数来执行外部的应用程序或函数:system、exec、passthru、shell_exec,四个函数的原型如下:

1
string system(string command, int &return_var)

command 要执行的命令; return_var 存放执行命令的执行后的状态值。

1
string exec (string command, array &output, int &return_var)

command 要执行的命令,output 获得执行命令输出的每一行字符串,return_var 存放执行命令后的状态值。

1
void passthru (string command, int &return_var)

command 要执行的命令,return_var 存放执行命令后的状态值。

1
string shell_exec (string command)

command 要执行的命令,如下例所示,表示通过提交http://www.sectop.com/ex1.php?dir=| cat /etc/passwd操作,执行命令变成了system(“ls -al | cat /etc/passwd”),输出/etc/passwd 文件的具体内容。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
   //ex1.php 

<?php

$dir = $_GET[""];

if (isset($dir))

{

echo "";

​ system("ls -al ".$dir);

echo "";

}

?>

FROM :https://ailumao.cn/ | Author:Ailumao

相关推荐: Socks代理实战(1)

Socks代理实战·1/01 Socks代理介绍SOCKS是一种网络传输协议,主要用于客户端与外网服务器之间通讯的中间传递 SOCKS属于会话层协议,使用TCP协议传输数据所以不支持ICMP信息之类的网络服务(所以没有办法使用ping扫描以及使用ICMP的传输…

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: