Que es y como funciona la SQLi (Inyección SQL)

Contenido

¿Que es?.
Descripción.
¿En que lenguaje veremos su uso?.
Como saber si el sitio es vulnerable.

1.¿Que es?

La Inyección SQL o SQLi es una vulnerabilidad centrada en consultas de la base de datos de una aplicación, esta vulnerabilidad puede estar en todo tipo de lenguajes de programación como por ejemplo PHP, JAVA, PERL, C#, ASP, etc.

2.Descripción


Una Inyección SQL o SQLi suele suceder cuando se inyecta un código SQL al lenguaje para alterar el contenido y su funcionamiento normal y hacer que se ejecute el código malicioso en la base de datos. La mayor de las veces estos errores en las SQL son por la ignorancia del lenguaje pero este código puede ser reparado por programadores o personas que tengan el conocimiento suficiente para poder reparar el error.

3.¿En que lenguaje veremos su uso?

PHP, será el lenguaje que usaremos para esta guía, ya que es en el que mas me domino, las paginas php son las que terminan con .php, como por ejemplo:

pagina.cl/index.php

4.Como saber si el sitio es vulnerable.

Para saber si el sitio es vulnerable existen varias formas de saber, como la versión del lenguaje php, si te creaste una Web con un auto instalador como SMF, PHP NUKE, etc,
procura siempre tener la versión mas nueva, ya que existen exploits o vulnerabilidades que pueden ser explotadas para que el sitio tenga un mal funcionamiento, se dice que PHP NUKE es uno de los proveedores de sitios php mas vulnerables, no se garantiza tenerlo solo por sus Themes "Temas" y su facilidad, se recomienda hacer paginas Web con el lenguaje HTML.
Tu sitio Web podría ser vulnerable a sus ID, actions, opcions, etc., estas vulnerabilidades quizás tu ya las hallas visto como:

pagina.cl/search.php?id=NUMERO
pagina.cl/menu.php?act=NUMERO
pagina.cl/index.php?opc=NUMERO


Algunos de esos podrían tener una vulnerabilidad SQLi para poder saber si tiene una vulnerabilidad habrá que hacer una consulta como:

pagina.cl/search.php?id=-1
pagina.cl/menu.php?act='2
pagina.cl/index.php?opc=99999999999999999999999999


Hay que probar con esas que son las básicas, en la primera sale -1, las páginas siempre están con números positivos es raro ver una página Web que tenga opciones con -1, -2 entonces causa de esto puede salir un error de SQLi, la pantalla podría ponerse blanca, etc.
En la segunda es un '2, ¿por qué '?, porque ' es un signo que no se usa en las páginas webs, o acaso has visto una Web que use ', el 2 es cualquier número pero la mayoría de las veces resulta el número 2, para saber si funciona sale lo mismo que en el ejemplo anterior.
En la tercera nunca ponen tantos números si te das cuenta casi siempre el usuario admin es pagina.cl o 1 porque es el primer miembro que estuvo pero si yo pongo pagina.cl la pagina Web colapsa y entregaría errores.

Ejemplo de error:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/public_html/users.php on line 16

No hay comentarios:

Publicar un comentario

Buscanos en Facebook

Entradas populares

Videos Rcientes

Followers

Visitas

============================================================
contador de visitas
Visitas hasta el dia de Hoy

..::Usuarios Online::..

 

BlackOpHn-T3AM | Blog Oficial |©Copyright 2013-2014 | Powered by Blogger