Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Inyeccionessqlparaaprendices complemento clase 1

995 views

Published on

Inyeccionessqlparaaprendices complemento clase 1

Published in: Design
  • Be the first to comment

Inyeccionessqlparaaprendices complemento clase 1

  1. 1. Inyecciones SQL para Aprendices Inyección SQL
  2. 2. Inyecciones SQL para Aprendices  En esta ocasión vamos a aprender a Hacer un Inyección SQL y posteriormente Defacear Un web!
  3. 3. Inyecciones SQL para Aprendices  Bueno el deface o defacing es comprender los errores de las web’s, o de los foros, el deface se puedes usar de dos maneras: 1. Deface tipo lamer, el cual consiste en dejar un mensaje en el index o modificarlo, por ejemplo: soy tu padre o algún mensaje de ese estilo. 2. Deface de un buen hacker, el termino buen hacker no quiere decir que sea buena la persona si no que si ve errores o bug’s inmediatamente los reportara al administrador de como es que supo del bug y como se puede explotar, puede que te den las gracias por avisarles o asta te den algo cambio.  En que consiste un deface: bueno el deface es buscar vulnerabilidades de una web o un foro y explotar esos bug, muchas veces una persona hace un deface por gusto y muchas veces va dirigido al index,ya que es la pagina principal donde todos podrán ver lo que a hecho esta persona.  Reflexión: Muchas veces a un webmaster le cuesta trabajo crear una web o publicarla, para que llegue una persona y la defacee y le deshaga todo el trabajo que le costo al webmaster. No te gustaría que hicieran eso cierto?. Asi que respeta para que te respeten.
  4. 4. Inyecciones SQL para Aprendices  Ojo! Esto es de cuidado! Esto es ilegal, en cualquier momento puedes llegar a la cárcel por un delito Informático  Bueno ya pasando las recomendaciones Dadas empecemos!  Bueno lo primero que deben saber es que es una Inyección SQL! (Busca en San Google! Ahí tienes toda la información!) Aquí un breve definición:  Inyección SQL: es un método de infiltración de código intruso que se vale de una vulnerabilidad informática presente en una aplicación en el nivel de validación de las entradas para realizar consultas a una base de datos.
  5. 5. Inyecciones SQL para Aprendices  El origen de la vulnerabilidad radica en el incorrecto chequeo y/o filtrado de las variables utilizadas en un programa que contiene, o bien genera, código SQL. Es, de hecho, un error de una clase más general de vulnerabilidades que puede ocurrir en cualquier lenguaje de programación o script que esté embebido dentro de otro.  Se conoce como Inyección SQL, indistintamente, al tipo de vulnerabilidad, al método de infiltración, al hecho de incrustar código SQL intruso y a la porción de código incrustado.
  6. 6. Inyecciones SQL para Aprendices  Segundo La Seguridad!:  Como siempre he dicho! Para todo clase de Hack! Es mejor usar algún Proxy SSL O algún VPN! Recomiendo mejor los vpn entre ellos están:  RaptorVPN  Hay otros mas.. pero este tutorial no es de seguridad y protección.  Vean el tuto siguiente. (Seguridad y Protección)
  7. 7. Inyecciones SQL para Aprendices  Tercero: Herramientas  Las herramientas que vamos a usar son:  Havij  (Descargar: http://www.itsecteam.com/products/havij-v116-advanced-sql- injection/ ). Havij es una herramienta que nos facilitará la explotación de vulnerabilidades de inyección SQL en aplicaciones web. Rápidamente podremos hacer un fingerprint de la base de datos, obtener los usuarios y los hashes de sus contraseñas, dumpear tablas y columnas, volcar datos, ejecutar sentencias SQL e incluso acceder al sistema de ficheros y ejecutar comandos en el sistema operativo.  Les recomiendo probar la versión 1.15 free que, aunque tiene algunas limitaciones, seguro que nos resultará útil y nos dará una idea de su facilidad de uso.
  8. 8. Inyecciones SQL para Aprendices  WebCruiser o Acunetix  Download: http://sec4app.com/download/WebCruiserPro.zip  El escaner WebCruiser es una herramienta para tareas de evaluación de seguridad de sitios Web. Tiene tres versiones, Profesional y Enterprise que son de paga y una Free Edition gratuita para amateurs con algunas funcionalidades reducidas.
  9. 9. Inyecciones SQL para Aprendices  ¿Qué es WebCruiser?:  Un escaner de vulnerabilidades Web;  Un escaner de Inyección SQL;  Un escaner de XSS (Cross Site Scripting);  Un escaner de Inyección XPath;  Una herramienta de Inyección SQL automática de pruebas de concepto (POC);  Una herramienta de XSS (POC);  Una herramienta de Inyección XPath (POC);  Una herramienta de reenvío de Post Data;
  10. 10. Inyecciones SQL para Aprendices  ¿Cuales son sus funcionalidades?:  Crawler (directorios y archivos de sitios web);  Escaner de Vulnerabilidades(SQL Injection, Cross Site Scripting, XPath Injection etc.);  POC(Pruebas de Concepto): SQL Injection, Cross Site Scripting, XPath Injection etc.;  Inyección GET/Post/Cookie;  SQL Server: Texto Plano/Campo Reflejado(Union)/Inyección Ciega;  MySQL/Oracle/DB2/Access: Campo Reflejado(Union)/Inyección Ciega;  Verificación automática de tipo de base de datos;  Búsqueda de Administración de Entrada;  Inyecciones de búsquedas con retardo de tiempo;  Auto obtención de Cookie de navegador Web para autenticación;  Salida de informes.
  11. 11. Inyecciones SQL para Aprendices  ¿Cuales son sus funcionalidades?:  Crawler (directorios y archivos de sitios web);  Escaner de Vulnerabilidades(SQL Injection, Cross Site Scripting, XPath Injection etc.);  POC(Pruebas de Concepto): SQL Injection, Cross Site Scripting, XPath Injection etc.;  Inyección GET/Post/Cookie;  SQL Server: Texto Plano/Campo Reflejado(Union)/Inyección Ciega;  MySQL/Oracle/DB2/Access: Campo Reflejado(Union)/Inyección Ciega;  Verificación automática de tipo de base de datos;  Búsqueda de Administración de Entrada;  Inyecciones de búsquedas con retardo de tiempo;  Auto obtención de Cookie de navegador Web para autenticación;  Salida de informes.
  12. 12. Inyecciones SQL para Aprendices  Actualmente está disponible y se puede descargar cualquiera de las tres versiones, las versiones de paga se pueden probar por 30 días.
  13. 13. Inyecciones SQL para Aprendices  Cualquiera VPN O PROXY Confiable.  Recordemos que un VPN es una red privada virtual o VPN (siglas en inglés de virtual private network), es una tecnología de red que permite una extensión de la red local sobre una red pública o no controlada, como por ejemplo Internet.  Realmente una VPN no es más que una estructura de red corporativa implantada sobre una red de recursos de carácter público, pero que utiliza el mismo sistema de gestión y las mismas políticas de acceso que se usan en las redes privadas, al fin y al cabo no es más que la creación en una red pública de un entorno de carácter confidencial y privado que permitirá trabajar al usuario como si estuviera en su misma red local.
  14. 14. Inyecciones SQL para Aprendices  Y por ultimo el bloc de notas.
  15. 15. Inyecciones SQL para Aprendices  Cuarta: La Web Vulnerable: Bueno aquí en este tutorial yo ya tengo una web vulnerable!  Ustedes pueden hacer la prueba con esta web:  http://www.nuddos.com  En la internet existe. Muchísimas paginas vulnerables! Pero como esta ya ha sido hackeada entonces, usemos en este tuto no profundizare para buscar Web vulnerables pero aquí unas técnicas para encontrarlas: Abrir www.google.com En búsquedas pones: .php?id= *.php?id= .asp?id=
  16. 16. Inyecciones SQL para Aprendices  Esos son los dock mas buscados para hackear hay muchos mas! Y si le metes un poco de lógica encuentras otros métodos mas!. Nota: No todas las paginas que salgan ahí son vulnerables! Pero como identificar una web Vulnerable? Es fácil eh ahí donde empieza a trabajar el WebCruiser o Acunetix en este caso  Usaremos webCruiser  Recordemos que WebCroiser es un scanner de vulnerabilidades y explota las mismas.
  17. 17. Inyecciones SQL para Aprendices  Aquí un ejemplo de su funcionamiento: La pagina a escanear será: www.nuddos.com
  18. 18. Inyecciones SQL para Aprendices
  19. 19. Inyecciones SQL para Aprendices  Le damos clic en Scanner:
  20. 20. Inyecciones SQL para Aprendices
  21. 21. Inyecciones SQL para Aprendices  Luego le damos clic en: Scan Site Y damos aceptar. Ahora debemos esperar unos 2 a 10 mins el programa escaneara y verificara la pagina y sus vulnerabilidades se irán mostrando poco a poco y si no tiene pues no aparecerá nada. Hay que volver intentar con otra pagina, en este caso encontramos:
  22. 22. Inyecciones SQL para Aprendices
  23. 23. Inyecciones SQL para Aprendices  2 Inyecciones SQL Yo Escogeré la url de (URL SQL Inyección) Para escogerla solo debes dar clic derecho y dar clic en copiar url (Copy Url a Clipboard) En este caso es:  http://www.nuddos.com/blog.php?id=336  Como Pueden notar: el final de la pagina es: .php?id= Ahora que tenemos la vulnerabilidad encontrada vamos a Havij 1.50 Pro
  24. 24. Inyecciones SQL para Aprendices  Este es un programa que automatiza la inyección SQL, con solo copiar la url vulnerable el hará el trabajo por ti La Inyección SQL se puede hacer de tipo manual pero es mas complicado. Aquí les enseñare a usar el havij:
  25. 25. Inyecciones SQL para Aprendices
  26. 26. Inyecciones SQL para Aprendices  Ahí como pueden ver ya copie y pegue la url en el objetivo ahora le damos clic en: Antes de usar la herramienta vamos a configuraciones y lo configuramos para que la inyección tenga mas éxito! Aquí una foto de como dejarlo configurado (cada vez que vayas a usar el Havij que no se te olvide configurarlo:
  27. 27. Inyecciones SQL para Aprendices
  28. 28. Inyecciones SQL para Aprendices  En proxy colocas una IP PROXY Rápida y confiable! Ahora después de haber puesta la configuración ahora vamos y damos en el botón: Analyze  Y esperamos los resultados: Si es Scan nos sale así o mas o menos parecido:
  29. 29. Inyecciones SQL para Aprendices
  30. 30. Inyecciones SQL para Aprendices  Eso significa que la Inyección SQL va Por buen camino esperemos el resto del scan. Ya termino y debería aparecer algo como esto:
  31. 31. Inyecciones SQL para Aprendices  Ahí hemos encontrado y entrado a su base de datos de llama: Nuddos Ahora nos vamos a Info:
  32. 32. Inyecciones SQL para Aprendices
  33. 33. Inyecciones SQL para Aprendices  Y le damos en GET Ahí el programa buscara toda la información acerca de la base de datos. (Este paso es Opcional) Esperemos que termine el scan. Ahora tenemos mas información sobre la base de datos:
  34. 34. Inyecciones SQL para Aprendices  Y le damos en GET Ahí el programa buscara toda la información acerca de la base de datos. (Este paso es Opcional) Esperemos que termine el scan. Ahora tenemos mas información sobre la base de datos:
  35. 35. Inyecciones SQL para Aprendices
  36. 36. Inyecciones SQL para Aprendices  Ahora pasamos a Tables
  37. 37. Inyecciones SQL para Aprendices  Si hiciste el paso anterior te saldra la base de datos (Information_schema) Ahí se almacena la información de la base de datos en donde va tal cosa. (Busca en San Google Mas Información) Bueno seguimos: Ahora seleccionamos a la base de datos nuddos Y Le damos GET TABLES.
  38. 38. Inyecciones SQL para Aprendices  Si hiciste el paso anterior te saldra la base de datos (Information_schema) Ahí se almacena la información de la base de datos en donde va tal cosa. (Busca en San Google Mas Información) Bueno seguimos: Ahora seleccionamos a la base de datos nuddos Y Le damos GET TABLES.  Automáticamente se nos desplegara un cantidad de tablas.
  39. 39. Inyecciones SQL para Aprendices  Si hiciste el paso anterior te saldra la base de datos (Information_schema) Ahí se almacena la información de la base de datos en donde va tal cosa. (Busca en San Google Mas Información) Bueno seguimos: Ahora seleccionamos a la base de datos nuddos Y Le damos GET TABLES.  Automáticamente se nos desplegara un cantidad de tablas.
  40. 40. Inyecciones SQL para Aprendices
  41. 41. Inyecciones SQL para Aprendices  En este caso Es rápido la inyección pero hay casos que la Base de datos esta protegida y obtenemos las tablas una por una. Eso lleva su tiempo! Bueno seguimos… Ahora debemos ir en busca de los usuarios o admin o lo que sea relacionado con usuarios. Usa la mente y ponla a trabajar, si en caso no encuentras tablas con esos nombres pues has perdido tu tiempo. O no puedes sacar información valiosa de la pagina que hallas encontrado. En este caso yo mirare las columnas de Usuarios y gestina_administradores  Las selecciona y le das click en: Get columns. Y Esperamos a que termine su trabajo. En este caso me genero en gestina_administradores:
  42. 42. Inyecciones SQL para Aprendices
  43. 43. Inyecciones SQL para Aprendices  Y usuarios:
  44. 44. Inyecciones SQL para Aprendices  Pero nosotros vamos por administrador! Así que miraremos primero los datos de administradores. Así que seleccionamos:
  45. 45. Inyecciones SQL para Aprendices  Y ahora le damos: GET DATA Get data: En este caso solo hay un solo administrador:
  46. 46. Inyecciones SQL para Aprendices
  47. 47. Inyecciones SQL para Aprendices  Ahora podemos guardar la información con el botón Save data Y se guardara como .HTML Y su password no esta encryptado en MD5! Cosa que nos facilita el trabajo! Si estuviese encryptado teníamos que desecryptarlo! Y nos llevaría mas tiempo!.
  48. 48. Inyecciones SQL para Aprendices  Con estos datos Podemos defacear una web! O si no eres malvado habla con el administrador y que arregle el problema de la base de datos!. Ya para despedirnos vamos a buscar su panel de administracion para entrar como administrador: Nos vamos a: Find Admin
  49. 49. Inyecciones SQL para Aprendices
  50. 50. Inyecciones SQL para Aprendices  Y le damos START y como siempre esperemos que haga su trabajo! PD: Hay veces que no sale el panel de administración hay que localizarlo de otra manera. Aquí los resultados:
  51. 51. Inyecciones SQL para Aprendices

×