Malware en PHP, funciones y búsquedas

Es normal que una aplicación sufra problemas de seguridad, sobre todo cuando uno mismo no la desarrolla. Tenemos que ser consientes de el valor de desarrollar en casa y las consecuencias de tener todo delegado a un tercero.

Pero también podemos implementar medidas para evitar sucesos como estos, vamos a comenzar con simplemente deshabilitar algunas funciones que son parte de los vectores comunes de ataque:

exec, passthru, shell_exec, system, proc_open, popen, show_source, eval

Estas funciones pueden ser deshabilitadas agregándolas a la variable disable_functions la cual se encuentra en el archivo php.ini. Ahora, si estuviéramos buscando un script malicioso, la cadena de búsqueda podría ser la siguiente:

egrep -ri '(eval|base64_decode|gzinflate|chr|strtok)' --include=*.php

Para agregar algo extra de seguridad seria deseable deshabilitar las siguientes variables de php.ini:

  • allow_url_fopen
  • allow_url_include