systemadmin.es > Seguridad > Intrusión mediante PHP Shell

Intrusión mediante PHP Shell

Una vez se tiene acceso a un sistema se suelen instalar herramientas para facilitar el trabajo. Las shells en PHP son herramientas casi tan completas como un webmin. Vamos a ver unos ejemplos:

Por ejemplo, la C99shell:

C99shell

C99shell

Permite la ejecución de código PHP desde una bonita interfaz gráfica, listado de procesos, listado de configuración de la máquina, acceso a la base de datos, dejar escuchando una shell a un puerto…

Otro ejemplo es la r57shell:

r57shell

r57shell

La cual tiene características similares. Para poder detectar estas PHPshells lo mejor es correr de forma periódica un antivirus en el sistema, por ejemplo ClamAV:

# clamscan -ri
/var/www/logann/htdocs/img/shell.php: PHP.Shell FOUND

De esta forma nos ahorraremos sorpresas desagradables.

5 comments to “Intrusión mediante PHP Shell”

  1. La mejor manera es tener SAFE_MODE de PHP activo y el open_dir restringido al directorio de cada usuario.

    El inconveniente de usar Clamv, ademas de que consume muchísima memoria como daemon, es que tienes que ejecutar el análisis periódicamente. Y con 5 min que tenga tu atacante es suficiente para hacerte un destrozo en el server.

    Para aquellos que necesiten el SAFE_MODE deshabilitado (por ejemplo en la cuenta de superusuario o del la web del hosting) es tan simple como desactivarlo en los virtualHost.

    Yo utilizo estas políticas y he ahorrado mucha RAM en el servidor, además de mantenerlo seguro.

  2. Bueno, el clamav puede ser útil igualmente. Yo lo uso con un modulo que lo integra al ProFTPd y también hay un modulo para Apache.

    Saludos.

  3. Tampoco hace falta tener cargado el módulo de apache o el daemon, se puede hacer perfectamente via cron.

    Opino que un antivirus en los sistemas es una cosa importante a tener en cuenta, consuman más o menos recursos. Hoy en dia los atacantes quieren hacer otras cosas que no un simple deface

  4. Buenas shakaran,

    Cuando en su día quise configurar el php como comentas, con safe_mode y el open_basedir, me encontré con gente que no recomendaba su activación. Ahora mismo recuerdo que al menos un aviso venia del equipo de seguridad de debian:

    the Debian stable security team does not provide security support
    for certain configurations known to be inherently insecure. Most
    specifically, the security team will not provide support for flaws in:

    […]

    – vulnerabilities involving any kind of safe_mode or open_basedir
    violation, as these are security models flawed by design and no longer
    have upstream support either.

    […]

    Me gustaría saber tu opinión sobre esto, ya que si realmente aportan algún beneficio me gustaría implementarlo.

    Saludos!

  5. Hola,
    En mi opinión el safe_mode no es más que una capa más que se puede añadir para mejorar la seguridad de un sistema con PHP, de la misma manera que lo es el suhosin o los disable_functions en distintas configuraciones según el entorno.

    Cuando te enfrentas a un entorno complejo es que las aplicaciones tiene problemas y requisitos excluyentes entre si, al fin, o se separa en máquinas virtuales o se debe afinar a mano cada pequeñez que haya en el server (por lo que del safe_mode normalmente uno debe descartarlo)

    En cuanto a la seguridad o no del safe_mode, añade cierta seguridad para algunos temas pero no deja de ser inseguro para otros. El problema de safe_mode yo creo que esta más bien en la cabeza del administrador de sistemas que le transmite una falsa sensación de seguridad cuando hay muchos otros problemas que el safe_mode ni minimiza ni trata.

    saludos!

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>