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
Cooper — Una herramienta Python para ingerir HTML y producir código fuente HTML adecuado para campañas de phishing. | Kitploit
Herramientas/GitHubGitHub/chrismaddalena/cooper
Herramientas de PhishingRecopilación de InformaciónPhishingSeguridad WebIngeniería Social
GitHubchrismaddalena/cooper

Cooper

Una herramienta Python para ingerir HTML y producir código fuente HTML adecuado para campañas de phishing.

Ver Repositorio
6019hace 1 mesRevisado 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

Cooper, sustantivo, fabricante o reparador de toneles y barriles

(¡Es un chiste de "pez en un barril"! ¡Disfruto de los juegos de palabras!)

Una herramienta Python para ingerir HTML y producir código fuente HTML adecuado para campañas de phishing.

Cooper simplifica el proceso de clonar un sitio web o correo electrónico objetivo para su uso en una campaña de phishing. Solo encuentra una URL o descarga el contenido sin procesar de un correo electrónico que desees usar y pásaselo a Cooper. Cooper clonará el contenido y luego lo preparará automáticamente para su uso en tu campaña. Los scripts, imágenes y CSS se pueden modificar para usar enlaces directos en lugar de enlaces relativos, los enlaces se cambian para que apunten a tu servidor de phishing y los formularios se actualizan para enviarte datos, todo en cuestión de segundos. Cooper es multiplataforma y debería funcionar con macOS, Linux y Windows.

No más editar manualmente enlaces y formularios después de usar wget para obtener un sitio. Puedes concentrarte en el trabajo de detalle.

Uso básico

Cooper ofrece varios módulos con diferentes propósitos:

  • page - Sin duda será el módulo más utilizado. Se usa para clonar una página web objetivo. La salida es un archivo HTML y una captura de pantalla de la página web original para verificar los resultados.
  • email - Similar a page, pero toma un archivo que contiene el contenido sin procesar del correo electrónico. Simplemente abre el correo en tu cliente de correo, usa la opción 'ver original' de tu cliente y guarda el contenido. La salida es un archivo HTML.
  • encode - Una práctica herramienta que automatiza la codificación Base64 para cualquier imagen que desees incrustar manualmente en una página de aterrizaje. Dale un archivo de imagen y producirá el texto completo necesario para establecer el atributo src. La salida es un bloque de texto (probablemente enorme) como ``. Por eso suele ser una buena idea redirigir la salida a un archivo para facilitar copiar/pegar.

Usando page

Page es el módulo principal de Cooper. El único argumento requerido es -t para especificar una URL objetivo. Luego puedes agregar --selenium para usar opcionalmente Selenium en lugar de Requests. Básicamente, si la salida se ve incorrecta o incompleta (quizás solo un fondo y algo de estilo, por ejemplo) prueba a usar --selenium.

Algunos sitios web requieren JavaScript para generar el contenido HTML. Si la salida se ve incorrecta o incompleta, prueba a usar --selenium.

Además, puedes agregar -u con una URL para usar como URL base para imágenes, scripts y hojas de estilo. Cooper reemplazará los enlaces relativos (por ejemplo, /wp-content/images/foo.bar) con la URL completa por ti.

Siempre proporciona URLs válidas con el protocolo correcto para -t y -u (es decir, http://www.example.com).

A continuación se muestra una lista completa de configuraciones:

  • -t, --target TEXT
    • [REQUERIDO] La URL de la página web objetivo.
  • -o, --output TEXT
    • [Opcional] Especifica el nombre del archivo para el archivo HTML de salida. Por defecto es index.html. Se recomienda incluir la extensión .html.
  • -u, --url TEXT
    • [Opcional] Especifica la URL raíz para las imágenes en el correo electrónico o página web objetivo.
  • -m, --embed
    • [Opcional] Codifica imágenes en Base64 e incrustalas en la salida.
  • --selenium
    • [Opcional] Usa Selenium para obtener el código fuente HTML de la página web.
  • -s, --serverport TEXT
    • [Opcional] Proporciona un puerto para usar en un servidor HTTP que sirva los archivos de salida.
  • -c, --config FILE
    • [Opcional] Proporciona un archivo de configuración alternativo para que Cooper lo use. Esto es útil si usas diferentes plataformas/servidores de phishing.

Usando email

El módulo email es útil cuando quieres usar un correo electrónico que tienes como base para un nuevo phish. Manejar la codificación y los mensajes MIME multiparte puede ser tedioso si se hace a mano, así que deja que Cooper lo haga por ti. Este módulo analizará el contenido del mensaje, descartará partes innecesarias, como los archivos adjuntos, y te dará una versión completamente decodificada del cuerpo principal del correo electrónico, las partes de texto plano o texto HTML que te interesan.

A continuación se muestra una lista completa de configuraciones:

  • -f, --file PATH
    • [REQUERIDO] El archivo que contiene el contenido de correo electrónico sin procesar para analizar.
  • -o, --output TEXT
    • [Opcional] Especifica el nombre del archivo para el archivo HTML de salida. Por defecto es index.html. Se recomienda incluir la extensión .html.
  • -s, --serverport TEXT
    • [Opcional] Proporciona un puerto para usar en un servidor HTTP que sirva los archivos de salida.
    • -c, --config FILE
      • [Opcional] Proporciona un archivo de configuración alternativo para que Cooper lo use. Esto es útil si usas diferentes plataformas/servidores de phishing.

Usando encode

Como se mencionó anteriormente, este módulo es único. El argumento requerido, y único, es -i para proporcionar el archivo de imagen a codificar. Es útil si estás construyendo tu propia página de aterrizaje o editando una página y necesitas agregar una imagen. Si decides incrustarla, pruébalo en este módulo. Codificará en Base64 el archivo proporcionado y producirá el texto necesario para incrustar la imagen.

  • -i, --image TEXT
    • [REQUERIDO] El archivo objetivo para codificar en Base64.

Configuración

Requisitos de Python

Cooper requiere varias bibliotecas para hacer scraping de sitios web y analizar HTML. Usa pip o pipenv para instalar todo. Hay un requirements.txt para pip y un Pipfile para entornos virtuales de pipenv. Si usas pip, asegúrate de usar el correcto en tu sistema para Python 3.9 (por ejemplo, pip3 o pip3.9)

Puedes asegurarte de que se use la versión correcta llamando a pip con tu versión de Python:

python3 -m pip install -r requirements.txt

Un entorno virtual es incluso más fácil de usar:

  1. Ejecuta este comando: pipenv install
  2. Entra al entorno con: pipenv shell

Requisitos de Selenium

Usar Selenium para un navegador sin interfaz gráfica requiere que Google Chrome esté instalado y descargar un archivo Chromewebdriver coincidente desde: https://chromedriver.chromium.org/downloads

Descarga y extrae el webdriver en la raíz de este proyecto. Puedes colocarlo en otro lugar, pero asegúrate de actualizar la configuración (ver siguiente sección).

Configurar la Configuración

Luego debes configurar tu archivo de configuración. El archivo cooper.config proporcionado con este repositorio viene preconfigurado para su uso con GoPhish (las URLs están configuradas para cambiarse a {{.URL}}). La configuración predeterminada también asume que colocarás un webdriver de Chrome en la raíz del directorio.

El archivo de configuración se ve así:

root@kitploit:~
[Replacement URLs]
landing_page_url_replacement: {{.URL}}
landing_page_form_action: {{.URL}}
email_replacement_url: {{.URL}}

[Browser]
driver_path: ./chromedriver
user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.87 Safari/537.36

Realiza los cambios necesarios. Puedes crear múltiples archivos de configuración para diferentes plataformas de phishing que uses, servidores de ataque adicionales o agentes de usuario alternativos. Se pueden usar diferentes archivos de configuración incluyendo los argumentos -c o --config junto con tu archivo alternativo. De lo contrario, se usará el archivo cooper.config por defecto.

La sección [Replacement URLs] contiene todas las URLs que Cooper usará al reemplazar enlaces y acciones de formularios.

El landing_page_url_replacement es la URL utilizada para la página de aterrizaje. Puede que quieras configurarla con la IP del servidor de phishing para que los visitantes sean redirigidos de vuelta a la página de aterrizaje o enviarlos a otro lugar.

El landing_page_form_action es la URL a la que deseas que se envíen los datos del formulario cuando se envía un formulario.

El email_replacement_url es la URL utilizada para los correos electrónicos y debe configurarse con el dominio o la dirección IP de tu servidor de phishing.

Si alguna de estas URLs está vacía, Cooper no reemplazará esas URLs. Esto es más práctico para landing_page_url_replacement donde quizás desees que la página de aterrizaje siga apuntando a enlaces reales. Sin embargo, ten cuidado, la página web objetivo puede usar enlaces relativos como /home.php en lugar de enlaces directos, lo que significaría que tu página de aterrizaje estará llena de enlaces rotos.

La sección [Browser] es solo para configuraciones relacionadas con la navegación web. Usa esta sección para apuntar Selenium y Cooper a tu webdriver del navegador si eliges usar un archivo o ubicación de driver diferente. El agente de usuario utilizado para la navegación web también se define aquí. Cooper tiene un agente de usuario predeterminado que puedes sobrescribir con el archivo de configuración.

Información Variada

  • Las imágenes se pueden codificar en Base64 antes de incrustarlas en una plantilla. Esto es para que las plantillas no dependan de que el sitio web esté disponible/mantenga las imágenes donde están. El tamaño adicional para un sitio web es (muy probablemente) insignificante, pero usar esta opción para un correo electrónico podría ser un problema. Algunos clientes de correo electrónico no admiten imágenes Base64, como Outlook(!). Ten en cuenta el cliente de correo electrónico del objetivo.

  • La opción del servidor HTTP está ahí para permitirte revisar fácilmente la salida de Cooper visitando 127.0.0.1:PORT. Podrías simplemente abrir el archivo HTML, pero no es tan ordenado.

Problemas Conocidos

  • Si el sitio web está alojado en un servicio como SquareSpace, Cooper no podrá reparar las imágenes. Las etiquetas img se ven así: <img src="https://raw.githubusercontent.com/chrismaddalena/cooper/HEAD/static1.squarespace.com/static/52ebedcae4b0ad4aad060b4a/t/533b687ae4b01d79d0ae12a3/1437187699809/?format=1500w"\>

Palabras Finales

Un agradecimiento especial a Ninjasl0th y Hagbard por su ayuda con este proyecto!

Descargar herramienta