5

PHP代码审计学习-1

 2 years ago
source link: https://antipassion.github.io/2021/10/24/PHP%E4%BB%A3%E7%A0%81%E5%AE%A1%E8%AE%A1%E5%AD%A6%E4%B9%A0-1/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
PHP代码审计学习-1 | 林中小屋

审计时可能会涉及到的超全局变量

$GLOBALS;$_SERVER;$_REQUEST;$_POST;$_GET;$_FILES;$_ENV;$_COOKIE;$_SESSION    

各个变量作用说明

(1) $GLOBALS 引用全局作用域中可用的全部变量

在一个php脚本的全部作用域全都可以访问到,$GLOBALS是一个包含了全部变量的全局组合数组。变量的名字就是数组的键。

(2) $_SERVER

是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations) 等等信息的数组。这个数组中的项目由web服务器创建。不能保证每个服务器都会提供给我们完整的信息;服务器可能会忽略一些,也可能会提供一些没有列举在此处的信息给我们。

以下列出了所有$_SERVER变量中的重要元素:

$_SERVER['PHP_SELF'] #当前正在执行 脚本的文件名,与 document root相关。

$_SERVER['argv'] #传递给该 脚本的参数。

$_SERVER['argc'] #包含传递给程序的 命令行参数的个数(如果运行在命令行模式)。

$_SERVER['GATEWAY_INTERFACE'] #服务器使用的 CGI 规范的版本。例如,“CGI/1.1”。

$_SERVER['SERVER_NAME'] #当前 运行脚本所在服务器 主机的名称。

$_SERVER['SERVER_SOFTWARE'] #服务器标识的字串,在响应请求时的头部中给出。

$_SERVER['SERVER_PROTOCOL'] #请求页面时通信协议的名称和版本。例如,“HTTP/1.0”。

$_SERVER['REQUEST_METHOD'] #访问页面时的请求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。

$_SERVER['QUERY_STRING'] #查询(query)的字符串。

$_SERVER['DOCUMENT_ROOT'] #当前 运行脚本所在的文档根目录。在服务器配置文件中定义。

$_SERVER['HTTP_ACCEPT'] #当前请求的 Accept: 头部的内容。

$_SERVER['HTTP_ACCEPT_CHARSET'] #当前请求的 Accept-Charset: 头部的内容。例如:“iso-8859-1,*,utf-8”。

$_SERVER['HTTP_ACCEPT_ENCODING'] #当前请求的 Accept-Encoding: 头部的内容。例如:“gzip”。

$_SERVER['HTTP_ACCEPT_LANGUAGE']#当前请求的 Accept-Language: 头部的内容。例如:“en”。

$_SERVER['HTTP_CONNECTION'] #当前请求的 Connection: 头部的内容。例如:“Keep-Alive”。

$_SERVER['HTTP_HOST'] #当前请求的 Host: 头部的内容。

$_SERVER[' HTTP_REFERER'] #链接到当前页面的前一页面的 URL 地址。

$_SERVER[' HTTP_USER_AGENT'] #当前请求的 User-Agent: 头部的内容。

$_SERVER['HTTPS'] — 如果通过https访问,则被设为一个非空的值(on),否则返回off

$_SERVER['REMOTE_ADDR'] #正在浏览当前页面用户的 IP 地址。

$_SERVER['REMOTE_HOST'] #正在浏览当前页面用户的 主机名。

$_SERVER['REMOTE_PORT'] #用户连接到服务器时所使用的端口。

$_SERVER['SCRIPT_FILENAME'] #当前执行 脚本的 绝对路径名。

$_SERVER['SERVER_ADMIN'] # 管理员信息

$_SERVER['SERVER_PORT'] #服务器所使用的端口

$_SERVER['SERVER_SIGNATURE'] #包含服务器版本和 虚拟主机名的字符串。

$_SERVER['PATH_TRANSLATED'] #当前 脚本所在文件系统(不是文档根目录)的基本路径。

$_SERVER['SCRIPT_NAME'] #包含当前 脚本的路径。这在页面需要指向自己时非常有用。

$_SERVER['REQUEST_URI'] #访问此页面所需的 URI。例如,“/index.html”

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK