disable_functions Bypass:突破disable_functions达到命令执行的Shell

disable_functions

为了安全,运维人员会禁用PHP的一些“危险”函数,例如:

将其写在php.ini配置文件中,就是我们所说的disable functions了。

Bypass disable_functions Shell

Bypass涉及禁用函数列表:

shell绕过已实现的方式:

  • 常规绕过: exec、shell_exec、system、passthru、popen、proc_open
  • ld_preload绕过: mail、imap_mail、error_log、mb_send_mail
  • pcntl_exec
  • imap_open
  • fastcgi
  • com
  • apache mod-cgi

目录结构:

  • env - docker环境, 用于测试各类绕过exp
  • papar - bypass原理
  • exp - bypass脚本

仓库:https://github.com/l3m0n/Bypass_Disable_functions_Shell

PHP 7.1-7.3 disable_functions bypass

利用php json序列化漏洞,以绕过disable_functions并执行系统命令。

disable_functions Bypass:突破disable_functions达到命令执行的Shell

适用版本

  • 7.1 - all versions to date
  • 7.2 < 7.2.19 (released: 30 May 2019)
  • 7.3 < 7.3.6 (released: 30 May 2019)

仓库:https://github.com/mm0r1/exploits/tree/master/php-json-bypass

扩展

蚁剑AntSword命令执行增强:Bypass Disable Functions