Bypass_disablefunc via LD_PRELOAD
背景
在做ctf题的时候,千辛万苦获得了webshell,蚁剑也连接上了,但是查看不了其他目录,也看不了文件,很有可能是open basedir
和disablefunc
的设置导致。这时候我们查看phpinfo(养成rce前先查阅phpinfo的好习惯),发现果然如此,与系统命令相关的函数全被禁止(例如[极客大挑战 2019]RCE ME)。这时候我们也许可以直接用蚁剑的bypass插件逃课,但是这种方法成功率较低,本篇介绍正规方法:使用LD_PRELOAD
和putenv
来劫持进程,从而命令执行。