php 代码审计之变量覆盖
Posted p201521410042
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 代码审计之变量覆盖相关的知识,希望对你有一定的参考价值。
(一)parse_str()—将字符串解析到变量中
<?php $a=‘‘; parse_str($_SERVER[‘QUERY_STRING‘]); //$_SERVER[‘QUERY_STRING‘] 保存url的查询部分 print $a; ?>
?a=1 即可完成覆盖
(二)extract()—从数组中将变量导入
<?php $a = ‘‘; extract($_GET); print $a; ?>
?a=1即可完成覆盖
(三)import_request_variables()—将 GET/POST/Cookie 变量导入到全局作用域中 >php 4.1.0 <php 5.4.0
<?php //>php4.1.0 <php5.4.0 $a = ‘0‘; import_request_variables(‘G‘); print $a; ?>
在相应版本内?a=1即可覆盖
(四)register_globals=on <php 5.3
?a=1可直接覆盖 —— 将变量初始化避免此问题
以上是关于php 代码审计之变量覆盖的主要内容,如果未能解决你的问题,请参考以下文章