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
Strumenti/GitHubGitHub/michelin/chopchop
Scanner di VulnerabilitàAudit di ConfigurazioneRaccolta InformazioniSicurezza WebDevSecOps
GitHubmichelin/chopchop

ChopChop

Scanner CLI basato su YAML che rileva servizi, file e cartelle esposti su endpoint web. Progettato per sviluppatori per integrare controlli di sicurezza nelle pipeline CI/CD con firme personalizzabili.

Vedi Repository
7127775 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

Build Status License Go Report Card

ChopChop

ChopChop è uno strumento a riga di comando per il test dinamico della sicurezza delle applicazioni web, inizialmente scritto dal Michelin CERT.

Il suo obiettivo è scansionare diversi endpoint e identificare l'esposizione di servizi/file/cartelle attraverso la webroot. I controlli/firme sono dichiarati in un file di configurazione (di default: chopchop.yml), completamente configurabile, e specialmente da parte degli sviluppatori.

"Chop chop" è una frase che deriva dal cantonese. "Chop chop" significa "sbrigati" e suggerisce che qualcosa dovrebbe essere fatto ora e senza indugio.


Indice

  • Building
  • Usage
    • Available flags
    • Advanced usage
  • Creating a new check/signature
  • External Libraries
  • Talks
  • Licence
  • Authors

Costruzione

Abbiamo cercato di rendere il processo di compilazione indolore e, si spera, dovrebbe essere semplice come:

root@kitploit:~
$ go mod download
$ go build .

Dovrebbe risultare un binario gochopchop nella cartella.

Usare Docker

Grazie a Github Container Registry, siamo in grado di fornirti alcune immagini Docker appena compilate!

root@kitploit:~
docker run ghcr.io/michelin/gochopchop scan https://foobar.com -v debug

Ma se preferisci, puoi anche compilarlo localmente, vedi sotto:

Compila localmente

root@kitploit:~
docker build -t gochopchop .

Utilizzo

Stiamo cercando continuamente di rendere goChopChop il più semplice possibile. Scansionare un host con questo strumento è semplice come:

root@kitploit:~
$ ./gochopchop scan https://foobar.com

Usare Docker

root@kitploit:~
docker run gochopchop scan https://foobar.com

File di configurazione personalizzato

root@kitploit:~
docker run -v ./:/app chopchop scan -c /app/chopchop.yml https://foobar.com

Cosa c'è dopo

La riscrittura in Golang è avvenuta un paio di mesi fa, ma c'è ancora molto da fare. Ecco alcune funzionalità che stiamo pianificando di integrare: [x] Threading per migliori prestazioni [x] Possibilità di specificare il numero di thread concorrenti [x] Colori e migliore formattazione [x] Possibilità di filtrare i controlli/firme da cercare [x] Mock e test unitari [x] Github CI E molto altro!

Test

Per testare rapidamente chopchop end-to-end, abbiamo fornito un web-server in tests/server.go. Per provarlo, esegui go run tests/server.go e poi esegui chopchop con il seguente comando ./gochopchop scan http://localhost:8000 --verbosity Debug. ChopChop dovrebbe stampare "nessuna vulnerabilità trovata".

Ci sono anche test unitari che puoi lanciare con go test -v ./.... Questi test sono integrati nel workflow CI di Github.

Flag disponibili

Puoi trovare i flag disponibili per il comando scan:

FlagFlag completoDescrizione
-h--helpGuida di aiuto
-v--verbosityLivello di dettaglio del logging
-c--signaturePercorso del file di firma personalizzato
-k--insecureDisabilita la verifica SSL
-u--url-filePercorso di un file specificato contenente gli URL da testare
-b--max-severityBlocca la pipeline CI se la gravità è superiore o uguale al flag specificato
-e--exportTipo di esportazione dell'output (csv e/o json)
--export-filenameSpecifica il nome del file per i file di esportazione
-t--timeoutTimeout per le richieste HTTP
--severity-filterFiltra i plugin per gravità
--plugin-filterFiltra i plugin per nome del plugin
--threadsNumero di thread concorrenti

Utilizzo avanzato

Ecco un elenco di utilizzi avanzati che potrebbero interessarti. Nota: I reindirizzamenti come > per il post-processing possono essere utilizzati.

  • Possibilità di scansionare e disabilitare la verifica SSL
root@kitploit:~
$ ./gochopchop scan https://foobar.com --insecure
  • Possibilità di scansionare con un file di configurazione personalizzato (inclusi plugin personalizzati)
root@kitploit:~
$ ./gochopchop scan https://foobar.com --insecure --signature test_config.yml
  • Possibilità di elencare tutti i plugin o per gravità: plugins o plugins --severity High
root@kitploit:~
$ ./gochopchop plugins --severity High
  • Possibilità di specificare il numero di thread concorrenti: --threads 4 per 4 worker
root@kitploit:~
$ ./gochopchop plugins --threads 4
  • Possibilità di bloccare la pipeline CI per livello di gravità (uguale o superiore alla gravità specificata): --max-severity Medium
root@kitploit:~
$ ./gochopchop scan https://foobar.com --max-severity Medium
  • Possibilità di specificare firme specifiche da controllare
root@kitploit:~
./gochopchop scan https://foobar.com --timeout 1 --verbosity --export=csv,json --export-filename boo --plugin-filters=Git,Zimbra,Jenkins
  • Possibilità di elencare tutti i plugin
root@kitploit:~
$ ./gochopchop plugins
  • Elenca i plugin ad alta gravità
root@kitploit:~
$ ./gochopchop plugins --severity High
  • Imposta un elenco di URL situati in un file
root@kitploit:~
$ ./gochopchop scan --url-file url_file.txt
  • Esporta i risultati di GoChopChop in formato CSV e JSON
root@kitploit:~
$ ./gochopchop scan https://foobar.com --export=csv,json --export-filename results

Creare un nuovo controllo

Scrivere un nuovo controllo è semplice come:

root@kitploit:~
  - endpoint: "/.git/config"
    checks:
      - name: Git exposed
        match:
          - "[branch"
        remediation: Do not deploy .git folder on production servers
        description: Verifies that the GIT repository is accessible from the site
        severity: "High"

Un endpoint (es. /.git/config) è mappato a più controlli, evitando di inviare X richieste per X controlli. È possibile eseguire più controlli con una singola richiesta HTTP. Ogni controllo necessita di questi campi:

AttributoTipoDescrizioneOpzionale?Esempio
namestringNome del controlloNoGit exposed
descriptionstringUna breve descrizione del controlloNoEnsure .git repository is not accessible from the webroot
remediationstringFornisce una remediation per questo specifico "problema"NoDo not deploy .git folder on production servers
severityEnum("High", "Medium", "Low", "Informational")Valuta la criticità se si attiva nel tuo ambienteNoHigh
status_codeintegerIl codice di stato HTTP che dovrebbe essere restituitoSì200
headersLista di stringheElenco di intestazioni che dovrebbero essere nella risposta HTTPSìN/A
no_headersLista di stringheElenco di intestazioni che NON dovrebbero essere nella risposta HTTPSìN/A
matchLista di stringheElenca le stringhe che dovrebbero essere nella risposta HTTPSì"[branch"
no_matchLista di stringheElenca le stringhe che NON dovrebbero essere nella risposta HTTPSìN/A
query_stringParametri GET da passare all'endpointStringaSìquery_string: "id=FOO-chopchoptest"

Librerie esterne

Nome libreriaLinkLicenza
Viperhttps://github.com/spf13/viperMIT License
Go-prettyhttps://github.com/jedib0t/go-prettyMIT License
Cobrahttps://github.com/spf13/cobraApache License 2.0
strfmthttps://github.com/go-openapi/strfmtApache License 2.0
Go-homedirhttps://github.com/mitchellh/go-homedirMIT License
pkg-errorshttps://github.com/pkg/errorsBSD 2 (Simplified License)
Go-runewidthhttps://github.com/mattn/go-runewidthMIT License

Fai riferimento al file third-party.txt per ulteriori informazioni.

Talks

  • PyCon FR 2019 (Lo strumento è stato inizialmente sviluppato in Python) - https://docs.google.com/presentation/d/1uVXGUpt7tC7zQ1HWegoBbEg2LHamABIqfDfiD9MWsD8/edit
  • DEFCON AppSec Village 2020 "Turning offsec mindset to developer's toolset" - https://drive.google.com/file/d/15P8eSarIohwCVW-tR3FN78KJPGbpAtR1/view

Licenza

ChopChop è stato rilasciato sotto licenza Apache License 2.0. Fai riferimento al file LICENSE per ulteriori informazioni.

Autori

  • Paul A.
  • David R. (Per la versione Python)
  • Stanislas M. (Per la versione Golang)
Scarica lo strumento