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/telekom-security/explo
Análisis de VulnerabilidadesScripting y AutomatizaciónExplotación de Aplicaciones WebSeguridad WebPruebas de PenetraciónArchived
GitHubtelekom-security/explo

explo

Formato de prueba de vulnerabilidades web legible por humanos y máquinas

Ver Repositorio
1954910hace 3 añosRevisado 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

explo

screenshot

explo es una herramienta simple para describir problemas de seguridad web en un formato legible por humanos y máquinas. Al definir un flujo de trabajo de solicitud/condición, explo es capaz de explotar problemas de seguridad sin necesidad de escribir un script. Esto permite compartir vulnerabilidades complejas en un formato simple, legible y ejecutable.

Ejemplo para extraer un token csrf y usarlo en un formulario:

root@kitploit:~
name: get_csrf
description: extract csrf token
module: http
parameter:
    url: http://example.com/contact
    method: GET
    header:
        user-agent: Mozilla/5.0
    extract:
        csrf: [CSS, "#csrf"]
---
name: exploit
description: exploits sql injection vulnerability with valid csrf token
module: http
parameter:
    url: http://example.com/contact
    method: POST
    body:
        csrf: "{{get_csrf.extracted.csrf}}"
        username: "' SQL INJECTION"
    find: You have an error in your SQL syntax

Tabla de contenidos

  • Instalación
  • Uso
  • Módulos
    • HTTP (Básico)
    • HTTP (Cabecera)
    • SQLI (Ciego)
    • Metadatos
  • En este archivo de definición de ejemplo, el problema de seguridad se prueba ejecutando dos pasos que se ejecutan de arriba a abajo. El último paso devuelve un éxito o fracaso, dependiendo de si se encuentra la cadena 'You have an error in your SQL syntax'.

    Instalación

    Instalar vía PyPI

    root@kitploit:~
    pip install explo
    

    Instalar desde el código fuente

    root@kitploit:~
    git clone https://github.com/dtag-dev-sec/explo
    cd explo
    python setup.py install
    

    Uso

    root@kitploit:~
    explo [--verbose|-v] testcase.yaml
    explo [--verbose|-v] examples/*.yaml
    

    Hay algunos casos de prueba de ejemplo en la carpeta examples/.

    root@kitploit:~
    $ explo examples/SQLI_simple_testphp.vulnweb.com.yaml
    

    También puedes incluir explo como librería de Python:

    root@kitploit:~
    from explo.core import from_content as explo_from_content
    from explo.core import ExploException, ProxyException
    
    def save_log(msg):
        print(msg)
    
    try:
        result = explo_from_content(explo_yaml_file, save_log)
    except ExploException as err:
        print(err)
    

    Opciones

    Se puede configurar un proxy http/https y un tiempo de espera para las solicitudes mediante variables de entorno. El tiempo de espera predeterminado es de 15 segundos.

    root@kitploit:~
    $ export http_proxy=http://proxy:8089
    $ export https_proxy=https://proxy:8090
    $ export timeout=10
    $ explo ...
    

    Módulos

    Se pueden agregar módulos para mejorar la funcionalidad y las clases de problemas de seguridad.

    http (básico)

    El módulo http permite realizar una solicitud http, extraer contenido y buscar/verificar contenido.

    Los siguientes datos están disponibles para los siguientes pasos:

    • el cuerpo de la respuesta http: stepname.response.content
    • las cookies de la respuesta http: stepname.response.cookies
    • el contenido extraído: response.extracted.variable_name

    Si se establece un parámetro find_regex, se ejecuta una coincidencia de expresión regular en el cuerpo de la respuesta. Si falla, este módulo devuelve un fallo y detiene la ejecución del flujo de trabajo actual (y todos los pasos).

    Al extraer mediante expresiones regulares, use el grupo de captura extract para marcar el valor a extraer (ver abajo un ejemplo).

    Para hacer referencia a cookies, refiérase al nombre del paso anterior del cual se deben tomar las cookies (cookies: the_other_step.response.cookies).

    Ejemplos de parámetros:

    root@kitploit:~
    parameter:
        url: http://example.com
        method: GET
        allow_redirects: True
        headers:
            User-Agent: explo
            Content-Type: abc
        cookies: stepname.response.cookies
        body:
            key: value
        find: search for string
        find_regex: search for (reg|ular)expression
        find_in_headers: searchstring in headers
        expect_response_code: 200
        extract:
            variable1: [CSS, '#csrf']
            variable2: [REGEX, '<input(.*?)value="(?P<extract>.*?)"']
    

    http_header

    El módulo http_header permite comprobar si una respuesta carece de un conjunto especificado de cabeceras (y valores). Todos los demás parámetros son idénticos al módulo http.

    Los siguientes datos están disponibles para otros módulos:

    • el cuerpo de la respuesta http: stepname.response.content
    • las cookies de la respuesta http: stepname.response.cookies

    Ejemplos de parámetros:

    root@kitploit:~
    parameter:
        url: http://example.com
        method: GET
        allow_redirects: True
        headers:
            User-Agent: explo
            Content-Type: abc
        body:
            key: value
        headers_required:
            X-XSS-Protection: 1
            Server: .               # all values are valid
    

    sqli_blind

    El módulo sqli_blind es capaz de identificar inyecciones SQL ciegas basadas en tiempo.

    Los siguientes datos están disponibles para otros módulos:

    • el cuerpo de la respuesta http: stepname.response.content
    • las cookies de la respuesta http: stepname.response.cookies

    Ejemplos de parámetros:

    root@kitploit:~
    parameter:
        url: http://example.com/vulnerable.php?id=1' waitfor delay '00:00:5'--
        method: GET
        delay_seconds: 5
    

    Si se excede el umbral de 5 segundos (delay_seconds), la comprobación devuelve verdadero (y por lo tanto resulta en un éxito).

    metadata

    El bloque de metadatos es un bloque especial que se puede agregar como el primer bloque en un archivo .yaml para añadir metadatos a una vulnerabilidad para su procesamiento posterior. Esto es útil cuando explo se usa como librería y los metadatos de cada descripción de vulnerabilidad se pueden leer con meta_from_content(content). Este módulo no necesita un nombre ni una descripción.

    Ejemplos:

    root@kitploit:~
    module: metadata
    parameter:
        cvss: 8.9
        author: Robin Verton
    ---
    name: login
    description: login with test credentials
    module: http
    parameter:
        url: http://testphp.vulnweb.com/userinfo.php
        method: POST
        body:
            uname: test
            pass: test
    
    Descargar herramienta