Riesgo A1 en OWASP - Inyección

Author
By Darío Rivera
Posted on 2021-11-28 in OWASP

En nuestro post Qué es OWASP y por qué todo desarrollador debería conocerlo vimos una introducción a OWASP y por qué es tan importante en el desarrollo de aplicaciones web. Dentro del proyecto TOP TEN, vamos a ahondar un poco en cada una de los diez riesgos de seguridad más críticos en aplicaciones web. Hoy es el turno del Riesgo A1 - Inyección.

Ejemplos

- Realizar una consola por ID de usuario obtenido mediante GET sin ninguna validación o sentencia preparada al motor de base de datos.
- Realizar la validación de un login de usuario si una sentencia preparada permitiendo el ingreso al atacante.

Prevención

- Se debe validar todo dato ingresado por el usuario en la aplicación del lado del cliente y del servidor.
- Todo caracter especial debe ser escapado utilizando la sintaxis de escapado específica del intérprete para que el código no se interpretado y ejecutado.
- Se deben realizar validaciones utilizando listas blancas (whitelist), en el lado del server, a nivel de servicio o aplicación detectando si código malicioso fue ingresado por el usuario.
- Se debe emplear el uso de LIMIT/TOP en SQL para minimizar la filtración de datos en caso de una inyección SQL.


Acerca de Darío Rivera

Author

Ingeniero de desarrollo en PlacetoPay , Medellín. Darío ha trabajado por más de 6 años en lenguajes de programación web especialmente en PHP. Creador del microframework DronePHP basado en Zend y Laravel.

Sólo aquellos que han alcanzado el éxito saben que siempre estuvo a un paso del momento en que pensaron renunciar.