Apache Httpd支持一个文件拥有多个后缀,不同的后缀执行不同的命令,也就是说当我们上传的文件中只要后缀名含有php,该文件就可以被解析成php文件。
利用Apache httpd这个特性,就可以绕过上传文件的白名单。
该漏洞和apache版本和php版本无关,属于用户配置不当造成的解析漏洞
环境启动后,访问http://x.x.x.x/uploadfiles/apache.php.jpeg可看到 PHP版本信息:
phpinfo()被执行了,该jpeg文件被解析为 php脚本。
通过上传文件名为xxx.php.jpg或xxx.php.jpeg等白名单文件,利用 Apache 解析漏洞进行 getshell。