RSS |

Blog de Omar

Just another WordPress weblog

Advertisement

Archive for the ‘ Videos Seguridad ’ Category

image

 

Las inyecciones  de código SQL (aquí pueden ver el TOP 10 – 2013 de OWASP) son una vulnerabilidad muy conocida, a pesar de eso no sorprende aun encontrarse con diversas páginas web que tengan esta vulnerabilidad. Lo que aun me sorprende es que me escriban correos pidiendo ayuda para realizar acciones de dudosa “legalidad” con la efímera y absurda esperanza que yo me juegue el pellejo por alguien que no conozco, por alguien que no me interesa y peor aún me juegue la cárcel por alguien que no tuvo las ganas de estudiar el ciclo de la universidad. Así que aquellos que están cursando la universidad con esfuerzo, aquellos que son bachilleres y los que ya son ingenieros, siéntanse orgullosos de su título que mucho esfuerzo ha costado.

Créanme que hay gente que me pide cambiar las notas, es decir, que hackee a la universidad y cambie un “09” por un “11” para que sean felices; les muestro sólo algunos ejemplos que mas recuerdo:

image

30

 

Oferta y demanda: la economía y el mercado se mueve

Ya saben, toda demanda tiene una oferta, gracias a este principio nuestra economía se mueve. Obviamente el mundo del hacking no es ajeno a esto, basta con buscar en Internet si alguien ofrece realizar “trabajitos” de hacking para cambiar nuestras calificaciones. Me llamó la atención una página web donde encontré una persona seria, que nos ofrecía un trabajo serio, garantizado, discreto y sobre todas las cosas “profesional”, porque eso es lo que necesitamos en este país, Perú, profesionales de alta calidad que cambien notas para obtener más profesionales de alta calidad. WTF!!!!

Como no soy especialista en temas de derecho, habrá que preguntarle a Erick (@coyotegris) de que tipo de delito estamos hablando y supongo que tanto el que realiza estos “trabajitos” como el que los solicita están cometiendo un delito.

 

image

 

Entonces…. ¿ se puede ser profesional sin haber estudiado?

De pronto si, obviamente de manera trucha, ilícita e ilegal. Es aquí donde me pregunté “¿Qué tantas instituciones educativas han sido hackeadas en el Perú?”, pues como sabrán nadie lleva un registro exacto de estas cosas y tampoco es que cada vez que alguien hackee a una universidad pues se promocione por internet diciendo que lo ha logrado, de hecho, a mi me han contratado universidades para realizarles un “Ethical Hacking” y las cosas que se pueden lograr, son alucinantes!!!

¿Entonces, no hay donde saberlo? pues… aquí nos puede ayudar “ZONE-H”, como ya sabrán cada vez que algún “super hacker” logra un defacement lo publica en esta página para crear un mirror de como quedó la página después de haber sido hackeada. Mayúscula fue mi sorpresa cuando encontré, 1444 páginas hackeadas que tienen el dominio EDU.PE. WTF!! hasta una página de la Universidad Nacional de San Marcos(UNMSM) se encuentra allí. Si no me creen miren aquí:

 

image

 

Parece ser que el ilícito negocio no es tan complicado como parece  – habiendo tantas páginas educativas que han sido hackeadas – , de pronto hasta el negocio les resulta bastante atractivo habiendo un mercado tan grande de estudiantes, ese es un motivo para que las universidades se preocupen por la seguridad de su información, además, siendo las universidades donde se forman profesionales en ingeniería creería que deberían dar el ejemplo de un buen desarrollo y seguro de sistemas de información, ¿no creen?

Ahora sí, las inyecciones sobre SQL SERVER

La idea de este post es mostrar las diferencias entre las inyecciones SQL sobre MySQL y sobre otro motor de base de datos, por ejemplo, SQL SERVER. Para poder entenderlo mejor les recomiendo haber visto antes estos posts:

Debido a que explicar las diferencias se puede hacer extenso, he decidido realizar un video tutorial con las principales particularidades de realizar inyecciones sobre Microsoft SQL Server. El video contiene las siguientes partes:

  1. Ejecución de funciones básicas sobre MSSQL para obtener información: usuario utilizado, base de datos actual, versión de la base de datos.
  2. Listado del total de bases de datos
  3. Listado de tablas de una base de datos específica
  4. Listado de registros de una tabla
  5. Concatenación  de “querys” y alteración de información a través de inyecciones (muy importante)

 

 

Finalmente, ¿ alguien podría realmente cambiar las notas de cursos en la universidad?

Como esa pregunta me seguía dando vueltas en la cabeza y sentía que no podía vivir con esa duda existencial, decidí probar en la página web de una universidad que no estaba en listado de “Zone-H” e identificar si son tan descuidados como para permitir inyecciones de código SQL. Obviamente no voy a decir que universidad he probado, sólo que es una universidad Nacional del Perú y que la manera que he probado es colocando la super-archi conocida comilla simple (‘) y una UNION para observar que comportamiento de la página web, no he ahondado más porque mi objetivo es sólo verificar que es vulnerable y no hackear la página, de hecho la he reportado con la esperanza de que solucionen el problema. Es importante mencionar que utiliza Microsoft SQL Server y que eventualmente se podrían modificar los registros, es decir, es muy probable que si se puedan cambiar las notas de la universidad y ser profesionales de dudosa reputación.

image

 

image

 

 

Conclusiones:

  1. Existe una demanda grande de “alumnos” que desean aprobar o modificar calificaciones estudiantiles muy grande y los centros de estudio deben preocuparse por la seguridad de la información para evitar incidentes de seguridad. Obviamente los que se publicitan por Internet es muy probable que sean estafadores.
  2. Es posible modificar información de manera remota a través de vulnerabilidades del tipo Microsoft SQL Server
  3. Existe un alto número de páginas web de centros educativos que han sido hackeados en el Perú, los registrados en ZONE-H suman 1444 páginas web hackeadas con el dominio .EDU.PE.
  4. Las buenas prácticas de desarrollo a través de APIs son la mejor solución para el desarrollo seguro de aplicaciones web. Revisen ESAPI del proyecto OWASP.
  5. Los controles a nivel de acceso a las bases de datos y tener logs de monitoreo sobre las bases de datos nos permiten identificar posibles fraudes realizados muchas veces por personal de confianza como los mismos DBA.

***************************************************************

Popularity: 30% [?]

sqli_clase4

Esta es la última entrada de la primera serie de videotutoriales sobre INYECCIONES SQL basadas en uniones. Hasta aquí hemos visto todo lo básico, desde aprender algo del lenguaje SQL hasta extraer la información de las tablas, lo siguiente que vamos a analizar son las inyecciones SQL a ciegas o conocidas como Blind SQLi. Para terminar esta primera parte voy a publicar el último video y el script desarrollado en Python para automatizar los ataques.

Gracias a todos por sus comentarios enviados a mi correo, de alguna manera se siente bien que haya personas que lean este humilde blog.

Temario de la Clase 04:

  1. Automatizar ataques de SQLi con Python
  2. Ataques a páginas web con nuestro script

El material utilizado:

  1. El código de la aplicación web:  [DESCARGAR AQUÍ]
  2. La base de datos de la aplicación: [DESCARGAR AQUÍ]
  3. La presentación en PREZI: [DESCARGAR AQUÍ]

Saludos,

Omar

********************************************************

Aquí les dejo el script desarrollado para el videotutorial.

Popularity: 31% [?]

1052485_10151493036042666_45904221_oPrimero lo primero:

Gracias a todos los que están siguiendo estos videotutoriales, hay muchos que me están escribiendo para que siga con los videos y haciendo hasta pedidos alucinantes, pedidos como:

- “Hey brother hackeame esta página por favor”
- “Ayúdame a encontrar el password de esta aplicación”
- “Te pago 500 dólares si me hackeas esta página brother”

Obviamente otros me escriben para agradecerme y felicitarme por los videos, muchas gracias a todos los escriben Risa y disculpen si no puedo contestarles a todos pero realmente es humanamente imposible poder hacerlo, dicho esto, continuemos con el tercer videotutorial.

Temario de la Clase 03:

1. Obtener información(registros) de las Bases de Datos
2. Obtener información de la Base de Datos MYSQL
- Tabla User
- Doble SHA1, funcion password
3. Craking de contraseñas
- Rainbow tables
4. Ataques con SQLMAP

El material utilizado:

  1. El código de la aplicación web:  [DESCARGAR AQUÍ]
  2. La base de datos de la aplicación: [DESCARGAR AQUÍ]
  3. La presentación en PREZI: [DESCARGAR AQUÍ]

Aquí el videotutorial. Saludos a todos.

Popularity: 26% [?]

1Hoy no nada que decir, sólo publicar el segundo videotutorial de inyecciones SQL.

El temario tocado en el segundo videotutorial es:

Temario Clase 2:

  1. Herramientas que nos ayudan a identificar SQLi
  2. Obtener información a través de SQLi
  3. Inyecciones basadas en UNIONES
    - Obtener número columnas con ORDER BY: Búsqueda binaria
    - Realizando la inyección con uniones
  4. Funciones básicas de MySQL
    - Función: Database, user, current_user, datadir
  5. Funciones de concatenación: CONCAT, GROUP_CONCAT, CONCAT_WS
  6. Analizando la base de datos: INFORMATION_SCHEMA

Sin más que decirles, aquí el segundo video. Saludos,

El material utilizado:

  1. El código de la aplicación web:  [DESCARGAR AQUÍ]
  2. La base de datos de la aplicación: [DESCARGAR AQUÍ]
  3. La presentación en PREZI: [DESCARGAR AQUÍ]

Popularity: 26% [?]

mini

Este es el primer post de una serie de entradas (al menos eso espero) sobre las inyecciones SQL, los objetivos de las próximas entradas son las siguientes:

  1. Entender como funcionas las inyecciones SQL
  2. Entender los diferentes mecanismos y técnicas para realizar inyecciones SQL
  3. Automatizar nuestros propios ataques con Python
  4. Ocuparme en algo y no estar aburrido (ese es un objetivo sólo para el autor de este Blog)

La idea es que ustedes puedan realizar sus propias inyecciones sin necesitar de una herramienta cuando se encuentren alguna inyección fuera de lo convencional, es decir, puedan ustedes realizar su propio script y automatizar el ataque. La motivación para realizar estos post se debió a que he escuchado a tres personas que se están preparando para rendir el examen de CEHv8 expresar frases como estas:

*******************************************
Frase 1: “Pucha…. toda la parte de scaneo, enumeración, análisis de vulnerabilidades me lo se pero donde tengo problemas es en la parte web”
Frase 2: “Yo no programo hace muuuucho por eso no me siento preparado para las preguntas sobre aplicaciones web”
Frase 3: “Deberían quitar la parte de seguridad de aplicaciones y al toque doy el examen” – la frase más divertida de todas.
*******************************************

Consideraciones para el curso

  1. Cada clase se adjuntará un archivo donde está el código de la aplicación web y la base de datos requerida.
  2. La primera parte del curso es teoría (lo siento pero es necesario),es decir, cómo es que funciona o se realiza la inyección de manera conceptual (esta es la parte más importante)
  3. Crearemos nuestros propio script para automatizar el ataque, el script lo estoy haciendo en Python. De pronto toca aprender algo de Python pero tampoco vamos a salir unos expertos en esto, no es la idea.
  4. Finalmente usaremos SQLMAP u otra herramienta para incluirla dentro del estudio

Clase 1: Inyecciones basadas en UNIONES (inyecciones NORMALES)

Como lo veremos más adelante existen diferentes mecanismos para realizar inyecciones SQL, conforme avancemos con las entradas las iremos explicando así que no desesperen. Comenzaremos con dos (02) o hasta tres (03) videotutoriales (es que aun no se cuanto me pueda tardar en explicar todo) sobre las inyecciones basadas en uniones o como también la conocen algunos, “Inyecciones Normales”. Estas inyecciones sirven para explicar absolutamente todo lo básico sobre las inyecciones SQL así que sin más preámbulos iniciemos.

Los puntos a tocar en la Clase 1 son:

  1. Concepto de SQLi (SQL Injection)
  2. Entender como funciona MySQL
  3. ¿Cómo identificar las inyecciones SQL?
    - Concatenaciones
    - Operadores matemáticos
    - Errores
  4. Entendiendo los distintos tipos de sentencias SQL

El material utilizado:

  1. El código de la aplicación web:  [DESCARGAR AQUÍ]
  2. La base de datos de la aplicación: [DESCARGAR AQUÍ]
  3. La presentación en PREZI: [DESCARGAR AQUÍ]

Aquí les dejo el primero videotutorial. Hasta la próxima. Saludos.

Popularity: 23% [?]