杂
phps,可能可查看该php文件源码
index.php.bak:index.php文件备份名
php7.1+:类型不敏感,反序列化public属性可以直接赋给private
_GET
$_GET看成一个键值对数组(关联数组)
$_GET == array(‘id’=>1,‘name’=>‘xiao’)
函数引用 & 可以修改_GET....的值,不能修改_Request的值
在url传参时,传入的值都会被当做字符串处理(/?id=0,0不是0,而是"0")
isset判断的传参问题
php<8.0时
传入的参数名中.
和空格
都会被替换成下划线_
?a b.=1 --> 后端接收:a_b_=1;
如果参数中出现中括号[
,中括号会被转换成下划线_
,但是会出现转换错误导致接下来的非法字符不会继续转换成下划线_
PHP弱类型
https://www.cnblogs.com/Mrsm1th/p/6745532.html
a = QNKCDZO
md5(a) = 0e830400451993494058024219903391
b = 240610708
md5(b) = 0e462097431906509019562988736854
文件包含
include()、require()、include_once()、require_once()
include函数
:伪协议,文件上传
include()函数包含文件时会按路径./../../../../ffffllllaaaagggg来寻找文件
/i/l/?n=20&i=blog/2293037/202104/2293037-20210410174705799-1460846635.png
session文件包含
open_basedir是php.ini中的一个配置选项,它可将用户访问文件的活动范围限制在指定的区域
假设open_basedir=/var/www/html/:/tmp/,那么通过访问服务器的用户就无法获取服务器上除了/var/www/html/和/tmp/这两个目录以外的文件。
用open_basedir指定的限制实际上是前缀,而不是目录名,如: "open_basedir = /dir/user", 那么目录 “/dir/user” 和 "/dir/user1"都是可以访问的。所以如果要将访问限制在仅为指定的目录,请用斜线结束路径名
php伪协议
php://filter(过滤器)
php:
标签:审计,__,php,resource,string,代码,filter,flag,PHP From: https://www.cnblogs.com/xhzccy/p/17909967.html