¿Qué es un RCE?

By | 2020-10-20

Del ingles Remote Code Execution, ejecución de código remoto, podemos entender que es la ejecución de código o comandos de forma remota, eso quiere decir que no necesitamos tener contacto físico con la computadora, celular o dispositivo que tenga dicha vulnerabilidad.

Ahora bien, ¿porque nos preocupamos tanto cuando existe una vulnerabilidad RCE ? Uno de los puntos ya lo comente por arriba, pero profundizando, al hacer de ejecución remota esto nos deja muy expuesto si es que no tenemos dispositivos de seguridad que mitiguen un ataque de este estilo (WAF, IPS, etc.) entre el atacante y nuestro dispositivo; dado que si el mismo esta conectado a internet podría ser de muy fácil explotación (con explotación nos referimos a que puede ser aprovechado). El otro punto fuerte es que podemos ejecutar comandos o código (programación), esto puede ser sumamente peligro dado que si dicha ejecución se logra con el usuario que este conectado al dispositivo en ese momento y él mismo es un administrador o usuario con permisos de root, la ejecución de comandos o código se realizará con dichos permisos o privilegios, digamos que podría obtener un control total del dispositivo.

Existe otra variante, tal vez la más usada, que es la combinación de vulnerabilidades y un RCE para comenzar es la puerta a un mundo maravilloso jajaja (para el atacante, no para el dueño del dispositivo o la red donde este conectado el mismo). Imagínense que nuestro dispositivo vulnerable a un RCE esta en una red -trabajo, casa, etc.- y en dicho dispositivo podemos ejecutar un “ping” o un “telnet”, ¿Ya se están imaginando lo que viene?, correcto… podrían no solo tomar el control del dispositivo sino que hacer un reconocimiento de toda nuestra red; roguemos que en el dispositivo vulnerable no tengamos un nmap (herramienta de escaneo que puede también buscar vulnerabilidades mediante scripts), porque ahí no solo pueden saber el diseño de nuestra infraestructura completa sino que además podrían vulnerar a otros equipos.

Con estos conceptos que les compartir en los breves párrafos anteriores creo que ahora están lo suficientemente capacitados como para comprender la gravedad de un RCE, por eso siempre es importante alguno de los TIPs que repito una y otra vez:

  • Mantener el software actualizado.
  • Instalar estrictamente el software que necesitemos. No instalar cualquier cosa que encontremos, ya que a más software más posibilidad de tener gran cantidad de vulnerabilidades.
  • Utilizar software de seguridad, tales como IPS, Anti-Virus, Anti-Spyware,,etc. Algunos pueden no ser software, tambien existen en hardware y lo podemos implementar entre una red de poca confianza, como internet, y la red de nuestros dispositivos (casa, trabajo, etc.).
  • Implementar un dispositivo que aísle nuestros dispositivos de Internet (pero dando la posibilidad de navegación) como un FW o un Router con ACLs (reglas), de esta manera se disminuye mucho la posibilidad de explotación.

Espero haber podido ser lo suficientemente claro, pero saben que cualquier duda o comentario lo pueden dejar con toda libertad abajo del post.

Links de interés:

  • https://www.netsparker.com/blog/web-security/remote-code-evaluation-execution/
  • https://www.zaproxy.org/docs/alerts/90020/

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.