Incognito Lock: el cerrojo que se cierra automáticamente al iniciar la navegación privada en Chrome

Mike, el jefe de la Useless Duck Company, ha creado otro gadget "extraño" pero esta vez bastante útil ya que mucha gente parece estar interesada en comprarlo...

Se trata del Incognito Lock o Cerrojo de Incógnito que básicamente es una cerradura de puerta que está conectada a un ordenador. El cerrojo funciona cerrándose automáticamente cada vez que el usuario inicia una sesión de navegación privada en Chrome (aka modo porno).

El artilugio no es más que una placa Arduino conectada al PC y con un servomotor. Cada vez que el sistema operativo detecta que el usuario ha iniciado una sesión de navegación privada de Chrome "alerta" a la placa Arduino, que a su vez envía un mensaje al servomotor para que se mueva y cierre la puerta. Porque todos necesitamos privacidad al navegar por Internet de forma anónima, ¿verdad?

Mike dice acerca de su producto que soluciona el problema a algunos maridos: "¡Seamos realistas chicos! A veces, cuando estás en el equipo, estás haciendo algo que no quieres que tu esposa vea ... como la compra de sus regalos de Navidad. [...] Pero ¿y si aparece de repente en la habitación mientras estabas haciendo las compras ...? "

Vamos... siendo sinceros podemos decir que es el sueño del onanista despistado... lol!

Tenéis el código en https://github.com/nicholmikey/Incognito-Lock

Os dejo un pequeño vídeo y grandes dosis de humor:

Fuente: This Door Lock Automatically Closes When You Switch to Private Browsing

100 grupos de hackers famosos

Como ya sabéis, hace poco el enigmático grupo denominado 'The Shadow Brokers' se hizo con muchas (ciber)herramientas de la NSA supuestamente del otrora grupo 'Equation Group'. Se vuelve hablar mucho de grupos de hackers pero no se trata de una moda reciente: existen desde el primer minuto del nacimiento underground.

Gente que se asocia y trabaja hackeando sistemas con un objetivo común, temporal o permanente, con buenas o malas intenciones... Hay tantos grupos como colores, algunos cuyos miembros se cuentan con los dedos de una mano y otros formados por decenas o quizás cientos de personas anónimas repartidas por todo el mundo.

Cada uno tiene su propia historia. Es imposible saber de todas, sobretodo la de aquellos cuya labor no ha transcendido, ya porque no fue lo suficientemente relevante o porque se su actividad se mantiene en la sombra (y quizás nunca se descubra).

Pero al menos si nos parece interesante tener un recopilatorio de aquellos que nos atrevemos a denominar "famosos" porque sus hazañas se conocen y han saltado a los medios de comunicación. Así que aquí os dejamos una lista en estricto orden alfabético de, nada más y nada menos, 100 grupos de hackers de ayer y hoy y para todos los gustos, un imprescindible para entretenerse en verano siguiendo cada enlace y alimentando nuestra cultura hacker ;)
  1. !Hispahack
  2. 414s
  3. A-Team
  4. Ajax Security Team / Flying Kitten
  5. Anonymous  
  6. Apòstols 
  7. APT28
  8. Armada Collective
  9. Axiom
  10. Bureau 121
  11. Chaos Computer Club

Toolkits ofensivos en PowerShell

PowerShell es muy potente porque permite ejecutar .Net y código dinámico desde otro sistema (también en Internet) y ejecutarlo en memoria sin tocar el disco. Eso hace que usarlo sea uno de los métodos preferidos para ganar y mantener el acceso a sistemas Windows. Sin embargo la versión 5 ya mejora la seguridad y cuando se ejecuta en Windows 10 las capacidades de ataque disminuyen.

No obstante, todavía Powershell sigue siendo un arma muy útil en cuanto no se suele bloquear su uso (como se hace por ej. con cmd.exe), no se monitoriza y muchos productos de seguridad de puesto de usuario ni siquiera revisan su actividad. Además existen algunos toolkits de ataque en Powershell que facilitan mucho la vida a los pentesters (buenos y malos):

PowerSploit

Descripción: Un Framework de Post-Exploitation en powershell usado por muchas herramientas de ataque.
Uso: Recon, escalado de privilegios, robo de credentiales, persistencia.
Autores: Matt Graeber (@Mattifestation) & Chris Campbell (@obscuresec)
Cmdlets populares:
  • Invoke-DllInjection.ps1
  • Invoke-Shellcode.ps1
  • Invoke-WmiCommand.ps1
  • Get-GPPPassword.ps1
  • Get-Keystrokes.ps1
  • Get-TimedScreenshot.ps1
  • Get-VaultCredential.ps1
  • Invoke-CredentialInjection.ps1
  • Invoke-Mimikatz.ps1
  • Invoke-NinjaCopy.ps1
  • Invoke-TokenManipulation.ps1
  • Out-Minidump.ps1
  • VolumeShadowCopyTools.ps1
  • Invoke-ReflectivePEInjection.ps1

Invoke-Mimikatz

Características: Ejecución de Mimikatz desde PowerShell, robo de credendiales e inyección, creación de tickets Kerberos y más
Uso: robo y reutilización de credenciales, Persistencia
Autor: Joseph Bialek (@clymb3r)

PowerView

Descripción: Herramienta de enumeración del DA escrita puramente en PowerShell. Ahora forma parte de PowerSploit.
Uso: Recon
Autor: Will Harmjoy (@HarmJ0y)
Cmdlets populares:
  • Get-NetUser
  • Get-NetGroup
  • Get-NetGroupMember
  • Get-NetLocalGroup
  • Get-NetSession
  • Invoke-UserHunter
  • Get-NetOU
  • Find-GPOLocation
  • Get-NetGPOGroup
  • Get-ObjectACL
  • Add-ObjectACL
  • Invoke-ACLScanner
  • Set-ADObject
  • Invoke-DowngradeAccount
  • Get-NetForest
  • Get-NetForestTrust
  • Get-NetForestDomain
  • Get-NetDomainTrust
  • Get-MapDomainTrust

RetroScope: herramienta forense para recuperar las últimas imágenes de un dispositivo Android

Imagina que un criminal tiene una conversación en Telegram con uno de sus contactos para facilitarle la dirección de recogida de cierta mercancía. Justo antes de enviar el mensaje que está escribiendo con la dirección, se da cuenta de que la policía le sigue y no lo manda, incluso borra todos los logs y cierra la sesión. Al rato la policía entra y confisca su smartphone y una hora después incauta la mercancía... ¿Cómo es posible que la policía supiera la dirección si no llegó a mandar el mensaje con la información?

Seguro que habéis pensado que el smartphone estaba troyanizado antes y las fuerzas de seguridad usaban un keylogger, pero no es el caso...

La policía usó la herramienta RetroScope, volcó la memoria del dispositivo y fue capaz de reconstruir las imágenes anteriores de forma similar a como se hizo en el siguiente video:


¿Impresionante verdad? La herramienta fue publicada por investigadores de la universidad Purdue de Indiana el pasado USENIX Security Symposium del 10-12 de agosto y usa el framework de renderizado de Android para recuperar las últimas imágenes de la memoria volátil con el comando redraw. Durante las demos fueron capaces de recuperar de 3 a 11 últimas imágenes de 15 aplicaciones diferentes. Sin duda un nuevo paradigma en la investigación forense de dispositivos móviles.

Proyecto: https://github.com/ProjectRetroScope/RetroScope

¡Guerra de hackers! publican algunas herramientas que usa la NSA y ponen en venta el resto

Erase una vez un grupo de hackers que viene operando desde mediados de los 90 en más de 30 países, uno al que llaman Equation Group porque sus integrantes usan múltiples algoritmos de cifrado, estrategias de ofuscación y métodos increíblemente sofisticados en sus operaciones (incluso la capacidad infectar el firmware de discos duros).

Su infraestructura de C&C contempla más de 100 servidores y 300 dominios "por proxy" para ocultar la información del registrador y muchos les relacionan directamente con la mismísima NSA ya que se cree que realizan trabajos de hacking contra gobiernos y desarrollan herramientas de ciberespionaje para Estados Unidos.

Pues bien, el 13 de agosto entró en escena otro misterioso grupo denominado The Shadow Brokers que asegura haber comprometido los sistemas de varios hackers de Equation extrayendo datos que incluyen varias de sus herramientas de hacking y ciberespionaje. En el primer leak publicaban dos enlaces para descargar ficheros cifrados con PGP:

- El primero “eqgrp-free-file.tar.xz.gpg” (mirror en Github) es una "muestra gratuita" para probar su hazaña con 300MB de herramientas, scripts y exploits bajo los pseudónimos BANANAUSURPER, BLATSTING, BUZZDIRECTION...

- El segundo “eqgrp-auction-file.tar.xz.gpg”, todavía disponible en MEGA pero por descifrar, tiene como *absurdo* precio 1 millón de bitcoins, 1/15 del total de BTC en el mundo, lol! ...


Pero, ¿se trata realmente de las herramientas de Equation Group / NSA? Pues viendo el primer archivo todo apunta que sí...

UACME y dí adiós al mensaje “¿Desea permitir que este programa realice cambios en el equipo?”

El Control de Cuentas de Usuario (UAC) en Windows es un componente de seguridad que permite a los usuarios realizar algunas tareas sin tener que cambiar de usuario, cerrar sesión, o utilizar "Ejecutar como".

Las cuentas de usuario que son miembros del grupo Administradores locales ejecutan la mayoría de las aplicaciones como un usuario estándar. Es decir, al separar las funciones de usuario y administrador, UAC permite usar por defecto privilegios estándar y sólo "elevarlos" cuando sea necesario.

Cuando un administrador inicia sesión en un equipo que ejecuta Windows, al usuario se le asignan dos tokens de acceso independientes. Los tokens de acceso, que contienen la pertenencia a grupos de un usuario y los datos de autorización y control de acceso, son utilizados por el sistema operativo para controlar cuáles son los recursos y tareas a los que tiene acceso.

Anteriormente el modelo de control de acceso en los sistemas Windows anteriores no requería ningún token de acceso administrativo. Como resultado, se podía instalar software malicioso sin notificar a los usuarios (instalación "silenciosa"). O peor, si el usuario era administrador, el software malicioso podía llegar a infectar archivos del kernel convirtiéndolo en casi imposible de eliminar. Sin embargo la alerta o prompt "mágico" de UAC da al usuario la oportunidad de detener la amenaza antes de que llegue a materializarse.


Pero el malware siempre va un paso adelante y desarrolla continuamente nuevos métodos para evadir UAC y poder propagarse por el sistema de la víctima sin que se percate. Para ver las técnicas más populares la herramienta de facto es sin duda UACME, escrita en C y de código abierto que, a día de publicación de esta entrada, implementa 23 métodos distintos de los cuales, los cuatro últimos, todavía no han sido corregidos y funcionan desde Windows 7 a 10rs1 14393:

20 - Método híbrido, abusa de la Microsoft Management Console y un incorrecto esquema de carga de dlls
21 - Método híbrido, abusa de SxS DotLocal con sysprep
22 - Método híbrido, abusa de SxS DotLocal con el consentimiento para ganar privilegios de sistema
23 - Método híbrido, abusa del Package Manager y DISM

Su ejecución es tan sencilla como llamar al programa correspondiente a la arquitectura del sistema (32 o 64 bits) con el parámetro del método a probar y opcionalmente otro programa a lanzar después del bypass. Por ej.:

    akagi32.exe 1
    akagi64.exe 3
    akagi32 1 c:\windows\system32\calc.exe
    akagi64 3 c:\windows\system32\charmap.exe


No obstante y avisados estáis, es recomendable ejecutarlo en un entorno de pruebas ya que algunos métodos persisten incluso después de reiniciar y requieren su corrección manual.

Proyecto: https://github.com/hfiref0x/UACME

MAT: una herramienta para borrar metadatos en múltiples formatos

Cuando haces una foto tú cámara añade por defecto al fichero resultante los datos del modelo del dispositivo y dónde y cuándo se tomó dicha foto; en la mayoría de los documentos ofimáticos (pdf u office) se incluye automáticamente información del autor y la compañía correspondientes... Son los típicos ejemplos de lo que (y ya sabes de lo que estamos hablando) se denomina comúnmente metadatos.

Toda esta información que dejamos (casi siempre de forma inconsciente) en numerosos archivos incluso en Internet, puede exponer nuestra privacidad y es auténtico "oro" para muchos con no demasiadas buenas intenciones. Por eso si vas a subir un archivo y quieres mantener cierto nivel de anonimato puede ser es buena idea limpiar los metadatos antes.

Para ello hoy hablamos de MAT (Metadata Anonymisation Toolkit), una herramienta escrita en Python para limpiar metadatos que fue desarrollada durante el Google Summer of Code de 2011 bajo el paraguas del proyecto Tor y que se incluye por defecto en Tails y en los repositorios de Debian.
Y quizás su característica más interesante es que, a diferencia de otras herramientas como exiftool, es capaz de tratar un gran número de formatos:
  •     Portable Network Graphics (.png)
  •     JPEG (.jpg, .jpeg, …)
  •     TIFF (.tif, tiff, …)
  •     Open Documents (.odt, .odx, .ods, …)
  •     Office OpenXml (.docx, .pptx, .xlsx, …)
  •     Portable Document Fileformat (.pdf)
  •     Tape ARchives (.tar, .tar.bz2, …)
  •     MPEG AUdio (.mp3, .mp2, .mp1, …)
  •     Ogg Vorbis (.ogg, …)
  •     Free Lossless Audio Codec (.flac)
  •     Torrent (.torrent)

Proyecto: https://mat.boum.org/

Dónde obtener MAT:
Referencias:
pd. No obstante si quieres ser totalmente anónimo usa formatos que no contengan metadatos, o mejor, usa texto plano. Aún así ten en cuenta que existen múltiples técnicas de fingerprinting y seguimiento. ¡Se cuidadoso!

Cómo identificar el proceso que está usando un puerto TCP determinado

Seguro que ya os ha pasado, al iniciar un servicio (o una shell }:-)) falla porque hay otro proceso que ya levantó anteriormente el mismo puerto TCP...

Para encontrar rápidamente que proceso está usando el puerto en cuestión lo más fácil y recurrente es usar el comando "netstat" y bueno... vi una breve entrada en la wiki de SAP y siempre está bien tener una chuleta a mano en el blog... :-P

LINUX:
> netstat -nepal|grep 8080
tcp 0 0 :::8080 :::* LISTEN 10404 18906159 7952/java

En este primer ejemplo (Linux) vemos que el proceso con PID 7952 (java) está usando el puerto TCP 8080.

WINDOWS:
> netstat -nao|findstr 8080
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 3696
TCP []:8080 []:0 LISTENING 3696

En este ejemplo en Windows, encontramos que el proceso con PID 3696 es el que tiene ocupado el puerto (8080).

También es posible usar en Windows "netstat -ab" que mostrará todos los procesos asociados al puerto. La opción "a" lista todas las conexiones y la opción "b" muestra el ejecutable correspondiente.

AIX:
> netstat -Aan | grep 8000 | grep LISTEN
f1000e000130bbb8 tcp4       0      0  *.8000                *.*                   LISTEN
> rmsock f1000e000130bbb8 tcpcb
The socket 0xf1000e000130b808 is being held by proccess 13893704 (icman).
> ps -ef | grep 13893704
  vmcadm 13893704  9175156   0   Dec 22      -  0:17 icman -attach pf=/usr/sap/VMC/SYS/profile/VMC_DVEBMGS00_is4039

SOLARIS:
> ps -ef| awk '{print $2}'| xargs -I '{}' sh -c 'echo Verifying PID {}; pfiles {} 2>/dev/null|grep "port: 3900"|grep -v grep'
(...)
Verifying PID 3150
Verifying PID 4848
Verifying PID 4891
Verifying PID 7900
   sockname: AF_INET 0.0.0.0  port: 3900
Verifying PID 4831
Verifying PID 23568
Verifying PID 7928
Verifying PID 9662
(...)
> ps -ef|grep 7900|grep -v grep
  qpkadm  7900  7840   0   Jun 21 ?           1:38 ms.sapQPK_DVEBMGS00 pf=/usr/sap/QPK/SYS/profile/QPK_DVEBMGS00_fs4400

El primer comando mostrará la lista con el PID de todos los procesos activos en el sistema. El número de puerto debe ser indicado con el comando "grep".

El PID que está usando el puerto será el inmediatamente anterior a la línea que termina en "port: " ("port: 3900" en el ejemplo anterior).

El segundo comando mostrará la informacion del proceso en sí mismo.

Fuente: https://wiki.scn.sap.com/wiki/display/SI/How+to+find+the+process+binding+a+TCP+port

Pacdoor: malware implementado como fichero .PAC (Proxy Auto-Configuration)

Ya empieza a liberarse material de la BlackHat USA 2016 que seguro dará que hablar mucho durante las próximas semanas, si no meses...

La primera charla que destacamos es 'Crippling HTTPS with Unholy PAC' de Itzik Kotler y Amit Klein de SafeBreach Labs en la que demostraban que forzando al navegador/sistema a usar un recurso PAC malicioso (Proxy Autoconfiguration) es posible comprometer hasta la sesiones en sitios accediendo bajo HTTPS.

Para la "prueba de concepto" han publicado la herramienta Pacdoor, una especie de malware para PAC (javascript malicioso en el fichero .pac) que establece un canal de comunicación bidireccional (cliente-servidor en Python), puede realizar phishing contextual a través de mensajes, tiene opciones DoS y permite la extracción de datos sensibles de las URIs. Además es multiplataforma (Linux, Windows, Mac) y multinavegador (IE, Chrome, Safari).

Instalación

Pacdoor requiere Python 2.7.x.

$ git clone https://github.com/SafeBreach-Labs/pacdoor.git
$ cd pacdoor
$ cd server
$ pip install -r requirements.txt


Uso

# Assuming WPAD-enabled Machine on Interface `vmnet2'
./usr/local/sbin/dhcpd -d vmnet2
./pac_websrv.py 80
# Assume attacker controlled machine IP is 192.168.150.1
./dns_cnc_srv.py -wsrv 192.168.150.1


Github: https://github.com/SafeBreach-Labs/pacdoor

Cómo el estado de la batería de tu smartphone puede ser usado para identificarte

Otra vuelta de tuerca contra la privacidad... al parecer se están utilizando los indicadores de estado de batería para realizar seguimiento a dispositivos, o al menos eso corroboran los investigadores de la Universidad de Princeton.

Existe un estándar web *de momento y al parecer* poco conocido que permite a los propietarios de los sitios web ver en detalle el tiempo de duración de la batería de un dispositivo móvil, algo que sin embargo y que ya se advirtió... podría permitir el seguimiento online.

La API de estado de la batería se introdujo en la quinta versión de HTML5, disponible en agosto de 2015 en Firefox, Opera y Chrome, y como comentamos permite a los propietarios del sitio ver el porcentaje de duración de la batería de un dispositivo, así como el tiempo que tardará en agotarse o el tiempo que necesita para cargarse, además de si está conectado a una fuente de alimentación.

Precisamente la combinación del porcentaje y de los segundos de duración de la batería ofrece 14m combinaciones, proporcionando un identificador pseudo-único para cada dispositivo.

Supongamos que un usuario carga una página web "A" en su versión de Firefox y luego abre otra página web "B" utilizando un navegador Chrome en modo de navegación privada y a través de una VPN segura. Por lo general, sería muy difícil asociar las dos conexiones entre sí, pero si se abren ambas páginas casi a la vez es posible saber que los dos dispositivos son el mismo viendo el estado de la batería.

Ahora, dos investigadores de seguridad de la Universidad de Princeton han demostrado que el indicador de estado de la batería se está utilizando en la práctica realmente para realizar un seguimiento de los usuarios. Mediante la ejecución de un navegador especialmente modificado, Steve Engelhard y Arvind Narayanan encontraron dos secuencias de comandos de seguimiento que utilizan la API de "huella digital" de un dispositivo específico, lo que les permite identificarlo continuamente a través de múltiples contextos.

La investigación fue subrayada por Lukasz Olejnik, uno de los cuatro investigadores que llamó primero la atención sobre los posibles problemas con la API de estado de la batería en el año 2015. Aunque Olejnik logró cierta repercusión después de su advertencia, la API todavía tiene el potencial de usarse de forma indebida.

Y mientras que de momento parece que sólo se utiliza para seguimiento, Olejnik advierte: "Algunas empresas pueden estar analizando la posibilidad de monetizar el acceso a los niveles de la batería", escribe. "Cuando la batería se está agotando, las personas podrían ser propensos a tomar ciertas decisiones. En tales circunstancias, los usuarios estarán de acuerdo en pagar más por un servicio".

Fuentes:
- Your battery status is being used to track you online
- Paper: The leaking battery - A privacy analysis of the HTML5 Battery Status API