Está en la página 1de 4

¿En qué consiste una inyección SQL?

Los ciberdelicuentes tienen muchas formas de atacar los sistemas de las empresas,
pero sin duda, una de las más populares son los ataques de inyección SQL. De
acuerdo a Akistmet, en el 2019, este tipo de vulnerabilidad a la aplicaciones web
representaban el 65.1% del total de infecciones a las empresas.
Para realizar un ataque de inyección SQL, un ciberdelicuentes debe localizar una
entrada vulnerable en una aplicación o página web. Cuando una aplicación o página
web contiene una vulnerabilidad de inyección SQL, utiliza la entrada del usuario en
forma de consulta SQL directamente. El ciberdelicuente puede ejecutar un comando
SQL específicamente elaborado como una intrusión cibernética maliciosa. Entonces,
aprovechando el código malicioso, un ciberdelicuente puede adquirir una respuesta que
proporcione una idea clara sobre la construcción de la base de datos y, por lo tanto, el
acceso a toda la información de la base de datos.

Impacto de los ataques de inyección SQL

¿Qué buscan los ciberdelicuentes? Depende de la información que obtenga cada


aplicación, pero si el el ataque es exitoso, los ciberdelicuentes pueden obtener esta
información:

● Robo de credenciales: las inyecciones SQL pueden utilizarse para encontrar


las credenciales de los usuarios y acceder a los privilegios de administradores
que tienen estos usuarios.
● Acceder a bases de datos: los atacantes pueden utilizar inyecciones SQL para
acceder a la información almacenada en un servidor de bases de datos.
● Alterar datos: los atacantes pueden utilizar inyecciones SQL para alterar o
añadir nuevos datos a la base de datos a la que se ha accedido.
● Borrar datos: los atacantes pueden utilizar inyecciones SQL para borrar
registros de la base de datos, incluyendo la eliminación de tablas.
● Acceder a redes: es decir, a los servidores de bases de datos con privilegios
del sistema operativo. El atacante puede entonces intentar entrar a la red de la
empresa.
Tipos de inyección SQL

Este tipo de ataques tienen tres variaciones principales:

1. SQLi en banda o SQLi clásico

La inyección SQL en banda ocurre cuando un atacante puede usar el mismo canal de
comunicación para lanzar el ataque y recopilar resultados.

2. SQLi basado en errores

Es una técnica de inyección SQL en banda que se basa en mensajes de error lanzados
por el servidor de la base de datos para obtener información sobre la estructura de la
base de datos. En algunos casos, la inyección SQL basada en errores por sí sola es
suficiente para que un atacante enumera una base de datos completa.

3. SQLi basado por unión

Es una técnica de inyección SQL en banda que aprovecha el operador UNION SQL
para combinar los resultados de dos o más declaraciones SELECT en un solo resultado
que luego se devuelve como parte de la respuesta HTTP.
¿Qué es el desarrollo seguro de software?

El desarrollo seguro de software es un modelo de trabajo que se basa en la


realización de chequeos de seguridad continuos del proyecto en construcción,
incluso desde sus fases iniciales y antes de que se escriba una sola línea de código.
Estas pruebas se centran en descubrir y corregir cualquier error en una etapa
temprana, y comprenden tests de autentificación, autorización, confidencialidad, no
repudio, integridad, estabilidad, disponibilidad o resiliencia.

El objetivo es, al fin y al cabo, asegurarnos de que impediremos el acceso al


programa y a los datos almacenados por parte de usuarios carentes de permiso.

Las metodologías de desarrollo seguro de software sitúan a la seguridad en el


centro del proceso. Existen distintos modelos, concebidos por grandes compañías,
organizaciones nacionales y bajo paradigmas de código abierto. En BETWEEN te
hablamos de algunos de los más destacados:

● S-SDLC (Secure Software Development Life Cycle). Se basa en verificar los


requisitos de seguridad a lo largo de las distintas fases de construcción del
software: análisis, diseño, desarrollo, pruebas y mantenimiento. Sobre todo,
durante las dos primeras, ya que gran parte de las debilidades de los
sistemas se generan incluso antes de comenzar las tareas de programación.
Las claves del S-SDLC son la atención al detalle, para favorecer la
identificación inmediata de las vulnerabilidades; y la mejora continua.
● CLASP (Comprehensive Lightweight Application Security Process). Proyecto
del OWASP que establece una serie de actividades, roles y buenas prácticas
dirigidas a coordinar los procesos de desarrollo seguro de software. La
organización OWASP CLASP se asienta en cinco perspectivas o vistas que
abordan los conceptos generales de esta metodología, la distribución de
funciones, la valoración de las actividades aplicables, la implementación de
estas actividades, y el listado de problemas que pueden dar lugar a la
aparición de vulnerabilidades.
● SSDF (Secure Software Development Framework). Iniciativa del NIST
(National Institute of Standards and Technology de Estados Unidos), provee
indicaciones para evangelizar a la organización acerca de la importancia de
la seguridad informática; proteger el software de uso habitual ante hipotéticos
ataques; orquestar un desarrollo seguro de software; y detectar y solucionar
con rapidez cualquier vulnerabilidad.
Bibliografía
Between, S. I. T. de. (s. f.). Metodologías de desarrollo seguro de software |

BETWEEN Technology. https://impulsate.between.tech/tecnicas-desarrollo-

seguro-software

Arguelles, G. T. (2021, 31 octubre). ¿Qué es una inyección SQL? Access

Quality - Líderes en Servicios TI y SOC y NOC.

https://www.accessq.com.mx/que-es-una-inyeccion-sql/

También podría gustarte