本页面只是因为之前写php笔记的页面排版太乱了,所以就重新开了一个。纯粹为了自己看,不会全,只是我的备忘录罢了。公开只是为了督促自己排版好看点。

functions

preg_match

%0a绕过

一行一行的匹配,所以l%0as就绕过了检测,但是接收到的是l%5c%0as(原因不明)
2024-05-26T13:14:07.png
system执行相当于下面的效果
2024-05-26T13:07:58.png

substr

低版本宽松解析

在php7.3.33及低版本中能够解析没加引号的字符串,往上到哪个版本还不清楚。从而绕过引号的waf。因为在shell里面(是特殊字符,所以要\转义
php -r eval\(hex2bin\(substr\(_6563686f20606c73603b,1\)\)\)\;
2024-05-26T14:15:43.png