Skip to main content

MeXiCOSINT Banner

PyPI Release Python Licencia OSINT México Estado Beta

MeXiCOSINT 📞🔍

Herramienta OSINT enfocada en análisis, validación, enriquecimiento y reportes de números telefónicos mexicanos.


MeXiCOSINT demo


Descripción 🧭

MeXiCOSINT es una herramienta de OSINT desarrollada en Python y enfocada en números telefónicos mexicanos.

La herramienta puede validar números, analizar formatos mexicanos, consultar fuentes opcionales mediante API, procesar metadatos disponibles y generar resultados útiles para investigación autorizada.

Este proyecto está en fase beta. Los resultados deben tratarse como indicadores OSINT, no como evidencia absoluta.


Características ✨

  • Validación de números telefónicos mexicanos
  • Formato nacional e internacional
  • Análisis local de números mexicanos
  • Enriquecimiento opcional mediante APIs externas
  • Procesamiento relacionado con IFT/SNS
  • Búsquedas OSINT mediante enlaces públicos para WhatsApp y redes sociales
  • Base oficial IFT/PNN integrada: 177k+ bloques de numeración asignada, consulta offline
  • Operadora, modalidad y fecha de asignación directo del regulador
  • Localidad canónica IFT/LADA: bloque IFT exacto como fuente primaria y LADA como respaldo o apoyo
  • Series no geográficas 200/300/500/800/900 con alerta de números premium (900)
  • Estado estructurado por proveedor: missing, not_requested, configured_unverified, request_success, no_result, auth_failed, quota_exceeded y más
  • Fuente de geocodificación seleccionada visible en el resultado
  • MicroVault como único backend de credenciales para el enriquecimiento normal; se requiere el perfil mexicosint
  • Modelo Mexico-first (v2.8.0): IFT/PNN es la fuente primaria para bloques de numeración mexicanos; Abstract, NumVerify e IPQualityScore se muestran como corroboración secundaria y no reemplazan los datos oficiales
  • Matriz de confianza: el reporte identifica qué campos provienen de IFT/PNN y cuáles son señales secundarias
  • Rendimiento concurrente (v2.5.3): llamadas a APIs en paralelo (asyncio + aiohttp), pooling de conexiones HTTPS y memoización de normalización y geocodificación
  • Soporte para reportes o salidas generadas según la versión
  • Modo telefónico únicamente: sin proveedores IP ni escaneo IP

Estructura del repositorio 📂

MeXiCOSINT/
├── bin/
│   └── mexicosint
├── docs/
│   ├── INSTALL.md
│   ├── USAGE.md
│   ├── CONFIG.md
│   ├── ENGLISH.md
│   └── index.html
├── src/
│   └── mexicosint/
│       ├── __init__.py
│       ├── __main__.py
│       ├── cli.py
│       ├── config.py
│       ├── evidence.py
│       ├── locality.py
│       ├── main.py
│       ├── microvault_bridge.py
│       ├── numbering.py
│       ├── presentation.py
│       ├── reporting.py
│       ├── core/
│       │   ├── models.py
│       │   ├── scan_result.py
│       │   └── settings.py
│       ├── data/
│       │   ├── lada.py
│       │   ├── ift_blocks.csv.gz
│       │   └── ift_ng_blocks.csv.gz
│       ├── modules/
│       │   ├── ift_blocks.py
│       │   └── local_parser.py
│       ├── providers/
│       │   ├── abstract.py
│       │   ├── base.py
│       │   ├── geoapify.py
│       │   ├── ipqualityscore.py
│       │   ├── models.py
│       │   ├── nominatim.py
│       │   ├── numverify.py
│       │   ├── opencage.py
│       │   └── status.py
│       └── services/
│           └── scanner.py
├── tools/
│   └── update_ift_blocks.py
├── pyproject.toml
├── requirements.txt
├── .gitignore
├── LICENSE
└── README.md

Instalación ⚙️

Opción 1: pipx (recomendada)

MeXiCOSINT está publicado en PyPI. La forma recomendada de instalarlo es con pipx, que instala el comando de forma global pero aislada, sin tocar el Python del sistema (importante en Kali Linux).

sudo apt install -y pipx
pipx install mexicosint

Después solo ejecuta:

mexicosint

Para actualizar a una nueva versión:

pipx upgrade mexicosint

Opción 2: pip directo

Si prefieres pip (fuera de Kali, o usando --break-system-packages en Kali):

pip install mexicosint

Opción 3: clonar el repositorio

Útil si quieres modificar el código o colaborar:

git clone https://github.com/KiMiGuel/MeXiCOSINT.git
cd MeXiCOSINT
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
pip install -e .

Actualizar la base IFT (opcional)

El paquete ya incluye la base. Para actualizarla con el plan vigente del IFT:

python3 tools/update_ift_blocks.py

Uso ▶️

Ejecuta MeXiCOSINT usando el comando:

mexicosint 5512345678
mexicosint +525512345678
mexicosint --mexico-only 5512345678
mexicosint --batch numeros.txt

--mexico-only omite AbstractAPI, NumVerify e IPQualityScore, conservando IFT/PNN y la geolocalización aproximada de localidad. --batch procesa un archivo con un número por línea.

La CLI ya no ofrece configuración de credenciales. La única fuente para proveedores es MicroVault, mediante el perfil mexicosint.

Si clonaste el repositorio, también puedes usar el launcher sin instalar el comando global:

bash bin/mexicosint 5512345678

O ejecutar el módulo del paquete:

PYTHONPATH=src python3 -m mexicosint 5512345678

MicroVault se detecta y se usa automáticamente para el enriquecimiento normal. La única fuente es el perfil mexicosint; --microvault fuerza la conexión.


Documentación 📚

Guía Descripción
Guía de instalación Instrucciones de instalación para Kali, Debian, Ubuntu y sistemas similares
Guía de uso Uso completo: opciones, ejemplos, base IFT, API keys
Guía de configuración Configuración local y manejo de API keys
Documentación en inglés Documentación completa en inglés

APIs opcionales 🔗

Algunas funciones pueden depender de API keys externas.

Servicio Función
AbstractAPI Validación y enriquecimiento telefónico como evidencia de apoyo
NumVerify Validación secundaria como evidencia de apoyo
OpenCage Geocodificación primaria opcional de localidad IFT/LADA
Geoapify Geocodificación fallback opcional de localidad IFT/LADA
IPQualityScore Validación, reputación y abuso telefónico como evidencia de apoyo

Formatos aceptados: +526634647308, 526634647308, 6634647308, +52 663 464 7308, 52-663-464-7308, (663) 464-7308.

La localidad se arma desde IFT/LADA como <ciudad o municipio>, <estado>, Mexico. Los valores vagos de APIs externas, como país, región o etiquetas genéricas, no se geocodifican ni reemplazan la localidad canónica.

Los proveedores se usan automáticamente cuando su key existe; si falta una key, esa fuente se omite sin detener el análisis.

Las API keys deben mantenerse en tu entorno local. No las subas a GitHub.


Seguridad 🔒

No subas archivos que contengan credenciales o datos sensibles:

.env
*.env
config.json
secrets.json
keys.json
credentials.json

MeXiCOSINT no crea ni lee un archivo JSON de credenciales. Las keys se administran exclusivamente en MicroVault.


Advertencia ⚠️

MeXiCOSINT está diseñado para investigación autorizada, autoauditoría y flujos educativos de OSINT.

No uses esta herramienta para acoso, doxxing, fraude, amenazas o actividades no autorizadas.

La herramienta no garantiza identidad, ubicación exacta, propiedad ni atribución definitiva de un número telefónico.


MicroVault requerido para enriquecimiento 🔐

MicroVault es el backend local y cifrado de credenciales. Los escaneos normales requieren el perfil mexicosint; la CLI lo obtiene mediante:

microvault env --profile mexicosint --json

No se aceptan variables de entorno genéricas, JSON plano, un vault completo ni consultas por servicio como fuente alternativa.

Instala/configura MicroVault y crea el perfil:

pip install microvault

2. Configura los servicios que quieras usar

Estos son los nombres de servicio que MeXiCOSINT reconoce para proveedores opcionales. Solo necesitas guardar los que realmente utilizarás:

microvault add geoapify
microvault add opencage_api
microvault add ipgs
microvault add numverify_api
microvault add abstract_api

microvault add <nombre> pide la key con un prompt oculto — nunca se escribe en la misma línea, nunca queda en tu historial de shell.

3. Agrúpalas en un perfil

Esto hace que MeXiCOSINT solo vea esas 5 keys — nunca el resto de tu bóveda, aunque tengas otros servicios guardados ahí para otras herramientas:

microvault profile mexicosint geoapify opencage_api ipgs numverify_api abstract_api

4. Ejecuta MeXiCOSINT normalmente

mexicosint 5512345678

Nada más. MeXiCOSINT detecta MicroVault automáticamente. --microvault fuerza la conexión y hace fallar el escaneo si el perfil no puede abrirse.

Casos especiales:

mexicosint --microvault 5512345678      # fuerza la conexion (falla si no puede)

Si MicroVault necesita abrir su prompt pero MeXiCOSINT se ejecuta desde una terminal no interactiva, muestra un error específico de terminal interactiva. No lo confunde con una contraseña incorrecta.

Nombres de las keys

Key en MicroVault Para qué se usa
geoapify Geocodificación de respaldo
opencage_api Geocodificación primaria
ipgs Reputación y abuso telefónico
numverify_api Validación secundaria
abstract_api Enriquecimiento telefónico

Si tu bóveda usa otros nombres, puedes ajustarlos en src/mexicosint/config.py (variable MICROVAULT_SERVICES) o crear un alias en MicroVault con el comando microvault alias.

El bridge es estricto: consulta el perfil una vez y falla cerrado si el perfil no existe, la respuesta es inválida o MicroVault no está disponible.


Portense bien cabrones. 🚧


Licencia 📜

Este proyecto se publica bajo la licencia incluida en este repositorio.

Release files for mexicosint 2.9.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mexicosint 2.9.0
File Size Uploaded
mexicosint-2.9.0.tar.gz 1.4 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for mexicosint 2.9.0
File Interpreter ABI Platform
mexicosint-2.9.0-py3-none-any.whl Python 3 none any Details

Total release size: 2.9 MB

Release files / mexicosint-2.9.0.tar.gz

Download URL mexicosint-2.9.0.tar.gz
Size 1.4 MB
Tags Source
SHA-256 checksum
How to use checksums
ee986218a988add159a8ea7b7ac446f8faf1de86e12b7cfd7ceca771cf64e578
BLAKE2b-256 checksum
How to use checksums
0109640d978477ed2f5a9b9f06d282cfa0bffde7ec2d99713c6b1eb7aefee990
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / mexicosint-2.9.0-py3-none-any.whl

Download URL mexicosint-2.9.0-py3-none-any.whl
Size 1.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
2685aed3a7feb57300aba278d80b005d5e08462ea3693ad75f8e94de61b35880
BLAKE2b-256 checksum
How to use checksums
0afcb709be6c2b8116b755e04930e8ad6597c3d527a96ed913d2255504a39fb5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release history Release notifications | RSS feed

2.10.0

2 release files

This release

2.9.0 This release

2 release files

2.8.1

2 release files

2.8.0

2 release files

2.7.1

2 release files

2.7.0

2 release files

2.5.5

2 release files

2.5.4

2 release files

2.5.3

2 release files

2.5.2

2 release files

2.5.1

2 release files

2.5.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page