•
Seguridad en PHP: deshabilitar funciones
Funciones como system o shell_exec de PHP no se usan en las aplicaciones web por motivos de seguridad pero no por ello estas funciones dejan de estar disponibles. Si un atacante consigue ejecutar instrucciones PHP podría usarlas para comprometer el servidor. Mediante disable_functions podemos evitarlo.
Para ello solo debemos añadir la opción en el php.ini con el listado separado por comas de funciones que queremos que no se puedan ejecutar. Por ejemplo:
disable_functions = proc_open , popen, disk_free_space, diskfreespace, set_time_limit, leak, tmpfile, exec, system, shell_exec, passthru, phpinfo, ini_set
En el log de errores podremos encontrar un mensaje similar a este para cada función deshabilitada que se intente ejecutar:
Feb 5 08:20:01 inf01 php: PHP Warning: ini_set() has been disabled for security reasons in /var/www/systemadmin.es/PlanesDeConquistarElMundo.class.php on line 514
Relacionados
Imprimir
•
One comment to “Seguridad en PHP: deshabilitar funciones”
•
27. January 2009 at 2:29 am :
Toda seguridad adicional a nuestro sistema apache + php (común) es bienvenida. De igual forma, recomiendo usar el mod_security de apache ya que se encarga de proporcionarle un nivel de seguridad adicional a nuestro servidor web muy potente y personalizable.
Un saludo,
Alejandro Arco