php审计之命令注入(敏感函数法)

PHP脚本中,我们可以对输入进行注入攻击。

注入的种类有很多:
命令注入
Eval注入
客户端脚本攻击
跨网站脚本攻击
SQL注入攻击
动态函数注入攻击
序列化注入&对象注入

PHP注入漏洞
命令注入
Eval注入
客户端脚本攻击
跨网站脚本攻击
动态函数注入攻击
反序列化注入&对象注入
XXE

PHP中可以使用下列五个函数来执行外部的应用程序或函数(当然能实现这样的功能的手段不只是这5个函数)

  1. system()
  2. exec()
  3. passthru()
  4. shell_exec()
  5. proc_open()

实例

//显示所有错误信息
error_reporting(E_ALL); //error_reporting(0);

//是否存在安装目录
if (!file_exists($_SERVER["DOCUMENT_ROOT"].'/sys/install.lock')){
  header("Location: /install/install.php");
  exit;
}

//包含配置文件
include_once($_SERVER["DOCUMENT_ROOT"].'sys/lib.php');