Código de inyección

Definición: ¿Qué significa la inyección de código?

La inyección de código es la inyección o introducción maliciosa de código en una aplicación. El código introducido o inyectado es capaz de comprometer la integridad de la base de datos y / o comprometer las propiedades de privacidad, la seguridad e incluso la corrección de los datos. También puede robar datos y / o eludir el control de autenticación y acceso. Los ataques de inyección de código pueden afectar a las aplicaciones que dependen de la entrada del usuario para su ejecución.

Techinfo explica la inyección de código

Hay cuatro tipos principales de ataques de inyección de código:

  • inyección SQL
  • Inyección de guiones
  • Inyección de concha
  • Evaluación dinámica

La inyección SQL es un modo de ataque que se utiliza para corromper una consulta de base de datos legítima para proporcionar datos falsificados. La inyección de scripts es un ataque en el que el atacante proporciona código de programación al lado del servidor del motor de scripting. Los ataques de inyección de shell, también conocidos como ataques de comandos del sistema operativo, manipulan aplicaciones que se utilizan para formular comandos para el sistema operativo. En un ataque de evaluación dinámica, un código arbitrario reemplaza la entrada estándar, lo que hace que la aplicación ejecute la primera. La diferencia entre la inyección de código y la inyección de comandos, otra forma de ataque, es la limitación de la funcionalidad del código inyectado para el usuario malintencionado.

Las vulnerabilidades de inyección de código varían desde las fáciles de encontrar hasta las difíciles de encontrar. Se han desarrollado muchas soluciones para frustrar este tipo de ataques de inyección de código, tanto para la aplicación como para el dominio de la arquitectura. Algunos ejemplos incluyen validación de entrada, parametrización, configuración de privilegios para diferentes acciones, adición de una capa adicional de protección y otros.