SkillAgentSearch skills...

Jok3r

Jok3r - Network and Web Pentest Framework

Install / Use

/learn @yottaiq/Jok3r

README

.. raw:: html

<p align="center">

.. image:: ./pictures/logo.png

.. raw:: html

<br class="title">

.. image:: https://img.shields.io/badge/python-3.6-blue.svg :target: https://www.python.org/downloads/release/python-366/ :alt: Python 3.6

.. image:: https://readthedocs.org/projects/jok3r/badge/?version=latest :target: https://jok3r.readthedocs.io/en/latest/ :alt: Documentation ReadTheDocs

.. image:: https://img.shields.io/docker/automated/koutto/jok3r.svg :target: https://hub.docker.com/r/koutto/jok3r/ :alt: Docker Automated build

.. image:: https://img.shields.io/docker/build/koutto/jok3r.svg :alt: Docker Build Status

.. raw:: html

</p>

========================================== Jok3r - Network and Web Pentest Framework

Jok3r es una aplicación CLI de Python3 que está dirigida a ayudar a los auditores de penetración en infraestructuras de red y pruebas de seguridad web de black-box.

Su principal objetivo es ahorrar tiempo en todo lo que se puede automatizar en la red/web a auditar para disfrutar más tiempo en cosas más interesantes y desafiantes..

Para lograrlo, he combinado herramientas para la auditoría de código abierto para ejecutar varios controles de seguridad, en todos los servicios de red comunes.

============= Características

Gestión de herramientas:

  • Instala automáticamente todas las herramientas de hacking utilizadas por Jok3r,
  • Mantiene herramientas actualizadas,
  • Añade fácilmente nuevas herramientas.

Automatización de ataques:

  • Dirigido a los servicios de red más comunes (incluida la web),
  • Ejecuta controles de seguridad mediante el encadenamiento de herramientas de auditoría, siguiendo el proceso estándar (Reconaissance, Análisis de vulnerabilidad, explotación, fuerza bruta, pos-explotación (básica).
  • Deje que Jok3r elija automáticamente las comprobaciones para ejecutar de acuerdo con el contexto y el conocimiento sobre el objetivo,

Gestión de misión / base de datos local:

  • Organiza objetivos por misiones en base de datos local,
  • Administra completamente las misiones y los objetivos (hosts/servicios) a través de shell interactivo (como msfconsole db),
  • Accede a los resultados de los controles de seguridad.

Jok3r ha sido construido con la ambición de ser fácil y rápidamente personalizable: Herramientas, controles de seguridad, servicios de red soportados... puede ser fácil añadido/editado/eliminado mediante la edición de archivos de configuración con una sintaxis fácil de entender.

============ Instalación

La forma recomendada para usar Jok3r es dentro de un contenedor Docker, no te preocupes por problemas de dependencia al instalar las diversas herramientas de auditoría.

.. image:: https://raw.githubusercontent.com/koutto/jok3r/master/pictures/docker-logo.png

Una imagen de Docker está disponible en Docker Hub y se reconstruye automáticamente en cada actualización: https://hub.docker.com/r/koutto/jok3r/. Basado inicialmente en Kali / Debian oficial. Imagen Linux Docker (kalilinux/kali-linux-docker).

.. image:: https://images.microbadger.com/badges/image/koutto/jok3r.svg :target: https://microbadger.com/images/koutto/jok3r :alt: Docker Image size

Imagen Pull Jok3r Docker:

.. code-block:: console

sudo docker pull koutto/jok3r

Ejecutar contenedor Docker actualizado:

.. code-block:: console

sudo docker run -i -t --name jok3r-container -w /root/jok3r --net=host koutto/jok3r

Importante: --net=host opción requerida para compartir la interfaz del host. Se necesita para revertir conexiones (por ejemplo, hacer ping al contenedor al probar RCE, obtienes un shell inverso))

Jok3r toolbox está listo para usar!

  • Para ejecutar un contenedor detenido:

.. code-block:: console

sudo docker start -i jok3r-container
  • Abrir múltiples terminales dentro un contenedor:

.. code-block:: console

sudo docker exec -it jok3r-container bash

==================== Ejemplos de uso rápido

Mostrar todas las herramientas

.. code-block:: console

python3 jok3r.py toolbox --show-all

Instalar todas las herramientas

.. code-block:: console

python3 jok3r.py toolbox --install-all --fast

Actualizar todas las herramientas

.. code-block:: console

python3 jok3r.py toolbox --update-all --fast

Lista de servicios soportados

.. code-block:: console

python3 jok3r.py info --services

Mostrar controles de seguridad para HTTP

.. code-block:: console

python3 jok3r.py info --checks http

Crear una nueva misión en la base de datos local.

.. code-block:: console

python3 jok3r.py db

jok3rdb[default]> mission -a MiAuditoria

[+] Mission "MiAuditoria" Agregado exitosamente
[*] La mision seleccionada es MiAuditoria

jok3rdb[MiAuditoria]> 

Ejecutar controles de seguridad en una URL y agreguar resultados a la misión

.. code-block:: console

python3 jok3r.py attack -t https://www.sapos.com/webapp/ --add MiAuditoria

Ejecuta controles de seguridad al servicio MSSQL (sin interacción del usuario) y añade resultados a la misión.

.. code-block:: console

python3 jok3r.py attack -t 190.212.190.133:1433 -s mssql --add MiAuditoria --fast

Importar hosts/servicios de los resultados de Nmap al alcance de la misión

.. code-block:: console

python3 jok3r.py db

jok3rdb[default]> mission MiAuditoria

[*] Selected mission is now MiAuditoria

jok3rdb[MiAuditoria]> nmap results.xml

Comprobar seguridad para servicios en la misión dada y almacene los resultados en la base de datos

.. code-block:: console

python3 jok3r.py attack -m MiAuditoria --fast

Comprobar seguridad solo en los servicios FTP en los puertos 21/tcp y 2121/tcp de la misión

.. code-block:: console

python3 jok3r.py attack -m MiAuditoria -f "port=21,2121;service=ftp" --fast

Comprobar seguridad solo en los servicios FTP en los puertos 2121/tcp y todos los servicios HTTP en 190.212.190.133 de la misión

.. code-block:: console

python3 jok3r.py attack -m MiAuditoria -f "port=2121;service=ftp" -f "ip=190.212.190.133;service=http"

====================== Ejemplo de uso frecuentes

Comienzas una auditoría con varios servidores. Aquí hay un ejemplo frecuente en JoK3r:

  1. Ejecutar Nmap escanear en los servidores frecuentes

  2. Crea una nueva misión (digamos "MiAuditoria") en la base de datos local:

.. code-block:: console

python3 jok3r.py db

jok3rdb[default]> mission -a MiAuditoria

[+] Mission "MiAuditoria" successfully added
[*] La misión seleccionada es MiAuditoria

jok3rdb[MiAuditoria]> 

3. Importa tus resultados de Nmap escaneados:

.. code-block:: console

jok3rdb[MiAuditoria]> nmap resultados.xml

4. Puede tener una visión general rápida de todos los servicios y hosts, agregar algunos comentarios, agregar     algunas credenciales si ya tiene algún conocimiento sobre los objetivos (grey box pentest) y así sucesivamente

.. code-block:: console

jok3rdb[MiAuditoria]> hosts

[...]

jok3rdb[MiAuditoria]> services

[...]

5. Ahora, haga comprobaciones de seguridad contra algunos objetivos. Por ejemplo, para     ejecutar comprobaciones para los servicios de Java-RMI, puede ejecutar el siguiente comando:

.. code-block:: console

python3 jok3r.py attack -m MiAuditoria -f "service=java-rmi" --fast

6. Puede ver los resultados de los controles de seguridad en vivo cuando las herramientas están     ejecutado o posteriormente desde la base de datos usando el siguiente comando:

.. code-block:: console

jok3rdb[MayhemProject]> results

================== Documentación completa

La documentación está disponible en: pronto...

============================================================ Servicios admitidos y controles de seguridad (Actualizado el 01/04/2019)

¡Quedan muchos controles por implementar y se deben agregar servicios! Trabajo en progreso ...

  • AJP (default 8009/tcp)_
  • FTP (default 21/tcp)_
  • HTTP (default 80/tcp)_
  • Java-RMI (default 1099/tcp)_
  • JDWP (default 9000/tcp)_
  • MSSQL (default 1433/tcp)_
  • MySQL (default 3306/tcp)_
  • Oracle (default 1521/tcp)_
  • PostgreSQL (default 5432/tcp)_
  • RDP (default 3389/tcp)_
  • SMB (default 445/tcp)_
  • SMTP (default 25/tcp)_
  • SNMP (default 161/udp)_
  • SSH (default 22/tcp)_
  • Telnet (default 21/tcp)_
  • VNC (default 5900/tcp)_

AJP (default 8009/tcp)

.. code-block:: console

+------------------------+------------+-------------------------------------------------------------------------------------------------+----------------+
| Name                   | Category   | Description                                                                                     | Tool used      |
+------------------------+------------+-------------------------------------------------------------------------------------------------+----------------+
| nmap-recon             | recon      | Recon using Nmap AJP scripts                                                                    | nmap           |
| tomcat-version         | recon      | Fingerprint Tomcat version through AJP                                                          | ajpy           |
| vuln-lookup            | vulnscan   | Vulnerability lookup in Vulners.com (NSE scripts) and exploit-db.com (lots of false positive !) | vuln-databases |
| default-creds-tomcat   | bruteforce | Check default credentials for Tomcat Application Manager                                        | ajpy           |
| deploy-webshell-tomcat | exploit    | Deploy a webshell on Tomcat through AJP                                                         | ajpy           |
+------------------

Related Skills

View on GitHub
GitHub Stars17
CategoryDevelopment
Updated3mo ago
Forks7

Languages

Python

Security Score

92/100

Audited on Dec 9, 2025

No findings