eb8dbf66a1
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2.8 KiB
2.8 KiB
name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, params, output, tested, tests, test_file_path, file_path
| name | kind | lang | domain | version | purity | signature | description | tags | uses_functions | uses_types | returns | returns_optional | error_type | imports | params | output | tested | tests | test_file_path | file_path | ||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| guess_email_formats | function | py | cybersecurity | 1.0.0 | pure | def guess_email_formats(nombre: str, apellidos: str, dominio: str) -> list | Genera candidatos de email comunes (nombre.apellido, n.apellido, apellido.nombre, inicial+apellido, variantes con dos apellidos, etc.) a partir de nombre, apellidos y dominio. Normaliza acentos y ñ a ASCII en minusculas y deduplica preservando el orden. OSINT pasivo puro, sin red. |
|
false |
|
|
Lista de strings '<local>@<dominio>' con los candidatos de email en orden de generacion, sin duplicados. | true |
|
python/functions/cybersecurity/guess_email_formats_test.py | python/functions/cybersecurity/guess_email_formats.py |
Ejemplo
guess_email_formats("José", "García López", "empresa.com")
# ['jose@empresa.com',
# 'jose.garcia@empresa.com',
# 'josegarcia@empresa.com',
# 'j.garcia@empresa.com',
# 'jgarcia@empresa.com',
# 'jose_garcia@empresa.com',
# 'garcia.jose@empresa.com',
# 'joseg@empresa.com',
# 'jose.garcialopez@empresa.com',
# 'josegarcialopez@empresa.com',
# 'jose.lopez@empresa.com',
# 'jgarcialopez@empresa.com']
Cuando usarla
Usala al arrancar una investigacion de identidad cuando conoces nombre + apellidos + dominio de una organizacion y quieres una lista de direcciones probables para verificar despues (MX, catch-all, validacion SMTP, breach lookup). Es el primer paso antes de cualquier comprobacion activa.
Gotchas
- Funcion pura: NO valida que el email exista ni hace ninguna comprobacion de red. Solo genera candidatos sintacticos.
- La lista de patrones es heuristica (los formatos mas comunes), no exhaustiva: organizaciones con esquemas propios (ej. id numerico) no quedaran cubiertas.
- La normalizacion translitera acentos y ñ a ASCII y elimina cualquier caracter no alfanumerico del local part; nombres con guiones o apostrofes pierden esos separadores.
- Solo usa el primer token del nombre como nombre principal; nombres compuestos (ej. "Maria Jose") no generan variantes con el segundo nombre.