Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
explo — Formato di test delle vulnerabilità web leggibile da umani e macchine | Kitploit
Strumenti/GitHubGitHub/telekom-security/explo
Analisi delle VulnerabilitàScripting e AutomazioneSfruttamento di Applicazioni WebSicurezza WebPenetration TestingArchived
GitHubtelekom-security/explo

explo

Formato di test delle vulnerabilità web leggibile da umani e macchine

Vedi Repository
19549103 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

explo

schermata

explo è un semplice strumento per descrivere problemi di sicurezza web in un formato leggibile da umani e macchine. Definendo un flusso di richieste/condizioni, explo è in grado di sfruttare vulnerabilità di sicurezza senza la necessità di scrivere uno script. Ciò consente di condividere vulnerabilità complesse in un formato semplice, leggibile ed eseguibile.

Esempio per estrarre un token csrf e usarlo in un form:

root@kitploit:~
name: get_csrf
description: estrai token csrf
module: http
parameter:
    url: http://example.com/contact
    method: GET
    header:
        user-agent: Mozilla/5.0
    extract:
        csrf: [CSS, "#csrf"]
---
name: exploit
description: sfrutta la vulnerabilità SQL injection con token csrf valido
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

Indice

  • Installazione
  • Utilizzo
  • Moduli
Scarica lo strumento
HTTP (Base)
  • HTTP (Header)
  • SQLI (Blind)
  • Metadati
  • In questo file di definizione di esempio, la vulnerabilità viene testata eseguendo due passaggi che vengono eseguiti dall'alto verso il basso. L'ultimo passaggio restituisce un successo o un fallimento, a seconda che venga trovata la stringa 'You have an error in your SQL syntax'.

    Installazione

    Installazione tramite PyPI

    root@kitploit:~
    pip install explo
    

    Installazione dal sorgente

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

    Utilizzo

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

    Nella cartella examples/ sono presenti alcuni casi di test di esempio.

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

    Puoi anche includere explo come libreria 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)
    

    Opzioni

    Un proxy http/https e un timeout per le richieste possono essere impostati tramite variabili d'ambiente. Il timeout predefinito è di 15 secondi.

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

    Moduli

    I moduli possono essere aggiunti per migliorare la funzionalità e le classi di problemi di sicurezza.

    http (base)

    Il modulo http consente di effettuare una richiesta http, estrarre contenuti e cercare/verificare contenuti.

    I seguenti dati sono resi disponibili per i passaggi successivi:

    • il corpo della risposta http: stepname.response.content
    • i cookie della risposta http: stepname.response.cookies
    • i contenuti estratti: response.extracted.variable_name

    Se viene impostato un parametro find_regex, viene eseguita una corrispondenza tramite espressione regolare sul corpo della risposta. Se ciò fallisce, il modulo restituisce un fallimento e interrompe l'esecuzione del flusso di lavoro corrente (e di tutti i passaggi).

    Quando si estrae tramite espressioni regolari, utilizzare il gruppo di cattura extract per contrassegnare il valore da estrarre (vedi esempio sotto).

    Per fare riferimento ai cookie, fare riferimento al nome del passaggio precedente da cui devono essere presi i cookie (cookies: the_other_step.response.cookies).

    Esempi di parametri:

    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: cerca questa stringa
        find_regex: search for (reg|ular)expression
        find_in_headers: stringadicerca negli header
        expect_response_code: 200
        extract:
            variable1: [CSS, '#csrf']
            variable2: [REGEX, '<input(.*?)value="(?P<extract>.*?)"']
    

    http_header

    Il modulo http_header consente di verificare se una risposta manca di un insieme specificato di header (e valori). Tutti gli altri parametri sono identici al modulo http.

    I seguenti dati sono resi disponibili per altri moduli:

    • il corpo della risposta http: stepname.response.content
    • i cookie della risposta http: stepname.response.cookies

    Esempi di parametri:

    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: .               # tutti i valori sono validi
    

    sqli_blind

    Il modulo sqli_blind è in grado di identificare SQL injection blind basate sul tempo.

    I seguenti dati sono resi disponibili per altri moduli:

    • il corpo della risposta http: stepname.response.content
    • i cookie della risposta http: stepname.response.cookies

    Esempi di parametri:

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

    Se la soglia di 5 secondi (delay_seconds) viene superata, il controllo restituisce true (e quindi un successo).

    metadati

    Il blocco metadati è un blocco speciale che può essere aggiunto come primo blocco in un file .yaml per aggiungere metadati a una vulnerabilità per elaborazioni successive. Ciò diventa utile quando explo viene utilizzato come libreria e i metadati per ogni descrizione di vulnerabilità possono essere letti con meta_from_content(content). Questo modulo non necessita di un nome o di una descrizione.

    Esempi:

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