Common User Passwords Profiler (CUPP)

•2 Agost 2015 • Feu un comentari

Com tots sabem els password acostumen a ser, tot i els consells en contra dels experts, combinacions de termes relacionats i molt propers de les persones que els utilitzen.  Així doncs tant els hackers com els auditors de seguretat ràpidament veuen la necessitat de utilitzar alguna eina que faciliti crear diccionaris personalitzats per atacar les credencials de usuaris o objectius concrets.

L’eina que s’utilitza de forma general, i que de fet ja fa molts anys que existeix, és CUPP (Common User Passwords Profiler).  Aquesta eina escrita en Python per Mebus, i actualitzada fa molt poc per el seu creador, ens permetrà generar diccionaris personalitzats i/o descarregar diccionaris generals que també ens poden ser de gran ajuda.

El seu ús es trivial, com tot script de python el llençarem amb la comanda:

python cupp.py

Execució de CUPP sense paràmetres mostra les opcions disponibles.

Execució de CUPP sense paràmetres mostra les opcions disponibles.

A partir d’aquí ens apareixeran les opcions del programa:

  • -h: L’ajuda, simplement.
  • -i: Qüestionari interactiu que ens permetrà anar introduint informació sobre el nostre objectiu i sobre el diccionari resultant que volem.  Aquesta és l’opció estrella del programa i la que possiblement ens emetrà aconseguir l’èxit en l’atac de diccionari.
  • -w: Ens permetrà modificar un diccionari ja existent.
  • -l: Descarregar diccionaris estàndard per temàtica o idioma (entre ells l’espanyol).
  • -a: Descarregar un diccionari general en anglès.
  • -v: Mostra la versió del programa.

Com podeu veure, el seu ús és super simple i els seus resultats son realment impressionants.   Dins del qüestionari que ens obre al opció -i ens demanarà dates, incloure nombres aleatoris, substituir vocals per nombres, combinar varies paraules, combinar majúscules amb minúscules, afegir paraules extres relacionades amb la persona, etc… el resultat, si s’ha fet una bona recollida de informació sobre l’objectiu, serà un diccionari molt extens i super complert totalment enfocat a la persona objectiu.  La delícia en tota auditoria de seguretat!

Un exemple d’aquesta funcionalitat és el següent:

Llançant CUPP amb el paràmetre -i ens permet omplir un formulari a partir del qual generarà un diccionari personalitzat.

Llançant CUPP amb el paràmetre -i ens permet omplir un formulari a partir del qual generarà un diccionari personalitzat.

Aquesta execució tan simple, i sense afegir paraules clau relacionades amb mi, ha general un diccionari en forma d’arxiu de text pla amb 23.727 contrasenyes que podrem fer servir en atacs de diccionari.

CUPP junt amb dTools poden suposar la diferència entre un atac/auditoria exitós o uns simples registres en els logs…

Anuncis

Control de presència amb Python mitjançant la wifi i dispositius mòbils

•24 Abril 2015 • Feu un comentari

L’esperit hacker implica essencialment intentar pensar altres maneres de fer les cosses, donar voltes als mitjons.  Ja fa temps que havia realitzat scripts en python per a detectar els mòbils, veure a quines xarxes wifi s’acostumaven a connectar, etc, per a treure el màxim de informació d’aquests dispositius.

Tanmateix aquest mateix principi es pot aplicar per aconseguir moltes més coses.  Ahir vaig tenir ganes de programar i em va venir la idea de fer un petit script per a passar llista a classe sense haver “d’aixecar el cap” (totalment estúpid, però divertit).  Així doncs, tenint en compte que els meus alumnes no es desenganxen dels seus mòbils ni en els seus pitjors malsons, l’objectiu era veure quins aparells estaven a l’abast de la meva antena i, junt amb una base de dades amb les seves MAC, poder treure el llistat de faltes al moment.

Poc a poc vaig anar desenvolupant la idea i va degenerar en un control de presència que captura els paquets de probe dels mòbils i en fa un seguiment, tot indicant qui hi és present, quan arriba i quan marxa en cada instant del temps.

¿Utilitats? Doncs amb una mica més de feina pot servir com a sistema de control de presència per a empreses, instal·lat en l’accés del edifici.  També com a eina per mesurar el pas de potencials clients d’un establiment, fins i tot calculant el temps que s’hi passen, etc  La imaginació és el límit.

Podeu trobar el programa de control de presència en els repositoris de GitLab sota llicència GPL v.:2.0

Happy Hacking!

Parada forçada durant uns messos

•18 Març 2015 • Feu un comentari

Hola gent,

com heu pogut veure el flux de posts s’ha tallat de cop.  La raó és un nou projecte que m’està absorbint gran quantitat de temps.  Malgrat tot tinc algun post al tinter i espero poder-lo penjar en una o dues setmanes.

Us demano disculpes, en quant recuperi una mica de temps lliure tornaré a arrencar.

La mala costum del copy/paste: What You See Is Not What You Copy (WYSINWYC)

•12 febrer 2015 • Feu un comentari

Ahir comentàvem amb un company la costum tan dolenta de fer copy/paste que tenen els nostres alumnes, tota la informació que els hi aportem o troben en format de tutorial acaba igual que l’aigua destil·lada: tal com entra surt.  Això em va fer recordar una antiga tècnica per a inyectar comandes a un terminal d’un usuari que tingués aquest hàbit.  La tècnica, que té l’acrònim de WYSINWYC (What You See Is Not What You Copy), va ser publicada ja en el 2008 i a dia d’avui encara és més que factible i explotable!

La idea és simple: utilitzar una capa, amb l’etiqueta span, per a amagar comandes que al fer copy/paste també es copiaran i s’executaran en el terminal de la víctima.  Per a fer la prova de concepte podeu crear una arxiu html i incloure aquest codi:

<html>
<head>
<meta charset=”UTF-8″>
</head>
<body>
Això és un PoC. Fes copy paste d’aquesta comanda al terminal de Linux.<p>
ls
<span style=”position: absolute; left: -100px; top: -100px”>
> /dev/null <br>
cat /etc/passwd<br>
</span>
-la
</body>
</html>

El resultat, si ho obres amb FireFox o un navegador similar serà aquest:

Resultat de l'atac WYSINWYC... ara fes copy/paste de la comanda ls -la

Resultat de l’atac WYSINWYC… ara fes copy/paste de la comanda ls -la

I ara què? Doncs prova de fer copy/paste a un terminal d’aquesta comanda ls -la

Sorpresa! S’ha llistat el contingut de l’arxiu /etc/passwd !

Si ens fixem en el codi de la web veurem que dins de la capa <span> hi he posat primer una redirecció cap a null per a que la comanda ls que es copia primera no aparegui per pantalla i que els “enters” son en aquest cas etiquetes <br>.  Podríem millorar el codi per a fer-ho més elegant i que l’usuari no  res de res.

A partir d’aquí aplicar la imaginació.  Podríem fer que s’obris un port amb el netcat, obrint així una backdoor, o que s’executessin comandes com wget per a descarregar i executar rootkits, etc.  De fet, i sense pensar gaire estona, veurem que ens dona control total sobre l’ordinador objectiu!!! (calen permisos de root? feu que la comanda porti un sudo i deixem que l’usuari ens entri el password XD).

En definitiva, un atac demoledor i molt útil per a infectar màquines, crear botnets, etc…

Si seguiu tutorials copieu a mà les comandes, aprendreu més i us estalviareu problemes!

Sigueu bons!

Neteja de metadades a Linux amb MAT

•5 febrer 2015 • Feu un comentari

Ja s’ha explicat per activa i per passiva el perill que representen les metadades.  Fugues de informació involuntàries on podem distribuir junt amb els documents informació referent als usuaris dels nostres sistemes, la topologia de la nostra xarxa, els sistemes operatius i software que utilitzem, els llocs que freqüentem, etc.  Però quanta gent ens explica com evitar aquest problema?

Una bona eina per a fer-ho des de Linux, i que està inclosa a la distribució Tails (especialitzada en anomitzar l’ús informàtic), és MAT (Metadata Anonymisation Toolkit).  Per instal·lar ho podem fer amb un simple apt-get:

apt-get install mat

A partir d’aquí tenim les següents opcions:

Opcions de MAT

Opcions de MAT

Veiem ràpidament que per verificar si un document té metadades podem fer-ho amb la opció -c , però sempre és més divertit directament veure les metadades oi? Doncs utilitzem la opció -d

Metadades d'un arxiu d'exemple amb MAT.

Metadades d’un arxiu d’exemple amb MAT.

Aquí podem veure per exemple, que el nom original de l’arxiu s’ha modificat, la data de creació, l’eina utilitzada per crear el PDF, la descripció, la uuid! i poca cosa més.

Per netejar tota aquesta informació i poder publicar aquest document amb la tranquil·litat de que no conté metadades hem d’utilitzar MAT sense cap opció:

Netejant metadades amb MAT.

Netejant metadades amb MAT.

I verifiquem que el document ja no conté metadades:

Document net de metadades.

Document net de metadades.

A Windows fins i tot és més sencill, tan sols fer botó dret sobre l’arxiu, triar l’opció de sota “Quitar propiedades y información personal”

Propietats de l’arxiu.

S’obrirà una nova finestra on podrem triar quines dades eliminar del document, no cal dir que millor netejar-ho tot!

“Quitar propiedades” de Windows.

Salut!

Portals captius = Barra lliure

•29 gener 2015 • Feu un comentari

Avui no us porto un post tècnic, ni tan sols innovador.  Tan sols unes quantes reflexions després de veure les diferents wifis del meu entorn proper i d’alguns clients.

I és que estan força esteses les wifis obertes amb portals captius (traducció directa) que permeten a les empreses oferir sortida a Internet als clients/usuaris i derivar-ne en part les responsabilitats del seu us, a més de simplificar-ne molt la configuració i ús per part dels usuaris.  A priori sembla una gran solució, els administradors automatitzen l’emissió de tiquets o credencials (restringuint així el seu us temporal, i fins i tot podent implementar sistemes de pagament) i a més exoneren responsabilitats derivades de l’ús que fa l’usuari de la seva connexió a Internet.

Tanmateix hem de veure que aquests tipus de xarxes son extremadament perilloses, tant per usuaris com per a les empresses que les implementen.

El primer que ens ha de alertar és el fet de que aquestes wifis, per norma, no tenen cap tipus d’encriptació.  Així faciliten que els clients es connectin i no sigui innecessari anar donant passwords.  Això ens aboca a un escenari pla on fins i tot, aquells que no disposen de credencials per sortir a Internet, tenen accés directe a tots els dispositius connectats i permet fer atacs MitM i Sniffing de les comunicacions, etc… tot el que puguem imaginar de forma maligna! XD.  De fet no cal ni connectar-se a la xarxa per capturar el tràfic de la resta de clients!  El pitjor escenari que podríem imaginar en un medi de comunicació compartit i de difícil delimitació en l’espai.

Si això no fos prou greu de per si, hi hem d’afegir l’ús extremadament irresponsable que en fan les empresses que ofereixen aquests serveis.  He arribat a veure hospitals que, en la mateixa xarxa en la que ofereixen Internet als seus pacients hospitalitzats, hi tenen ordinadors connectats amb el nom de netbios LABORATIRI1!! O centres comercials amb ordinadors connectats del tipus MARQUETING.  Potser son honeypots (pobre de mi, encara intento pensar bé!) però el més segur és que sigui el resultat de la solució ràpida i senzilla per no haver de tirar cable de xarxa o configurar una nova wifi.  De boixos!!

I tants riscos per a què? Si la major part de portals captius es poden saltar fer MAC Spoofing amb MAC Changer!  Tan sols cap mirar els nostres veïns amb Nmap per trobar la MAC d’algun client ja autenticat i fer-nos passar per ell.

ifconfig wlan0 down

macchanger –mac=XX:XX:XX:XX:XX:XX wlan0

ifconfig wlan0 up

Tot plegat, un sense sentit.

Post-Explotació: Extracció de credencials de FireFox o Thunderbird

•22 gener 2015 • Feu un comentari

En la fase de post-explotació d’un pentesting podem intentar recuperar les credencials emmagatzemades en FireFox o Thunderbird per a emprar-les en atacs de enginyeria social, tenir accés a aplicacions web (internes o externes) o simplement per veure si coincideixen amb credencials del sistema.

Per fer-ho necessitarem primer de tot aconseguir els arxius key3.db, signons.sqlite i cert8.db continguts en els perfils d’usuari d’aquestes aplicacions de Mozilla.  Aquest arxius els trobarem en diferents directoris del disc dur, depenent del sistema operatiu, o podem realitzar una cerca molt senzilla a Google per trobar llistats de directoris que continguin els arxius objectiu:

key3.db signons.sqlite cert8.db intitle:”index of” site:domini_objectiu.cat

Un cop obtinguts tan sols necessitarem desencriptar les contrasenyes.  Per fer-ho podem utilitzar un petit script de Python com per exemple ffpassdecrypt d’en Pradeep Nayak.  Per desencriptar els password tan sols haurem de fer:

python ffpassdecrypt <carpeta_arxius>

El resultat és un llistat de host/usuari/password que hi ha emmagatzemats en els arxius.

Resultats en recuperar credencials de ThunderBird i/o FireFox.

Resultats en recuperar credencials de ThunderBird i/o FireFox.

Com podem veure, en qüestió de minuts es poden recol·lectar un bon grapat de credencials si aconseguim accedir a aquesta informació.  Per tant ull a aquests directoris!!