SlideShare ist ein Scribd-Unternehmen logo
1 von 87
Downloaden Sie, um offline zu lesen
I KNOW YOUR P4$$W0RD
(AND IF I DON’T, I WILL GUESS IT…)
• Infographic Style
QUIENES
SOMOS???
PABLO CARO
MARTÍN
- Ingeniero Informático
por la Universidad de
Granada
- OSCP, OSCE and all-
around nerd.
- Actualmente
trabajando en Red Team
de Telefónica
JAIME SÁNCHEZ
Hacker – Security Expert
– Occasional Rockstar
- Ingeniero Informático
+ MBA. CISA, CISM,
CISSP y muchas más…
- Speaker habitual en
conferencias como
RootedCon, Blackhat,
Defcon, Shmoocon,
Derbycon etc.
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
¿POR QUÉ?
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
2013 2014 2016 2017
3 billion accounts
Yahoo admitted in
2017 that the
previously reported
data breach in 2013
actually affected all
three billion accounts,
exposing the names,
birth dates, phone
numbers and
passwords of users
whose accounts were
encrypted with what
was weak security.
412 million
That breach also
affected over 15
million "deleted"
accounts that had not
been purged.
An additional 62
million accounts from
Cams.com and seven
million from
Penthouse.com were
stolen.
146 million
The company added
that 209,000 U.S.
credit card numbers
were exposed.
Earlier this year,
Equifax found an
additional 2.4 million
U.S. consumers whose
names and partial
driver’s license
information were
stolen.
EquifaxFriend FinderYahooYahoo
500 million
Data included names,
email addresses,
telephone numbers,
birth dates, encrypted
passwords and,,
security questions. The
U.S. charged four
Russians, including
two Russian Federal
Security Service (FSB)
officers with the crime,
according to the U.S.
Department of Justice.
2019
500 million
An investigation
recently revealed
"unauthorized access"
since 2014 to
information relating to
reservations at
Marriott's Starwood
properties.
Marriot
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
TOP 5 LEAKS
* Más info en https://en.wikipedia.org/wiki/List_of_data_breaches
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
1990s a 2000s:
- No había apenas generación de reglas
- Los datos públicos eran mucho más pequeños
- Poco intercambio de estrategias y técnicas de cracking
- Comunidad dispersa
- Lanmanager -> LM hashes y Windows NT -> MD4 NTLM
- Uso fundamentalmente de CPU
- Aparecen las rainbow tables
- Pasamos de Cracker Jack a John the Ripper / l0pthCrack
2007+ a 2019:
- Equipos de password cracking conocidos
- Muchas más herramientas y de código abierto
- Gran cantidad de diccionarios, como Rockyou, Linkedin, Yahoo etc.
- Soporte de mayor cantidad de hashes
- Uso mayoritario de GPUs
- Alquiler de instancias cloud, no es necesario hardware propio
- Hashcat power J
- Contramedidas como Autenticación Multifactor (MFA)
John the
Ripper
Rainbow
Tables
MagnumRipper
– Jumbo Repo
KoreLogic
Rule sets
Hashcat
Public
Datasets
Dictionaries
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
UN POCO DE HISTORIA …
* Niels Provos and David Mazieres, “A Future-Adaptable Password Scheme” The OpenBSD Project, 1999
Late 1990s: crypt(3)
speed comparision
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
HAVEIBEENPWNED vs SPYCLOUD
Encoding = transforma los datos en un esquema conocido públicamente para su uso
Hashing = función criptográfica unidireccional imposible de revertir (debería)
Cifrado = asignación de datos de entrada y datos de salida reversibles con una clave BASICS J
EN EL PEOR CASO, FUERZA BRUTA A TODO EL
ESPACIO POSIBLE DE CARACTERES:
?b?b?b?b?b?b?b?b?b?b …
TIPOS DE ATAQUE
- Dictionary/Wordlist Attack - Brute-Force Attack
- Rule Attack - Hybrid Attack
- Mask Attack
Keyspace: charset ^ length (?a?a?a?a = 85.828.704)
Hashrate: función de hash / potencia de hardware (bcrypt / GTX1080 = 13.094 H/s)
Cracking time: 85.828.704 / 13.094 H / s = 6.554 segundos (1h 49m 14s)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
CPU vs GPU
De forma MUY simplificada
- GPU contiene más ALU’s (Arithmetic Logic Units) que una CPU
- la CPU contiene una serie de cores optimizados para procesamiento en serie
- La GPU supone un incremento en la capacidad para realizar operaciones aritméticas de forma paralela
- La CPU contiene pocos núcleos muy completos y la GPU miles de núcleos muy sencillos
Xeon E5-2620 v3, 6@2.4Ghz x 2 CPUs = 12 cores
205 MH/s (9 caracteres, unos 108 años)
Nvidia GeForce GTX Titan X 3,072@1Ghz x 8 GPUs = 24,576 cores
169904 MH/s (9 caracteres, unos 48 días)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
BENCHMARKS GPU
1050: 6536.1 MH/s
1060: 11560.2 MH/s
980 TI: 16023.0 MH/s
1070: 18394.9 MH/s
R9 290: 20504.5 MH/s
1080: 24809.8 MH/s
1080 TI: 30963.5 MH/s
2080: 37085.5 MH/s
2080 TI: 50053.3 MH/s
TITAN RTX: 64019.6 MH/s
Sagitta Brutalis: 8 x 1080 FE21,169.00 USD
2080 TI GTX 1080 TI R9 290 GTX 980 TI GTX 1070
¿ Founders Edition ?
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
x8
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
POR EJEMPLO …
- minúsculas abcdefghijklmnopqrstuvwxyz
- mayúsculas ABCDEFGHIJKLMNOPQRSTUVWXYZ
- números 0123456789
- caracteres especiales ?!"#$%&'()*+,-./:;<=>?@[]^_`{|} ~
m@4#J%CN5P Contraseña generada por password manager (10 caracteres)
Combinaciones posibles60.510.648.114.517.017.120
Utilizando una instancia p3.16xl con 450.000.000.000 hashes / segundo
4 años 266 días 23 horas 47 minutos
Supondría un coste de
347.740,33 $
KAONASHI
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
DEMO TIME
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
86,03 %
SIN REGLAS
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Mejora de 10,44%
> 75 hits
Kaonashi866M
Kaonashi14M
2,35 % 2,6 %
Kaonashi14M
11,69 % 10,47 %
CON REGLAS + BEST64
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
ANALISIS
ESTATICO
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
• Contraseña media
• La longitud media
• Conocimientos de una persona
• Diferencias entre hombres y mujeres
• Símbolos más utilizados
• Uso de números
• Generación de estos números
• Uso de contraseñas
ESTADÍSTICAS
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
REGLA 20/60/20
20% FÁCIL 60% MODERADA 20% DIFÍCIL
• El 20% de las contraseñas son fáciles y se recuperan con diccionarios de propósito general, contraseñas comunes o
máscaras sencillas.
• El 60% de las contraseñas tienen una dificultad moderada, y son ligeras variaciones/mutaciones del 20% anterior
• El 20% restante son difíciles de recuperar, ya que son complejas, con una longitud superior a lo habitual o con ciertas
características únicas
LENGUA
EXTRANJERA
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
ASCII: single byte encoding. Todas las combinaciones correspondente a ASCII Latin/English
UTF-8: one to four byte encoding
Base code Character Code Espacio de caracteres: d0 80 - d4 bf
Árabe: d880-ddbf Bengalí: e0a680-e0adbf Chino: e4b880-e4bbbf Japonés: e38180-e3869f
Built-in Charsets: alemán, francés, portugués, castellano, catalán, inglés, griego, italiano, lituano, eslovaco etc..
?b = 256 byte = 0x00 - 0xff
Por ejemplo, para una contraseña de 6 caracteres con un carácter extranjero que desconocemos:
--hex-charset -1 d0d1d2d3d4 -2
808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacada
eafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf -i ?1?2?1?2?1?2?1?2?1?2?1?2?1?2?1?2
κυνηγός
( cazador )
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
κυνηγός
κυνηγος
kynhgos
kinigos
Romanización mediante el uso del alfabeto latino
(transliteración lengua escrita/ transcripción lengua hablada)
UTF-8
ASCII Greek - aka Greeklish -
Ψυχή
( alma )
Psixi
Psihi
Psyxh
Psyhi
Diferentes estilos de escritura (permutaciones)
52 hits
China continental
Taiwán
Hong Kong
CHINO
GRIEGO CLÁSICO
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
COMPLICADO???
Pinyin: Transcripción fonética del chino mandarín
Zhùyīn Fúhào: sistema nacional fonético de la República de China
WORDLISTS
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
OTRAS ALTERNATIVAS MENOS CONOCIDAS
- Aspell
- Twitter global feed
- Pastebin
- Wikipedia
- Reddit
- IMDB
- Corpus
- etc.
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
KEYBOARD
WALKING
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
TOP 100 EN
KAONASHI14m
123456
12345
123456789
123
1234
1234567890
12345678
1234567
123123
111111
123321
7777777
qwerty
159753
55555
1q2w3e4r5t
654321
666666
987654321
121212
qazwsx
112233
777777
123123123
11111
1111
000000
qwertyuiop
qwe123
555555
1qaz2wsx
123qwe
zxcvbnm
123456a
1234qwer
222222
gfhjkm
123654
999999
131313
789456123
333333
159357
12344321
147258369
147258
1234554321
102030
12345678910
1029384756
147852
4815162342
0000
741852963
134679
00000
1234512345
666
1q2w3e
abc123
asdasd
1q2w3e4r
asdfgh
asdfghjkl
123456q
zxcvbn
1111111
88888888
q1w2e3r4t5
q1w2e3r4
qazwsxedc
888888
789456
qweasdzxc
987654
qweqwe
1111111111
1qazxsw2
0123456789
101010
qwertyu
010203
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Йцукенгшщзхъ
ячсмит
щшгнекуцйцу
6гнекуцйц
äölkj123
§1234567
RUSSIAN LAYOUT
SWEDISH LAYOUT
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
pyfgcr
pyfgcr1
pyfgcr11123
pyfgcr123
pyfgcrl
pyfgcrl0
pyfgcrl1
qjkxbmwvz
aoeuidhtns1
snthdiueoa
snthdiue69
qwfpgj
qwfpgj0
qwfpgj1
qwfpgj123
arstdhneio
qwfpgj777
qwfpgjluy1234
qwfpgjq
qwfpgjQ
zxcvbkm
COLEMAK LAYOUT
DVORAK LAYOUT
MÁSCARAS
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
WEST
WORLD
EAST
WORLD
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
OBTENIENDO DNIs
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
OBTENIENDO SSNs
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
TELÉFONOS
?a?a?a?a?a?a7*1011
(782.757.789.696)
15 s
MD5
50.000 MH/s
(Condiciones ideales)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
?a?a?a?a?a?a?a?a7*1015
(7.213.895.789.838.336)
40 h
MD5
50.000 MH/s
653
sha512crypt
350 KH/s AÑOS
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
?a?a?a?a?a?a?a?a?a?a6*1019
(66.483.263.599.150.104.576)
42 Años
MD5
50.000 MH/s
¡6 Millones
de Años!
sha512crypt
350 KH/s
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Hay que pensar un poco…
Cuanto antes se crackeen los hashes, MEJOR
1. Menos comprobaciones = Mayor hashrate
2. ¡A lo mejor acabo con todos!
Objetivo 1: Afinar máscaras
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
?l?l?l?l?l?l?l?l 1,88% 208.827.064.576
?d?d?d?d?d?d 1,56% 1.000.000
?l?l?l?l?l?l 1,42% 308.915.776
?d?d?d?d?d?d?d?d 1,01% 100.000.000
?l?l?l?l?l?l?l 0,97% 8.031.810.176
?l?l?l?l?l?l?d?d 0,68% 30.891.577.600
?l?l?l?l?l?l?l?l?l 0,60% 5.429.503.678.976
?d?d?d?d?d?d?d 0,56% 10.000.000
?l?l?l?l?l?l?l?l?l?l 0,51% 141.167.095.653.376
?l?l?l?l?l?l?l?d 0,40% 80.318.101.760
9,60% 146.925.087.802.240 < 1 hora
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Máscaras más probables
¡Público!
Hay que pensar un poco…
Cuanto antes se crackeen los hashes, MEJOR
1. Menos comprobaciones = Mayor hashrate
2. ¡A lo mejor acabo con todos!
Objetivo 1: Afinar máscaras
Objetivo 2: Llevar el caso medio lo más al principio posible
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Qqmrxj974 vs Daniel123
Cadenas de Markov
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
A
B
C
0.5
0.4
0.9
0.05
0.75
0.2
0.1
0.05
0.05
Hay que pensar un poco más…
… pensar como UN USUARIO
bananaBananaB4n4n4B4n4n4!
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
REGLAS DE MUTACIÓN
Reglas de mutación
banana à c sa4 $! à B4n4n4!
belzebu à se3 o64 $! à b3lz3b4!
Password à sa@ ss5 so0 $1 $2 $3 à P@55w0rd123
Reglas “estándar”
best64 d3ad0ne T0XlC dive
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Extracción reglas de mutación
¿Cómo?
1. Análisis estático de mutaciones
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Análisis estático de mutaciones
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
lower_endswith[‘123’] = 0
lower_endswith[‘1!’] = 0
lower_startswith[‘!’] = 0
upper_endswith[‘$’] = 0
capitalized_endswith[‘123’] = 0
…
Análisis estático de mutaciones
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
lower_endswith[‘123’] = 1
lower_endswith[‘1!’] = 0
lower_startswith[‘!’] = 0
upper_endswith[‘$’] = 0
capitalized_endswith[‘123’] = 0
…
potato123
Análisis estático de mutaciones
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
lower_endswith[‘123’] = 1
lower_endswith[‘1!’] = 0
lower_startswith[‘!’] = 0
upper_endswith[‘$’] = 0
capitalized_endswith[‘123’] = 1
…
potato123
Daniel123
Análisis estático de mutaciones
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
lower_endswith[‘123’] = 1
lower_endswith[‘1!’] = 0
lower_startswith[‘!’] = 0
upper_endswith[‘$’] = 1
capitalized_endswith[‘123’] = 1
…
potato123
Daniel123
HEEMAN$
Análisis estático de mutaciones
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
lower_endswith[‘123’] = 6
lower_endswith[‘1!’] = 4
lower_startswith[‘!’] = 2
upper_endswith[‘$’] = 2
capitalized_endswith[‘123’] = 3
…
potato123
Daniel123
HEEMAN$
!qwerty
PASSS$
roberto1!
Alehop123
alohomora1!
indios1!
amigo123
asdf123
iamumber1!
guitar123
Dramaking123
ap0calypse
kaka123
!aaaaa
R0c0s0!
kitty123
…
Análisis estático de mutaciones
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
lower_endswith[‘123’] = 6
lower_endswith[‘1!’] = 4
lower_startswith[‘!’] = 2
upper_endswith[‘$’] = 2
capitalized_endswith[‘123’] = 3
…
potato123
Daniel123
HEEMAN$
!qwerty
PASSS$
roberto1!
Alehop123
alohomora1!
indios1!
amigo123
asdf123
iamumber1!
guitar123
Dramaking123
ap0calypse
kaka123
!aaaaa
R0c0s0!
kitty123
…
Extracción reglas de mutación
¿Cómo?
1. Análisis estático de mutaciones
2. PACK
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
PACK ( /iphelix/PACK )
rulegen.py
Contraseña à Palabra parecida à Reglas
Problema: Lo intenta demasiado… O con
poca vista.
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
PACK lo intenta demasiado
Oportunid@d
P@$$w0rd
cachivach3
destacamento à o93 à destacame3to
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
opportunist à T0 D2 o8d o9@ $d à
Pasador à sa@ ss$ ,3 o4w so0 $d à
cachivache à o93 à
Extracción reglas de mutación
¿Cómo?
1. Análisis estático de mutaciones
2. PACK
3.¡Cracking!
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Reglas por cracking
Diccionario + MUCHAS reglas
--debug-mode 4
Contar, ordenar y listo
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Reglas específicas
Reglas para contraseñas
vs
Reglas para palabras
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
¡en
!
Resultados
yubaba64: Análisis estático. Palabras.
Openwall/all.txt: + 4.4 % vs best64
Wikipedia: - 0.3 % vs best64
Rockyou: - 12.2 % vs best64
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Resultados
yubaba64: Análisis estático. Palabras.
haku: Cracking. Palabras.
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Wikipedia ES: + 29.6 % vs d3ad0ne
Wikipedia EN: + 25.7 % vs d3ad0ne
Resultados
yubaba64: Análisis estático. Palabras.
haku: Cracking. Palabras.
kamaji: Cracking. Contraseñas.
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Rockyou: + 9.8 % vs d3ad0ne
Kaonashi14M: + 12.91 % vs d3ad0ne
Resultados
yubaba64: Análisis estático. Palabras.
haku: Cracking. Palabras.
kamaji: Cracking. Contraseñas.
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
¡Público!
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
ÚLTIMO 20%
Último 20%...
• Ataques de Combinación
Diccionario + Diccionario [+ diccionario…]
•Ataques Híbridos
Diccionario + Máscara / Máscara + Diccionario
•Reglas aleatorias
hashcat -g
•PRINCE
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
PRINCE
PRobability INfinite Chained Elements
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
PRINCE
PRobability INfinite Chained Elements
• Cada línea es un elemento
• Se combinan elementos de distintas longitudes para formar
passwords
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
PRINCE
PRobability INfinite Chained Elements
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Longitud 3:
1 + 1 + 1
1 + 2
2 + 1
3
Longitud 4:
1 + 1 + 1 + 1
1 + 1 + 2
1 + 3
2 + 1 + 1
2 + 2
3 + 1
4
Longitud 5:
1 + 1 + 1 + 1 + 1
1 + 1 + 1 + 2
1 + 1 + 3
1 + 4
2 + 1 + 1 + 1
2 + 1 + 2
…
Un encuentro fortuito
“The Unreasonable
Effectiveness of Recurrent
Neural Networks“
https://karpathy.github.io/2015/05/21/rnn-effectiveness/
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Oficio hecho ladrón,con agua ciencia.
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
En cautelas y al amor, el
diente de dolor.
Primo anda la mujer
y al río nos llene.
Buena
verdad, o
m
ucha
sierra.
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Y si le enseñas passwords…
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Kaonashi1M*
123qwer1988
acd143x
beatnow12
sonipop27
koanley
rffsmczwynsc
lizaea6
Wartof
Cumcdfif123
rainboys1
Kaonashi > 14
alex2321131108
lerka29aitas12
12109913513mul
x1xjvtyjxrj1993
maksimovasasova
vaditavidenton
1q12336idesung
w1f7d8948fd669
1234567890489d
ZodovaN18321uak
Español
campilleto
parbondalista
rablanzano
alevaconear
desargavar
desrepositar
corrosamente
trastofacazo
arregrica
tapalero
“RootedCON”
+ mutaciones
$RootedCON(
euCoN
detooR
eedcon
RooONe
R1oOetodCON
9ootedCO
DRooteNCON
RooONe
rootercon
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
¿FUNCIONA DE VERDAD?
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
106.083
15.622
90.461
29.461
Kaonashi FULL
866 M
Kaonashi1MResultados
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
¡NO ME CRACKEES!
Blue Team
• Usar hashes LENTOS (bcrypt, scrypt…)
• Usar hashes con salt
• Obligar al uso de MFA
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
Usuarios
• Usar MFA
• Usar contraseñas largas y aleatorias
(gestor de contraseñas)
• correct horse battery staple
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)

Weitere ähnliche Inhalte

Was ist angesagt?

Cycloudのストレージ紹介と歴史
Cycloudのストレージ紹介と歴史Cycloudのストレージ紹介と歴史
Cycloudのストレージ紹介と歴史Hiroki Chinen
 
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjpcocodrips
 
深層学習による非滑らかな関数の推定
深層学習による非滑らかな関数の推定深層学習による非滑らかな関数の推定
深層学習による非滑らかな関数の推定Masaaki Imaizumi
 
動的計画法入門(An introduction to Dynamic Programming)
動的計画法入門(An introduction to Dynamic Programming)動的計画法入門(An introduction to Dynamic Programming)
動的計画法入門(An introduction to Dynamic Programming)kakira9618
 
20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)Kentaro Ebisawa
 
競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性Hibiki Yamashiro
 
避けては通れないバイナリ地獄 - NDEFってなんだろう -
避けては通れないバイナリ地獄 - NDEFってなんだろう -避けては通れないバイナリ地獄 - NDEFってなんだろう -
避けては通れないバイナリ地獄 - NDEFってなんだろう -Tomoki YAMASHITA
 
32bit UEFIマシンで遊ぶ
32bit UEFIマシンで遊ぶ32bit UEFIマシンで遊ぶ
32bit UEFIマシンで遊ぶshimadah
 
NUCで始めるVMware Tanzu
NUCで始めるVMware TanzuNUCで始めるVMware Tanzu
NUCで始めるVMware TanzuHirotaka Sato
 
NATとNAPTを混在するのはやめような
NATとNAPTを混在するのはやめようなNATとNAPTを混在するのはやめような
NATとNAPTを混在するのはやめようなnemumu
 
NVMCT #1 ~今さら聞けないSSDの基本~
NVMCT #1 ~今さら聞けないSSDの基本~NVMCT #1 ~今さら聞けないSSDの基本~
NVMCT #1 ~今さら聞けないSSDの基本~Fixstars Corporation
 
DPDKを用いたネットワークスタック,高性能通信基盤開発
DPDKを用いたネットワークスタック,高性能通信基盤開発DPDKを用いたネットワークスタック,高性能通信基盤開発
DPDKを用いたネットワークスタック,高性能通信基盤開発slankdev
 
深さ優先探索による塗りつぶし
深さ優先探索による塗りつぶし深さ優先探索による塗りつぶし
深さ優先探索による塗りつぶしAtCoder Inc.
 
計算力学シミュレーションに GPU は役立つのか?
計算力学シミュレーションに GPU は役立つのか?計算力学シミュレーションに GPU は役立つのか?
計算力学シミュレーションに GPU は役立つのか?Shinnosuke Furuya
 
Internetトラフィックエンジニアリングの現実
Internetトラフィックエンジニアリングの現実Internetトラフィックエンジニアリングの現実
Internetトラフィックエンジニアリングの現実J-Stream Inc.
 
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層智啓 出川
 
Linuxで温度計測あれこれ
Linuxで温度計測あれこれLinuxで温度計測あれこれ
Linuxで温度計測あれこれKenichiro MATOHARA
 
CMSI計算科学技術特論B(14) OpenACC・CUDAによるGPUコンピューティング
CMSI計算科学技術特論B(14) OpenACC・CUDAによるGPUコンピューティングCMSI計算科学技術特論B(14) OpenACC・CUDAによるGPUコンピューティング
CMSI計算科学技術特論B(14) OpenACC・CUDAによるGPUコンピューティングComputational Materials Science Initiative
 

Was ist angesagt? (20)

Cycloudのストレージ紹介と歴史
Cycloudのストレージ紹介と歴史Cycloudのストレージ紹介と歴史
Cycloudのストレージ紹介と歴史
 
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
 
深層学習による非滑らかな関数の推定
深層学習による非滑らかな関数の推定深層学習による非滑らかな関数の推定
深層学習による非滑らかな関数の推定
 
動的計画法入門(An introduction to Dynamic Programming)
動的計画法入門(An introduction to Dynamic Programming)動的計画法入門(An introduction to Dynamic Programming)
動的計画法入門(An introduction to Dynamic Programming)
 
20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)
 
競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性
 
避けては通れないバイナリ地獄 - NDEFってなんだろう -
避けては通れないバイナリ地獄 - NDEFってなんだろう -避けては通れないバイナリ地獄 - NDEFってなんだろう -
避けては通れないバイナリ地獄 - NDEFってなんだろう -
 
RISC-Vの可能性
RISC-Vの可能性RISC-Vの可能性
RISC-Vの可能性
 
32bit UEFIマシンで遊ぶ
32bit UEFIマシンで遊ぶ32bit UEFIマシンで遊ぶ
32bit UEFIマシンで遊ぶ
 
NUCで始めるVMware Tanzu
NUCで始めるVMware TanzuNUCで始めるVMware Tanzu
NUCで始めるVMware Tanzu
 
NATとNAPTを混在するのはやめような
NATとNAPTを混在するのはやめようなNATとNAPTを混在するのはやめような
NATとNAPTを混在するのはやめような
 
NVMCT #1 ~今さら聞けないSSDの基本~
NVMCT #1 ~今さら聞けないSSDの基本~NVMCT #1 ~今さら聞けないSSDの基本~
NVMCT #1 ~今さら聞けないSSDの基本~
 
Pietで競プロしよう
Pietで競プロしようPietで競プロしよう
Pietで競プロしよう
 
DPDKを用いたネットワークスタック,高性能通信基盤開発
DPDKを用いたネットワークスタック,高性能通信基盤開発DPDKを用いたネットワークスタック,高性能通信基盤開発
DPDKを用いたネットワークスタック,高性能通信基盤開発
 
深さ優先探索による塗りつぶし
深さ優先探索による塗りつぶし深さ優先探索による塗りつぶし
深さ優先探索による塗りつぶし
 
計算力学シミュレーションに GPU は役立つのか?
計算力学シミュレーションに GPU は役立つのか?計算力学シミュレーションに GPU は役立つのか?
計算力学シミュレーションに GPU は役立つのか?
 
Internetトラフィックエンジニアリングの現実
Internetトラフィックエンジニアリングの現実Internetトラフィックエンジニアリングの現実
Internetトラフィックエンジニアリングの現実
 
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層
2015年度GPGPU実践基礎工学 第13回 GPUのメモリ階層
 
Linuxで温度計測あれこれ
Linuxで温度計測あれこれLinuxで温度計測あれこれ
Linuxで温度計測あれこれ
 
CMSI計算科学技術特論B(14) OpenACC・CUDAによるGPUコンピューティング
CMSI計算科学技術特論B(14) OpenACC・CUDAによるGPUコンピューティングCMSI計算科学技術特論B(14) OpenACC・CUDAによるGPUコンピューティング
CMSI計算科学技術特論B(14) OpenACC・CUDAによるGPUコンピューティング
 

Ähnlich wie Pablo Caro & Jaime Sánchez - I know your P4$$w0rd (and if I don’t, I will guess it) [rooted2019]

Ähnlich wie Pablo Caro & Jaime Sánchez - I know your P4$$w0rd (and if I don’t, I will guess it) [rooted2019] (20)

Hx c26
Hx c26Hx c26
Hx c26
 
Pentest - El Arte de la Guerra
Pentest - El Arte de la GuerraPentest - El Arte de la Guerra
Pentest - El Arte de la Guerra
 
Pen test: El arte de la guerra
Pen test: El arte de la guerraPen test: El arte de la guerra
Pen test: El arte de la guerra
 
Presentacion password cracking_madrid_2019
Presentacion password cracking_madrid_2019Presentacion password cracking_madrid_2019
Presentacion password cracking_madrid_2019
 
Presentación cómo es un ordenador 13 14
Presentación cómo es un ordenador 13 14Presentación cómo es un ordenador 13 14
Presentación cómo es un ordenador 13 14
 
Plan de sesion 18 de febrero
Plan de sesion 18 de febreroPlan de sesion 18 de febrero
Plan de sesion 18 de febrero
 
Hx c23
Hx c23Hx c23
Hx c23
 
Historia ..
Historia ..Historia ..
Historia ..
 
Taller Esteganografia FLISoL Celaya 2011
Taller Esteganografia FLISoL Celaya 2011Taller Esteganografia FLISoL Celaya 2011
Taller Esteganografia FLISoL Celaya 2011
 
Trabajo de modalidad. Componentes Actuales de una PC
Trabajo de modalidad. Componentes Actuales de una PCTrabajo de modalidad. Componentes Actuales de una PC
Trabajo de modalidad. Componentes Actuales de una PC
 
Mitos y leyendas del software libre
Mitos y leyendas del software libreMitos y leyendas del software libre
Mitos y leyendas del software libre
 
Fuente de energia
Fuente de energiaFuente de energia
Fuente de energia
 
Fuente de energia
Fuente de energiaFuente de energia
Fuente de energia
 
La mejor pc
La mejor pcLa mejor pc
La mejor pc
 
Gabonak 2016
Gabonak 2016Gabonak 2016
Gabonak 2016
 
2009 A G O S T O O C T U B R E
2009  A G O S T O  O C T U B R E2009  A G O S T O  O C T U B R E
2009 A G O S T O O C T U B R E
 
246
246246
246
 
Tecnología
TecnologíaTecnología
Tecnología
 
Tecnología
TecnologíaTecnología
Tecnología
 
Tecnología
TecnologíaTecnología
Tecnología
 

Mehr von RootedCON

Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro Villaverde
Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro VillaverdeRooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro Villaverde
Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro VillaverdeRootedCON
 
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...RootedCON
 
Rooted2020 hunting malware-using_process_behavior-roberto_amado
Rooted2020 hunting malware-using_process_behavior-roberto_amadoRooted2020 hunting malware-using_process_behavior-roberto_amado
Rooted2020 hunting malware-using_process_behavior-roberto_amadoRootedCON
 
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_RootedCON
 
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...RootedCON
 
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...RootedCON
 
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...RootedCON
 
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguer
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguerRooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguer
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguerRootedCON
 
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...RootedCON
 
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemy
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemyRooted2020 stefano maccaglia--_the_enemy_of_my_enemy
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemyRootedCON
 
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...RootedCON
 
Rooted2020 virtual pwned-network_-_manel_molina
Rooted2020 virtual pwned-network_-_manel_molinaRooted2020 virtual pwned-network_-_manel_molina
Rooted2020 virtual pwned-network_-_manel_molinaRootedCON
 
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...RootedCON
 
Rooted2020 todo a-siem_-_marta_lopez
Rooted2020 todo a-siem_-_marta_lopezRooted2020 todo a-siem_-_marta_lopez
Rooted2020 todo a-siem_-_marta_lopezRootedCON
 
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valero
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valeroRooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valero
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valeroRootedCON
 
Rooted2020 live coding--_jesus_jara
Rooted2020 live coding--_jesus_jaraRooted2020 live coding--_jesus_jara
Rooted2020 live coding--_jesus_jaraRootedCON
 
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...RootedCON
 
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...RootedCON
 
Rooted2020 evading deep-learning_malware_detectors_-_javier_yuste
Rooted2020 evading deep-learning_malware_detectors_-_javier_yusteRooted2020 evading deep-learning_malware_detectors_-_javier_yuste
Rooted2020 evading deep-learning_malware_detectors_-_javier_yusteRootedCON
 
Rooted2020 encontrando 0days-en_2020_-_antonio_morales
Rooted2020 encontrando 0days-en_2020_-_antonio_moralesRooted2020 encontrando 0days-en_2020_-_antonio_morales
Rooted2020 encontrando 0days-en_2020_-_antonio_moralesRootedCON
 

Mehr von RootedCON (20)

Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro Villaverde
Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro VillaverdeRooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro Villaverde
Rooted2020 A clockwork pentester - Jose Carlos Moral & Alvaro Villaverde
 
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
 
Rooted2020 hunting malware-using_process_behavior-roberto_amado
Rooted2020 hunting malware-using_process_behavior-roberto_amadoRooted2020 hunting malware-using_process_behavior-roberto_amado
Rooted2020 hunting malware-using_process_behavior-roberto_amado
 
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_
Rooted2020 compliance as-code_-_guillermo_obispo_-_jose_mariaperez_-_
 
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...
Rooted2020 the day i_ruled_the_world_deceiving_software_developers_through_op...
 
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...
Rooted2020 si la-empresa_ha_ocultado_el_ciberataque,_como_se_ha_enterado_el_r...
 
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...
Rooted2020 wordpress-another_terror_story_-_manuel_garcia_-_jacinto_sergio_ca...
 
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguer
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguerRooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguer
Rooted2020 Atacando comunicaciones-de_voz_cifradas_-_jose_luis_verdeguer
 
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...
rooted2020-Rootkit necurs no_es_un_bug,_es_una_feature_-_roberto_santos_-_jav...
 
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemy
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemyRooted2020 stefano maccaglia--_the_enemy_of_my_enemy
Rooted2020 stefano maccaglia--_the_enemy_of_my_enemy
 
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...
Rooted2020 taller de-reversing_de_binarios_escritos_en_golang_-_mariano_palom...
 
Rooted2020 virtual pwned-network_-_manel_molina
Rooted2020 virtual pwned-network_-_manel_molinaRooted2020 virtual pwned-network_-_manel_molina
Rooted2020 virtual pwned-network_-_manel_molina
 
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...
Rooted2020 van a-mear_sangre_como_hacer_que_los_malos_lo_paguen_muy_caro_-_an...
 
Rooted2020 todo a-siem_-_marta_lopez
Rooted2020 todo a-siem_-_marta_lopezRooted2020 todo a-siem_-_marta_lopez
Rooted2020 todo a-siem_-_marta_lopez
 
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valero
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valeroRooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valero
Rooted2020 roapt evil-mass_storage_-_tu-ya_aqui_-_david_reguera_-_abel_valero
 
Rooted2020 live coding--_jesus_jara
Rooted2020 live coding--_jesus_jaraRooted2020 live coding--_jesus_jara
Rooted2020 live coding--_jesus_jara
 
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...
Rooted2020 legalidad de-la_prueba_tecnologica_indiciaria_cuando_tu_papi_es_un...
 
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...
Rooted2020 hackeando el-mundo_exterior_a_traves_de_bluetooth_low-energy_ble_-...
 
Rooted2020 evading deep-learning_malware_detectors_-_javier_yuste
Rooted2020 evading deep-learning_malware_detectors_-_javier_yusteRooted2020 evading deep-learning_malware_detectors_-_javier_yuste
Rooted2020 evading deep-learning_malware_detectors_-_javier_yuste
 
Rooted2020 encontrando 0days-en_2020_-_antonio_morales
Rooted2020 encontrando 0days-en_2020_-_antonio_moralesRooted2020 encontrando 0days-en_2020_-_antonio_morales
Rooted2020 encontrando 0days-en_2020_-_antonio_morales
 

Kürzlich hochgeladen

Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilJuanGallardo438714
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxlosdiosesmanzaneros
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 

Kürzlich hochgeladen (15)

Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 

Pablo Caro & Jaime Sánchez - I know your P4$$w0rd (and if I don’t, I will guess it) [rooted2019]

  • 1. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 2. • Infographic Style QUIENES SOMOS??? PABLO CARO MARTÍN - Ingeniero Informático por la Universidad de Granada - OSCP, OSCE and all- around nerd. - Actualmente trabajando en Red Team de Telefónica JAIME SÁNCHEZ Hacker – Security Expert – Occasional Rockstar - Ingeniero Informático + MBA. CISA, CISM, CISSP y muchas más… - Speaker habitual en conferencias como RootedCon, Blackhat, Defcon, Shmoocon, Derbycon etc. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 3. ¿POR QUÉ? I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 4. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 5. 2013 2014 2016 2017 3 billion accounts Yahoo admitted in 2017 that the previously reported data breach in 2013 actually affected all three billion accounts, exposing the names, birth dates, phone numbers and passwords of users whose accounts were encrypted with what was weak security. 412 million That breach also affected over 15 million "deleted" accounts that had not been purged. An additional 62 million accounts from Cams.com and seven million from Penthouse.com were stolen. 146 million The company added that 209,000 U.S. credit card numbers were exposed. Earlier this year, Equifax found an additional 2.4 million U.S. consumers whose names and partial driver’s license information were stolen. EquifaxFriend FinderYahooYahoo 500 million Data included names, email addresses, telephone numbers, birth dates, encrypted passwords and,, security questions. The U.S. charged four Russians, including two Russian Federal Security Service (FSB) officers with the crime, according to the U.S. Department of Justice. 2019 500 million An investigation recently revealed "unauthorized access" since 2014 to information relating to reservations at Marriott's Starwood properties. Marriot I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) TOP 5 LEAKS
  • 6. * Más info en https://en.wikipedia.org/wiki/List_of_data_breaches I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 7. 1990s a 2000s: - No había apenas generación de reglas - Los datos públicos eran mucho más pequeños - Poco intercambio de estrategias y técnicas de cracking - Comunidad dispersa - Lanmanager -> LM hashes y Windows NT -> MD4 NTLM - Uso fundamentalmente de CPU - Aparecen las rainbow tables - Pasamos de Cracker Jack a John the Ripper / l0pthCrack 2007+ a 2019: - Equipos de password cracking conocidos - Muchas más herramientas y de código abierto - Gran cantidad de diccionarios, como Rockyou, Linkedin, Yahoo etc. - Soporte de mayor cantidad de hashes - Uso mayoritario de GPUs - Alquiler de instancias cloud, no es necesario hardware propio - Hashcat power J - Contramedidas como Autenticación Multifactor (MFA) John the Ripper Rainbow Tables MagnumRipper – Jumbo Repo KoreLogic Rule sets Hashcat Public Datasets Dictionaries I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) UN POCO DE HISTORIA … * Niels Provos and David Mazieres, “A Future-Adaptable Password Scheme” The OpenBSD Project, 1999 Late 1990s: crypt(3) speed comparision
  • 8. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) HAVEIBEENPWNED vs SPYCLOUD
  • 9. Encoding = transforma los datos en un esquema conocido públicamente para su uso Hashing = función criptográfica unidireccional imposible de revertir (debería) Cifrado = asignación de datos de entrada y datos de salida reversibles con una clave BASICS J EN EL PEOR CASO, FUERZA BRUTA A TODO EL ESPACIO POSIBLE DE CARACTERES: ?b?b?b?b?b?b?b?b?b?b … TIPOS DE ATAQUE - Dictionary/Wordlist Attack - Brute-Force Attack - Rule Attack - Hybrid Attack - Mask Attack Keyspace: charset ^ length (?a?a?a?a = 85.828.704) Hashrate: función de hash / potencia de hardware (bcrypt / GTX1080 = 13.094 H/s) Cracking time: 85.828.704 / 13.094 H / s = 6.554 segundos (1h 49m 14s) I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 10. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) CPU vs GPU De forma MUY simplificada - GPU contiene más ALU’s (Arithmetic Logic Units) que una CPU - la CPU contiene una serie de cores optimizados para procesamiento en serie - La GPU supone un incremento en la capacidad para realizar operaciones aritméticas de forma paralela - La CPU contiene pocos núcleos muy completos y la GPU miles de núcleos muy sencillos Xeon E5-2620 v3, 6@2.4Ghz x 2 CPUs = 12 cores 205 MH/s (9 caracteres, unos 108 años) Nvidia GeForce GTX Titan X 3,072@1Ghz x 8 GPUs = 24,576 cores 169904 MH/s (9 caracteres, unos 48 días)
  • 11. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) BENCHMARKS GPU 1050: 6536.1 MH/s 1060: 11560.2 MH/s 980 TI: 16023.0 MH/s 1070: 18394.9 MH/s R9 290: 20504.5 MH/s 1080: 24809.8 MH/s 1080 TI: 30963.5 MH/s 2080: 37085.5 MH/s 2080 TI: 50053.3 MH/s TITAN RTX: 64019.6 MH/s Sagitta Brutalis: 8 x 1080 FE21,169.00 USD 2080 TI GTX 1080 TI R9 290 GTX 980 TI GTX 1070 ¿ Founders Edition ?
  • 12. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) x8
  • 13. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 14. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) POR EJEMPLO … - minúsculas abcdefghijklmnopqrstuvwxyz - mayúsculas ABCDEFGHIJKLMNOPQRSTUVWXYZ - números 0123456789 - caracteres especiales ?!"#$%&'()*+,-./:;<=>?@[]^_`{|} ~ m@4#J%CN5P Contraseña generada por password manager (10 caracteres) Combinaciones posibles60.510.648.114.517.017.120 Utilizando una instancia p3.16xl con 450.000.000.000 hashes / segundo 4 años 266 días 23 horas 47 minutos Supondría un coste de 347.740,33 $
  • 15. KAONASHI I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 16. DEMO TIME I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 17. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 18. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 19. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 20. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 21. 86,03 % SIN REGLAS I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) Mejora de 10,44% > 75 hits Kaonashi866M Kaonashi14M 2,35 % 2,6 % Kaonashi14M 11,69 % 10,47 % CON REGLAS + BEST64
  • 22. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 23. ANALISIS ESTATICO I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 24. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) • Contraseña media • La longitud media • Conocimientos de una persona • Diferencias entre hombres y mujeres • Símbolos más utilizados • Uso de números • Generación de estos números • Uso de contraseñas ESTADÍSTICAS
  • 25. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) REGLA 20/60/20 20% FÁCIL 60% MODERADA 20% DIFÍCIL • El 20% de las contraseñas son fáciles y se recuperan con diccionarios de propósito general, contraseñas comunes o máscaras sencillas. • El 60% de las contraseñas tienen una dificultad moderada, y son ligeras variaciones/mutaciones del 20% anterior • El 20% restante son difíciles de recuperar, ya que son complejas, con una longitud superior a lo habitual o con ciertas características únicas
  • 26. LENGUA EXTRANJERA I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 27. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) ASCII: single byte encoding. Todas las combinaciones correspondente a ASCII Latin/English UTF-8: one to four byte encoding Base code Character Code Espacio de caracteres: d0 80 - d4 bf Árabe: d880-ddbf Bengalí: e0a680-e0adbf Chino: e4b880-e4bbbf Japonés: e38180-e3869f Built-in Charsets: alemán, francés, portugués, castellano, catalán, inglés, griego, italiano, lituano, eslovaco etc.. ?b = 256 byte = 0x00 - 0xff Por ejemplo, para una contraseña de 6 caracteres con un carácter extranjero que desconocemos: --hex-charset -1 d0d1d2d3d4 -2 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacada eafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf -i ?1?2?1?2?1?2?1?2?1?2?1?2?1?2?1?2
  • 28. κυνηγός ( cazador ) I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) κυνηγός κυνηγος kynhgos kinigos Romanización mediante el uso del alfabeto latino (transliteración lengua escrita/ transcripción lengua hablada) UTF-8 ASCII Greek - aka Greeklish - Ψυχή ( alma ) Psixi Psihi Psyxh Psyhi Diferentes estilos de escritura (permutaciones) 52 hits China continental Taiwán Hong Kong CHINO GRIEGO CLÁSICO
  • 29. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 30. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 31. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) COMPLICADO??? Pinyin: Transcripción fonética del chino mandarín Zhùyīn Fúhào: sistema nacional fonético de la República de China
  • 32. WORDLISTS I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 33. OTRAS ALTERNATIVAS MENOS CONOCIDAS - Aspell - Twitter global feed - Pastebin - Wikipedia - Reddit - IMDB - Corpus - etc. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 34. KEYBOARD WALKING I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 35. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) TOP 100 EN KAONASHI14m 123456 12345 123456789 123 1234 1234567890 12345678 1234567 123123 111111 123321 7777777 qwerty 159753 55555 1q2w3e4r5t 654321 666666 987654321 121212 qazwsx 112233 777777 123123123 11111 1111 000000 qwertyuiop qwe123 555555 1qaz2wsx 123qwe zxcvbnm 123456a 1234qwer 222222 gfhjkm 123654 999999 131313 789456123 333333 159357 12344321 147258369 147258 1234554321 102030 12345678910 1029384756 147852 4815162342 0000 741852963 134679 00000 1234512345 666 1q2w3e abc123 asdasd 1q2w3e4r asdfgh asdfghjkl 123456q zxcvbn 1111111 88888888 q1w2e3r4t5 q1w2e3r4 qazwsxedc 888888 789456 qweasdzxc 987654 qweqwe 1111111111 1qazxsw2 0123456789 101010 qwertyu 010203
  • 36. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) Йцукенгшщзхъ ячсмит щшгнекуцйцу 6гнекуцйц äölkj123 §1234567 RUSSIAN LAYOUT SWEDISH LAYOUT
  • 37. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) pyfgcr pyfgcr1 pyfgcr11123 pyfgcr123 pyfgcrl pyfgcrl0 pyfgcrl1 qjkxbmwvz aoeuidhtns1 snthdiueoa snthdiue69 qwfpgj qwfpgj0 qwfpgj1 qwfpgj123 arstdhneio qwfpgj777 qwfpgjluy1234 qwfpgjq qwfpgjQ zxcvbkm COLEMAK LAYOUT DVORAK LAYOUT
  • 38. MÁSCARAS I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 39. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) WEST WORLD EAST WORLD
  • 40. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) OBTENIENDO DNIs
  • 41. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 42. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) OBTENIENDO SSNs
  • 43. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) TELÉFONOS
  • 44. ?a?a?a?a?a?a7*1011 (782.757.789.696) 15 s MD5 50.000 MH/s (Condiciones ideales) I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 45. ?a?a?a?a?a?a?a?a7*1015 (7.213.895.789.838.336) 40 h MD5 50.000 MH/s 653 sha512crypt 350 KH/s AÑOS I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 46. ?a?a?a?a?a?a?a?a?a?a6*1019 (66.483.263.599.150.104.576) 42 Años MD5 50.000 MH/s ¡6 Millones de Años! sha512crypt 350 KH/s I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 47. Hay que pensar un poco… Cuanto antes se crackeen los hashes, MEJOR 1. Menos comprobaciones = Mayor hashrate 2. ¡A lo mejor acabo con todos! Objetivo 1: Afinar máscaras I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 48. ?l?l?l?l?l?l?l?l 1,88% 208.827.064.576 ?d?d?d?d?d?d 1,56% 1.000.000 ?l?l?l?l?l?l 1,42% 308.915.776 ?d?d?d?d?d?d?d?d 1,01% 100.000.000 ?l?l?l?l?l?l?l 0,97% 8.031.810.176 ?l?l?l?l?l?l?d?d 0,68% 30.891.577.600 ?l?l?l?l?l?l?l?l?l 0,60% 5.429.503.678.976 ?d?d?d?d?d?d?d 0,56% 10.000.000 ?l?l?l?l?l?l?l?l?l?l 0,51% 141.167.095.653.376 ?l?l?l?l?l?l?l?d 0,40% 80.318.101.760 9,60% 146.925.087.802.240 < 1 hora I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) Máscaras más probables ¡Público!
  • 49. Hay que pensar un poco… Cuanto antes se crackeen los hashes, MEJOR 1. Menos comprobaciones = Mayor hashrate 2. ¡A lo mejor acabo con todos! Objetivo 1: Afinar máscaras Objetivo 2: Llevar el caso medio lo más al principio posible I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 50. Qqmrxj974 vs Daniel123 Cadenas de Markov I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) A B C 0.5 0.4 0.9 0.05 0.75 0.2 0.1 0.05 0.05
  • 51. Hay que pensar un poco más… … pensar como UN USUARIO bananaBananaB4n4n4B4n4n4! I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 52. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) REGLAS DE MUTACIÓN
  • 53. Reglas de mutación banana à c sa4 $! à B4n4n4! belzebu à se3 o64 $! à b3lz3b4! Password à sa@ ss5 so0 $1 $2 $3 à P@55w0rd123 Reglas “estándar” best64 d3ad0ne T0XlC dive I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 54. Extracción reglas de mutación ¿Cómo? 1. Análisis estático de mutaciones I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 55. Análisis estático de mutaciones I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) lower_endswith[‘123’] = 0 lower_endswith[‘1!’] = 0 lower_startswith[‘!’] = 0 upper_endswith[‘$’] = 0 capitalized_endswith[‘123’] = 0 …
  • 56. Análisis estático de mutaciones I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) lower_endswith[‘123’] = 1 lower_endswith[‘1!’] = 0 lower_startswith[‘!’] = 0 upper_endswith[‘$’] = 0 capitalized_endswith[‘123’] = 0 … potato123
  • 57. Análisis estático de mutaciones I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) lower_endswith[‘123’] = 1 lower_endswith[‘1!’] = 0 lower_startswith[‘!’] = 0 upper_endswith[‘$’] = 0 capitalized_endswith[‘123’] = 1 … potato123 Daniel123
  • 58. Análisis estático de mutaciones I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) lower_endswith[‘123’] = 1 lower_endswith[‘1!’] = 0 lower_startswith[‘!’] = 0 upper_endswith[‘$’] = 1 capitalized_endswith[‘123’] = 1 … potato123 Daniel123 HEEMAN$
  • 59. Análisis estático de mutaciones I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) lower_endswith[‘123’] = 6 lower_endswith[‘1!’] = 4 lower_startswith[‘!’] = 2 upper_endswith[‘$’] = 2 capitalized_endswith[‘123’] = 3 … potato123 Daniel123 HEEMAN$ !qwerty PASSS$ roberto1! Alehop123 alohomora1! indios1! amigo123 asdf123 iamumber1! guitar123 Dramaking123 ap0calypse kaka123 !aaaaa R0c0s0! kitty123 …
  • 60. Análisis estático de mutaciones I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) lower_endswith[‘123’] = 6 lower_endswith[‘1!’] = 4 lower_startswith[‘!’] = 2 upper_endswith[‘$’] = 2 capitalized_endswith[‘123’] = 3 … potato123 Daniel123 HEEMAN$ !qwerty PASSS$ roberto1! Alehop123 alohomora1! indios1! amigo123 asdf123 iamumber1! guitar123 Dramaking123 ap0calypse kaka123 !aaaaa R0c0s0! kitty123 …
  • 61. Extracción reglas de mutación ¿Cómo? 1. Análisis estático de mutaciones 2. PACK I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 62. PACK ( /iphelix/PACK ) rulegen.py Contraseña à Palabra parecida à Reglas Problema: Lo intenta demasiado… O con poca vista. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 63. PACK lo intenta demasiado Oportunid@d P@$$w0rd cachivach3 destacamento à o93 à destacame3to I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) opportunist à T0 D2 o8d o9@ $d à Pasador à sa@ ss$ ,3 o4w so0 $d à cachivache à o93 à
  • 64. Extracción reglas de mutación ¿Cómo? 1. Análisis estático de mutaciones 2. PACK 3.¡Cracking! I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 65. Reglas por cracking Diccionario + MUCHAS reglas --debug-mode 4 Contar, ordenar y listo I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 66. Reglas específicas Reglas para contraseñas vs Reglas para palabras I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) ¡en !
  • 67. Resultados yubaba64: Análisis estático. Palabras. Openwall/all.txt: + 4.4 % vs best64 Wikipedia: - 0.3 % vs best64 Rockyou: - 12.2 % vs best64 I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 68. Resultados yubaba64: Análisis estático. Palabras. haku: Cracking. Palabras. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) Wikipedia ES: + 29.6 % vs d3ad0ne Wikipedia EN: + 25.7 % vs d3ad0ne
  • 69. Resultados yubaba64: Análisis estático. Palabras. haku: Cracking. Palabras. kamaji: Cracking. Contraseñas. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) Rockyou: + 9.8 % vs d3ad0ne Kaonashi14M: + 12.91 % vs d3ad0ne
  • 70. Resultados yubaba64: Análisis estático. Palabras. haku: Cracking. Palabras. kamaji: Cracking. Contraseñas. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) ¡Público!
  • 71. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 72. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) ÚLTIMO 20%
  • 73. Último 20%... • Ataques de Combinación Diccionario + Diccionario [+ diccionario…] •Ataques Híbridos Diccionario + Máscara / Máscara + Diccionario •Reglas aleatorias hashcat -g •PRINCE I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 74. PRINCE PRobability INfinite Chained Elements I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 75. PRINCE PRobability INfinite Chained Elements • Cada línea es un elemento • Se combinan elementos de distintas longitudes para formar passwords I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 76. PRINCE PRobability INfinite Chained Elements I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) Longitud 3: 1 + 1 + 1 1 + 2 2 + 1 3 Longitud 4: 1 + 1 + 1 + 1 1 + 1 + 2 1 + 3 2 + 1 + 1 2 + 2 3 + 1 4 Longitud 5: 1 + 1 + 1 + 1 + 1 1 + 1 + 1 + 2 1 + 1 + 3 1 + 4 2 + 1 + 1 + 1 2 + 1 + 2 …
  • 77. Un encuentro fortuito “The Unreasonable Effectiveness of Recurrent Neural Networks“ https://karpathy.github.io/2015/05/21/rnn-effectiveness/ I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 78. Oficio hecho ladrón,con agua ciencia. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) En cautelas y al amor, el diente de dolor. Primo anda la mujer y al río nos llene. Buena verdad, o m ucha sierra.
  • 79. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 80. Y si le enseñas passwords… I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) Kaonashi1M* 123qwer1988 acd143x beatnow12 sonipop27 koanley rffsmczwynsc lizaea6 Wartof Cumcdfif123 rainboys1 Kaonashi > 14 alex2321131108 lerka29aitas12 12109913513mul x1xjvtyjxrj1993 maksimovasasova vaditavidenton 1q12336idesung w1f7d8948fd669 1234567890489d ZodovaN18321uak Español campilleto parbondalista rablanzano alevaconear desargavar desrepositar corrosamente trastofacazo arregrica tapalero “RootedCON” + mutaciones $RootedCON( euCoN detooR eedcon RooONe R1oOetodCON 9ootedCO DRooteNCON RooONe rootercon
  • 81. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) ¿FUNCIONA DE VERDAD?
  • 82. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) 106.083 15.622 90.461 29.461 Kaonashi FULL 866 M Kaonashi1MResultados
  • 83. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 84. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…) ¡NO ME CRACKEES!
  • 85. Blue Team • Usar hashes LENTOS (bcrypt, scrypt…) • Usar hashes con salt • Obligar al uso de MFA I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 86. Usuarios • Usar MFA • Usar contraseñas largas y aleatorias (gestor de contraseñas) • correct horse battery staple I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)
  • 87. I KNOW YOUR P4$$W0RD (AND IF I DON’T, I WILL GUESS IT…)