Categorías: Tutoriales

Cómo defenderse de un ataque SQL injection 101

Los ataques SQL injection ocurren cuando alguien ejecuta declaraciones SQL maliciosas (también llamadas payloads) que controlan un servidor de base de datos, típicamente de una manera que no es favorable para ti.

Cualquier base de datos que esté basada en SQL es vulnerable a estos tipos de ataque. Es una de las más viejas, más comunes y más peligrosas formas de ataque que alguien puede dirigir directamente hacia tu base de datos.

Todo lo que se necesita para que una base de datos entera esté comprometida es una sola falla. En algunos casos el atacante puede incluso correr comandos contra el sistema operativo de tu servidor a través de tu base de datos. Estos ataques están diseñados para el robo de identidad, y mediante uno, se puede incluso sustraer los fondos de una cuenta bancaria.

Defenderse contra los ataques SQL injection 101:

A través de esta forma de ataque un hacker puede hacerse fácilmente con los datos personales de cualquier persona. Esto lo puede lograr, sin que la víctima se dé cuenta. Esto es posible porque este ataque se encarga de engañar al usuario pidiéndole información confidencial.

Por esta razón es importante conocer cómo puedes defenderte contra estos ataques:

Evitar los caracteres especiales utilizados en consultas SQL:

Algunos de los caracteres especiales que se aconseja no colocar delante de las cadenas utilizadas en las consultas SQL para asi prevenir que un hacker tome ventaja de esto son: La barra invertida (\), comillas dobles o simples (“, ‘) o caracteres como \x00 o \x1a.

Estos caracteres son considerados peligrosos ya que pueden ser utilizados por el hacker durante el ataque.

Hoy en día hay distintos lenguajes de programación que se pueden usar para evitar estos caracteres. Tal es el caso de PHP donde puedes optar por la función mysql_real_scape_string(). Este código PHP, es capaz de modificar una cadena, evitando los caracteres especiales y volviéndola segura contra ataques.

Otros lenguajes que se pueden utilizar para evitar estos ataques de SQL injection son los de Java, Perl o C#, entre otros.

Utilizar herramientas de análisis:

Además de cambiar el lenguaje de programación que utilizarás; puedes asegurarte de otra manera de que estarás bien protegido contra los ataques SQL injection.

Esto lo puedes hacer utilizando algunas herramientas que se encuentran disponibles en la web. Dichas herramientas se encargarán de probar tus aplicaciones en busca de alguna vulnerabilidad por SQL injection.

Algunas de estas herramientas son SQLHelper 2.7 SQL Injection o SQLMap. Por otra parte, puedes optar por herramientas un poco más avanzadas pero que requieren de un pago como Pangolin.

 

Christian Soteldo

Compartir
Publicado por
Christian Soteldo

Artículos recientes

Cómo saber si tu móvil tiene pantalla AMOLED o LCD

¡Hola! Seguramente te has preguntado en algún momento qué tipo de pantalla tiene tu teléfono…

10 meses hace

Cómo calcular la cantidad de datos móviles que necesitas al mes

¿Alguna vez te has preguntado cuántos gigas necesitas en tu móvil cada mes? ¡No te…

10 meses hace

Cómo grabar la ventana del navegador en Google Chrome

Tomar capturas de pantalla es simple, pero grabar un video de Chrome u otra aplicación…

5 años hace

Cómo arreglar Mullvad VPN si no funciona con Netflix

Si tienes problemas para desbloquear Netflix con Mullvad VPN, tenemos una solución que te ayudará…

5 años hace

Cómo funciona los micrófonos XLR y ¿merecen la pena?

Recientemente, el fabricante de micrófonos Blue anunció un micrófono de estudio profesional de $ 100.…

5 años hace

Programas para convertir fácilmente archivos de audio a texto

Existen muchos programas para convertir textos a audio así como audios a textos. Ya sea…

5 años hace