Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
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.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/redhuntlabs/octopii
OSINT (Inteligencia de Fuentes Abiertas)Exfiltración de DatosRecopilación de InformaciónPrivacidadAprendizaje Automático
GitHubredhuntlabs/octopii

Octopii

Un escáner de Información Personal Identificable (PII) impulsado por IA.

Ver Repositorio
74164hace 1 añoRevisado 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
Octopii — Un escáner de Información Personal Identificable (PII) impulsado por IA. | Kitploit
Sitio web

Octopii

root@kitploit:~
⠀⠀⠀⠀⠀⠀⠀⣤⣤⣄⣀⡀⠀⠀⠀⢀⣠⣤⣤⣄⡀⠀⠀⠀⢀⣀⣠⣤⣤⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠸⣿⣿⡿⠿⢿⣷⡄⢠⣿⣿⣿⣿⣿⣿⡄⢀⣾⡿⠿⢿⣿⣿⠇⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠈⠉⠀⠀⢸⣿⡇⢸⣿⣿⣿⣿⣿⣿⡇⢸⣿⡇⠀⠀⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⣠⣤⡀⠀⠀⠀⠀⠀⠀⠀⢸⣿⡇⢸⣿⣿⣿⣿⣿⣿⡇⢸⣿⡇⠀⠀⠀⠀⠀⠀⠀⢀⣤⣄⠀⠀⠀
⠸⣿⣿⣿⣿⣿⣿⣿⣿⣦⠀⢸⣿⡇⢸⣿⣿⣿⣿⣿⣿⡇⢸⣿⡇⠀⣴⣿⣿⣿⣿⣿⣿⣿⣿⠇⠀⠀
⠀⠉⠉⠁⠀⠀⠀⠀⣿⣿⠀⢸⣿⡇⠀⠉⣿⣿⣿⣿⠉⠀⢸⣿⡇⠀⣿⣿⠀⠀⠀⠀⠈⠉⠉⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣀⣈⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣁⣀⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀       
⠀⠀⠀⠀⠀⠀⠀⠀⠘⠿⠿⠿⠿⠿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠿⠿⠿⠿⠃⠀⠀⠀⠀⠀⠀⠀ 
⠀⠀⠀⠀⠀⠀⢀⣤⣤⣤⣤⣤⣤⣴⣿⣿⣿⡇⢸⣿⡿⣿⣦⣤⣤⣤⣤⣤⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⢸⣿⠋⠉⠉⠉⠉⠉⠉⢸⣿⡇⢸⣿⡇⠈⠉⠉⠉⠉⠉⠙⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⢰⣿⣿⣦⠀⢰⣿⣿⣦⠀⢸⣿⡇⢸⣿⡇⠀⣰⣿⣿⡆⠀⣴⣿⣿⡆⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠈⠻⠿⠋⠀⠘⣿⣿⠃⠀⢸⣿⡇⢸⣿⡇⠀⠘⣿⣿⠃⠀⠙⠿⠟⠁⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⣦⣤⣼⣿⠃⠘⣿⣧⣄⣤⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠛⠛⠁⠀⠀⠈⠛⠛⠛⠋⠀⠀⠀

⠀⠀⠀⠀⠀⠀      ⠀O C T O P I I⠀⠀⠀⠀
Copyright © 2023 RedHunt Labs Private Limited

Octopii es un escáner de Información de Identificación Personal (PII) que utiliza Reconocimiento Óptico de Caracteres (OCR), listas de expresiones regulares y Procesamiento del Lenguaje Natural (PLN) para buscar en ubicaciones públicas documentos de identidad gubernamentales, direcciones, correos electrónicos, etc., en imágenes, PDFs y documentos.

Las filtraciones de PII suelen pasarse por alto en el ámbito de la ciberseguridad. En RedHunt Labs, siempre buscamos formas diferentes e innovadoras de crear soluciones de ciberseguridad que las organizaciones y los servicios necesitan. Nos hemos encontrado con un número sustancial de organizaciones que tienen sus servidores configurados incorrectamente. Esto provoca que la PII de empleados y clientes se filtre constantemente, proporcionando a partes malintencionada información sensible sobre su origen, números de identificación, información de contacto y ubicación.

Por eso creamos Octopii, una herramienta para demostrar y detectar lo fácil que es automatizar el descubrimiento y la extracción de PII y documentos sensibles filtrados en Internet.

Uso

Instalación de dependencias

  1. Instale todas las dependencias mediante pip install -r requirements.txt.
  2. Instale el asistente Tesseract localmente mediante sudo apt install tesseract-ocr -y en Ubuntu o sudo pacman -Syu tesseract en Arch Linux.
  3. Instale las definiciones de idioma de Spacy localmente mediante python -m spacy download en_core_web_sm.

Una vez instalado lo anterior, ya está listo.

Ejecución

Para ejecutar Octopii, escriba

root@kitploit:~
python3 octopii.py <ubicación a escanear>

donde <ubicación a escanear> es un archivo o un directorio.

Actualmente Octopii admite escaneo local mediante ruta del sistema de archivos, URL de S3 y listados de directorios abiertos de Apache. También puede proporcionar URL de imágenes individuales o archivos como argumento.

Ejemplo

Hemos proporcionado una carpeta dummy-pii/ que contiene PII de ejemplo para que pruebe Octopii. Pásela como argumento y obtendrá la siguiente salida

root@kitploit:~
owais@artemis ~ $ python3 octopii.py dummy-pii/

Searching for PII in dummy-pii/dummy-drivers-license-nebraska-us.jpg
{
    "file_path": "dummy-pii/dummy-drivers-license-nebraska-us.jpg",
    "pii_class": "Nebraska Driver's License",
    "country_of_origin": "United States",
    "faces": 1,
    "identifiers": [],
    "emails": [],
    "phone_numbers": [
        "4000002170"
    ],
    "addresses": [
        "Nebraska"
    ]
}

Searching for PII in dummy-pii/dummy-PAN-India.jpg
{
    "file_path": "dummy-pii/dummy-PAN-India.jpg",
    "pii_class": "Permanent Account Number",
    "country_of_origin": "India",
    "faces": 0,
    "identifiers": [],
    "emails": [],
    "phone_numbers": [],
    "addresses": [
        "INDIA"
    ]
}

...

Se crea un archivo llamado output.txt que contiene la salida de la herramienta. Este archivo se añade secuencialmente en tiempo real.

Funcionamiento

Octopii utiliza Tesseract para el Reconocimiento Óptico de Caracteres (OCR) y NLTK para el Procesamiento del Lenguaje Natural (PLN) con el fin de detectar cadenas de información de identificación personal. Esto se realiza mediante los siguientes pasos:

1. Entrada e importación

Octopii escanea imágenes (jpg y png) y documentos (pdf, doc, txt, etc.). Admite 3 fuentes:

  1. Amazon Simple Storage Service (S3): recorre el XML de las URL de contenedores S3.
  2. Listado de directorios abierto: recorre listados de directorios abiertos de Apache y escanea en busca de archivos.
  3. Sistema de archivos local: puede acceder a archivos y carpetas dentro de sistemas de archivos tipo UNIX (macOS y sistemas operativos basados en Linux).

Las imágenes se detectan mediante la Biblioteca de Imágenes de Python (PIL) y se abren con OpenCV. Los PDF se convierten en una lista de imágenes y se escanean mediante OCR. Los tipos de archivos basados en texto se leen como cadenas y se escanean sin OCR.

2. Detección de rostros

Se utiliza una técnica de detección de imágenes de clasificación binaria, conocida como "cascada Haar", para detectar rostros dentro de las imágenes. En este repositorio se proporciona un modelo de cascada preentrenado, que contiene datos de cascada para que OpenCV los use. Se pueden detectar múltiples rostros dentro de la misma imagen de PII, y se devuelve el número de rostros detectados.

3. Limpieza de la imagen y lectura de texto

Luego, las imágenes se "limpian" para la extracción de texto mediante los siguientes pasos de transformación de imagen:

  1. Rotación automática
  2. Escala de grises
  3. Monocromo
  4. Umbral medio
  5. Umbral gaussiano
  6. 3x desviación de inclinación (deskewing)

Ilustración del filtrado de imágenes

Dado que estos pasos eliminan datos de la imagen (incluidos los colores de las fotografías), este proceso de limpieza de la imagen ocurre después de intentar la detección de rostros.

4. Reconocimiento Óptico de Caracteres (OCR)

Se utiliza Tesseract para extraer todas las cadenas de texto de una imagen/archivo. Luego se tokenizan en una lista de cadenas, separadas por caracteres de nueva línea ('\n') y espacios (' '). El texto confuso, como cadenas null y caracteres individuales, se descarta de esta lista, dando como resultado una lista 'inteligible' de palabras potenciales.

Esta lista de palabras se introduce luego en una función de verificación de similitud. Esta función utiliza el emparejamiento de patrones Gestalt para comparar cada palabra extraída del documento PII con una lista de palabras clave, presente en definitions.json. Esta verificación ocurre una vez por limpieza. Se cuenta el número de veces que una palabra aparece de la lista de palabras clave y esto se utiliza para derivar una puntuación de confianza. Cuando las palabras clave de una definición particular aparecen repetidamente en estos escaneos, esa definición obtiene la puntuación más alta y se selecciona como la clase de PII predicha.

Octopii también verifica subcadenas de PII sensibles como correos electrónicos, números de teléfono e identificadores únicos comunes de documentos gubernamentales mediante expresiones regulares. También puede extraer datos de geolocalización como direcciones y países utilizando el Procesamiento del Lenguaje Natural.

5. Salida

La salida consta de lo siguiente:

  • file_path: Dónde se puede encontrar el archivo que contiene PII
  • pii_class: El tipo de PII que contiene este archivo
  • country_of_origin: De dónde proviene esta PII.
  • identifiers: Identificadores, códigos o números únicos que pueden usarse para identificar al individuo mencionado en la PII.
  • emails y phone_numbers: Información de contacto en el archivo.
  • addresses: Cualquier forma de dato de geolocalización en la PII. Esto puede usarse para triangular la ubicación de un individuo.

Contribuciones

Haga clic aquí para leer sobre cómo puede contribuir a Octopii.


Créditos

  • BeautifulSoup
  • Tesseract
  • SciKit
  • OpenCV y Python Image Library
  • Spaces - DigitalOcean

...y muchos otros

Aviso legal

Esta herramienta está destinada únicamente a fines de investigación y educativos. RedHunt Labs y otros contribuyentes de este proyecto no asumen ninguna responsabilidad por el uso malicioso de esta herramienta.

Licencia

Licencia MIT

Copyright © 2023 RedHunt Labs Private Limited.

Por Owais Shaikh

  • Trabajo: [email protected]
  • Personal: [email protected]
Descargar herramienta