Skip to main content

¿Qué es una inyección de comando?

Una inyección de comando es una explotación de una debilidad del sistema para obtener acceso al sistema con el fin de ejecutar código malicioso, recolectar datos de los usuarios y participar en otras actividades. Si bien existe la posibilidad de que una inyección de comando sea de naturaleza benigna, por lo general no lo es, y puede presentar una amenaza de seguridad significativa. Existen varias soluciones diseñadas para evitar esta actividad en los sistemas informáticos.

Uno de los puntos más comunes de vulnerabilidad para una inyección de comandos es un formulario, ya sea en una página web o en un sistema informático. Los formularios permiten a las personas ingresar datos y luego son procesados ​​por el sistema. Si no hay restricciones sobre el tipo de datos ingresados ​​en el formulario, es posible que las personas ingresen el código de la computadora que el sistema leerá y ejecutará. Los formularios en las páginas web también pueden convertir la entrada para mostrarla a otros usuarios, exponiendo también a otras personas al código; Por ejemplo, alguien podría dejar un script malicioso en los comentarios de un sitio web.

Cuando se ejecuta el código, puede hacer cosas como proporcionar a las personas acceso al backend de un sistema informático, incluido el acceso administrativo, y también podría plantar virus y malware en un sistema informático. Las inyecciones de comandos pueden diseñarse para propagarse, ya que las computadoras infectadas interactúan con las computadoras no infectadas a través de una red. Se pueden propagar muy rápidamente y pueden causar daños sustanciales en el camino.

Una forma de evitar una inyección de comando es diseñar formularios y otras entradas de una manera diseñada para restringir lo que las personas pueden ingresar. En los comentarios de Internet, por ejemplo, es probable que no haya una razón legítima para que los usuarios ingresen scripts, y el formulario de comentarios podría simplemente rechazar los scripts, al tiempo que permite HTML para el marcado y el estilo. Del mismo modo, en un programa de computadora, los formularios de entrada podrían rechazar las entradas de ciertos caracteres, evitando que las personas ejecuten código en el formulario.

El riesgo potencial presentado por la inyección de comando se observó por primera vez en la década de 1990. Numerosos diseñadores han abordado el problema y han ideado varias formas de prevenir o detener los ataques de inyección de comandos. Los hackers también han intentado desarrollar sus propias soluciones, desarrollando formas nuevas y creativas para ejecutar código a través de puntos débiles en un sistema informático. Algunas personas desarrollan nuevas técnicas por puro interés académico y ocasionalmente causan estragos por accidente cuando su investigación escapa a la naturaleza, por así decirlo.