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
cook — Un framework per wordlist per soddisfare ogni tua esigenza con le tue wordlist. Per ricercatori di sicurezza, bug bounty e hacker. | Kitploit
Strumenti/GitHubGitHub/glitchedgitz/cook
Password CrackingFuzzingPenetration TestingUtilità e Framework
GitHubglitchedgitz/cook

cook

Un framework per wordlist per soddisfare ogni tua esigenza con le tue wordlist. Per ricercatori di sicurezza, bug bounty e hacker.

Vedi Repository
1.4k1406 mesi 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
Sito web

COOK

Un generatore di wordlist, divisore, unificatore, cercatore, salvatore, creatore di permutazioni e combinazioni di parole, applicatore di diverse codifiche/decodifiche e tutto ciò di cui hai bisogno.

L'assassino della frustrazione! & Personalizzabile!

Indice

  • Installazione
    • Configurazione
  • Base
    • Intervalli
    • Approccio ai parametri
  • Gli ingredienti di COOK
    • Categorie
    • Salva wordlist/liste/caratteri tutto in my.yaml
    • Funzioni
    • Personalizza my.yaml
      ▸ Aggiungi/Aggiorna
      ▸ Elimina
    • File locale / URL fetch
  • Metodi
    • Codifiche multiple
    • Rompi le convenzioni di denominazione 💫
    • Tutti i metodi cook help methods
  • Alcuni esempi di casi d'uso
    • Unisci wordlist riga per riga
    • Stampa ad ogni passo
    • Combina con altri strumenti
  • USO ULTIMATE
    • Esempio di utilizzo reale:
  • Operatore di ripetizione * e **
  • Regole di parsing
  • Flag
  • Uso come libreria
  • Condividi le tue ricette/ingredienti in cook-ingredients
  • Contribuisci

Installazione

Usa Go o scarica le ultime build

root@kitploit:~
go install -v github.com/glitchedgitz/cook/v2/cmd/cook@latest

Configurazione

Dalla versione v2.2 cook salva cook-ingredients in $home/.config/cook/cook-ingredients

Per cambiare, crea una variabile di percorso chiamata COOK=[IL TUO PERCORSO]

Base

Senza le basi, tutto è complicato.

Intervalli

Approccio ai parametri

Dai loro qualsiasi nome e usali per generare lo schema. Questo sarà più utile quando applichi la codifica per colonna usando metodi.

root@kitploit:~
cook -start intigriti,bugcrowd  -sep _,- -end users.rar,secret.zip  / start sep end
root@kitploit:~
Nota: devi includere il parametro nello schema, altrimenti non stamperà nulla.

Gli ingredienti di COOK

Cook dipende da cook-ingredients, che sono raccolte di file .yaml contenenti set di parole, funzioni, porte, wordlist da assetnotes, seclist, fuzzdb, 15+ etc.

Categorie

Salva wordlist/liste/caratteri tutto in my.yaml

Funzioni

root@kitploit:~
cook -dob date[17,Sep,1994] elliot _,-, dob

Personalizza my.yaml

Modifica my.yaml manualmente o usa questi comandi.

▸ Aggiungi/Aggiorna

Se la keyword non esiste la creerà. Altrimenti la aggiornerà e aggiungerà il nuovo valore nella stessa variabile.

root@kitploit:~
# Sintassi
cook add [keyword]=[valore1, valore2, ..., valoreN] in [categoria]

# Comando
cook add nome_unico=parola1,parola2,parola3 in lists

▸ Elimina

root@kitploit:~
cook delete [keyword]

File locale / URL fetch

usa : dopo il nome del parametro.

root@kitploit:~
cook -f: live.txt f
root@kitploit:~
cook -f: https://example.com/wordlist.txt f

Accedi alle wordlist dai database

Cook ha scaricato multipli repository e può usare direttamente wordlist da questi repos...

assetnotes, seclist, fuzzdb, etc.

Metodi

Usando i metodi puoi codificare, decodificare, invertire, dividere, ordinare, estrarre e fare molto altro...

I metodi possono essere applicati sull'output finale o per colonna

  • -m/-method per applicare i metodi sull'output finale
  • -mc/-methodcol per applicare per colonna.
  • param.nomemetodo applica a qualsiasi parametro, spiegherò questa cosa dei parametri più avanti.

Codifiche multiple

  • Codifiche sovrapposte:
    • Usa il punto .
    • md5.b64e.urle applica più metodi uno dopo l'altro.
    • Logica di output:
      • Pattern generato > hashing md5 > codifica base 64 > codifica URL.
  • Codifiche diverse:
    • Usa la virgola ,
    • md5,sha1,sha256 applica diverse codifiche allo stesso pattern generato.
    • Logica di output:
      • Pattern generato > hashing md5
      • Pattern generato > hashing sha1
      • Pattern generato >

Rompi le convenzioni di denominazione 💫

Attenzione speciale a questi 2 metodi, saranno di grande aiuto ogni volta che usi qualsiasi wordlist.

Smart Break (Separazione intelligente) -m smart

root@kitploit:~
▶ cook adminNew,admin_new -m smart
root@kitploit:~
Output:

admin
New
admin
new

Smart Join (Unione intelligente) -m smartjoin[<caso>:<carattere>]

Separa e riunisce con il carattere fornito.

root@kitploit:~
▶ cook adminNew,admin-old -m smartjoin[:_]
root@kitploit:~
Output:

admin_New
admin_old

Applica maiuscole/minuscole sulla separazione

Qui abbiamo applicato il camelCase

root@kitploit:~
▶ cook suppose_this_is_long_text -m smartjoin[c:_]
root@kitploit:~
Output:

suppose_This_Is_Long_Text

Tutti i metodi cook help methods

root@kitploit:~
sort                           - Ordinali
sortu                          - Ordinali con solo valori unici
reverse                        - Inverti stringa
leet                           - a->4, b->8, e->3 ...
                                    leet[0] o leet[1]

smart                          - Separa parole in base alle convenzioni di denominazione
                                    redirectUri, redirect_uri, redirect-uri  ->  [redirect, uri]
smartjoin                      - Divide le parole dalle convenzioni di denominazione &
                                    param.smartjoin[c,_] (caso, unione)
                                    redirect-uri, redirectUri, redirect_uri ->  redirect_Uri

u          upper               - Maiuscolo
l          lower               - Minuscolo
t          title               - Con iniziale maiuscola

Operazioni su stringhe

root@kitploit:~
split                          - split[carattere]
splitindex                     - splitindex[carattere:indice]
replace                        - Sostituisci tutto replace[questo:conquesto]

JSON

root@kitploit:~
json                           - Estrai campo JSON
                                    json[chiave] o json[chiave:sottochiave:sotto-sottochiave]

Operazioni su URL

root@kitploit:~
fb         filebase            - Estrai nome file da percorso o URL
s          scheme              - Estrai http, https, gohper, ws, etc. dall'URL
           user                - Estrai nome utente dall'URL
           pass                - Estrai password dall'URL
h          host                - Estrai host dall'URL
p          port                - Estrai porta dall'URL
ph         path                - Estrai percorso dall'URL
f          fragment            - Estrai frammento dall'URL
q          query               - Estrai tutta la query dall'URL
k          keys                - Estrai chiavi dall'URL
v          values              - Estrai valori dall'URL
d          domain              - Estrai dominio dall'URL
           tld                 - Estrai TLD dall'URL
           alldir              - Estrai tutte le directory dal percorso dell'URL
sub        subdomain           - Estrai sottodominio dall'URL
           allsubs             - Estrai sottodominio dall'URL

Codifica/Decodifica

root@kitploit:~
b64e       b64encode           - Codifica Base64
b64d       b64decode           - Decodifica Base64

           charcode            - Fornisce codifica charcode
                                    - charcode[0]
                                        &#97&#98&#99
                                    - charcode[1] con punto e virgola
                                        &#97;&#98;&#99;

hexe       hexencode           - Codifica esadecimale stringa
hexd       hexdecode           - Decodifica esadecimale stringa

jsone      jsonescape          - Escape JSON
jsonu      jsonunescape        - Unescape JSON

urle       urlencode           - Codifica URL caratteri riservati
            utf16                - Codificatore UTF-16 (Little Endian)
            utf16be              - Codificatore UTF-16 (Big Endian)
urld       urldecode           - Decodifica URL
urleall    urlencodeall        - Codifica URL tutti i caratteri

xmle       xmlescape           - Escape XML
xmlu       xmlunescape         - Unescape XML

unicodee   unicodeencodeall    - Codifica escape Unicode stringa (tutti i caratteri)
unicoded   unicodedecode       - Decodifica escape Unicode stringa

HASH

root@kitploit:~
md5                            - Somma MD5
sha1                           - Checksum SHA1
sha224                         - Checksum SHA224
sha256                         - Checksum SHA256
sha384                         - Checksum SHA384
sha512                         - Checksum SHA512

Alcuni esempi di casi d'uso

Alcuni casi d'uso generali per comprendere cook.

▸ Siti con suffisso/prefisso personalizzato?

▸ Unisci wordlist riga per riga

Usa il flag -append:

root@kitploit:~
cook -l: live.txt -p: payloads.txt l / p -append 2
root@kitploit:~
# Colonne multiple
cook col1 col2 col3 col4 col5 -append 2,5

Nota: A volte è confusionario trovare l'indice della colonna, in tal caso usa -col

▸ Stampa ad ogni passo

Se vuoi iniziare a stampare i dati per ogni permutazione, usa il flag -min

Nota: A volte è confusionario trovare l'indice della colonna, in tal caso usa -col

Combina con altri strumenti

Genera pattern e combina con altri strumenti usando PIPE.

root@kitploit:~
cook [Pattern generato] | [Qualsiasi strumento con input pipe]

▸ Fuzzing di autenticazione base con FFUF

root@kitploit:~
cook lista_utenti : lista_password -m b64e | ffuf -u https://target.com -w - -H "Authorization: Basic FUZZ"

▸ Fuzzing con payload nullo con FFUF

root@kitploit:~
cook https://target.com/**100 | ffuf -u FUZZ -w -

▸ Parametri nascosti con x8

root@kitploit:~
cook [output generato] | x8 -u https://target.com

▸ Domini di primo livello live con dnsx o httprobe

root@kitploit:~
cook example.com seclists-tlds.txt  | dnsx -v

USO ULTIMATE

Troppo potente? Ma ogni giorno ti imbatti in cose strane di BB, come un grande file JSON dal target? Forse vuoi estrarre, unire, fondere o qualsiasi altra cosa. Puoi usare cook in modo intelligente secondo il tuo caso d'uso.

Esempio di utilizzo reale:

Come BBH, ci imbattiamo spesso in file JSON. Forse leggi un wordlist da salvare nella tua collezione.

Diciamo che leggi questo blog sulle vulnerabilità IIS Shortname https://blog.assetnote.io/2020/09/18/finding-hidden-files-folders-iis-bigquery/.

Qui Assetnote ha condiviso BIG ZIP FILE, ora hai bisogno di qualcosa che possa salvare questo file e richiamarlo quando necessario.

Salvalo così..., questo salverà il file in my.yaml

root@kitploit:~
cook add shub_zip_files=[URL] in files

O salva manualmente in my.yaml,

root@kitploit:~
shub_zip_files: [https://storage.googleapis.com/zipfilesbq/zipfiles.json]

Nota: cook lo ha già salvato nelle wordlist predefinite, puoi usare cook shub_zip_files per accedervi

▸ Il file contiene dati come questi, ma non sono direttamente utili.

root@kitploit:~
{"repo_name":"cocowool/RoseCMS","ref":"refs/heads/1","path":"user_guide/_downloads/ELDocs.tmbundle.zip","mode":"33261","id":"f7a11b364ca918379b48ad525798148e7470b6b1"}
{"repo_name":"xuguanfeng/practise","ref":"refs/heads/1","path":"node_modules/selenium-webdriver/node_modules/adm-zip/test/assets/fast.zip","mode":"33188","id":"f4ed17b98c9d7bcd21efc4523ce75fbe2b071d0a"}
{"repo_name":"xuguanfeng/practise","ref":"refs/heads/1","path":"node_modules/selenium-webdriver/node_modules/adm-zip/test/assets/store.zip","mode":"33188","id":"e2add30dc0e3129dc89e20a71abe7314052d0002"}
{"repo_name":"xuguanfeng/practise","ref":"refs/heads/1","path":"node_modules/selenium-webdriver/node_modules/adm-zip/test/assets/ultra.zip","mode":"33188","id":"86a8ec776107c075ce2c7f803472aa97dc25cbf7"}
{"repo_name":"xuguanfeng/practise","ref":"refs/heads/1","path":"node_modules/selenium-webdriver/node_modules/adm-zip/test/assets/normal.zip","mode":"33188","id":"b4602c94ee000ee54c71c9302b9db956b3fd9f0e"}
{"repo_name":"xuguanfeng/practise","ref":"refs/heads/1","path":"node_modules/selenium-webdriver/node_modules/adm-zip/test/assets/fastest.zip","mode":"33188","id":"f4ed17b98c9d7bcd21efc4523ce75fbe2b071d0a"}
{"repo_name":"xuguanfeng/practise","ref":"refs/heads/1","path":"node_modules/selenium-webdriver/node_modules/adm-zip/test/assets/maximum.zip","mode":"33188","id":"86a8ec776107c075ce2c7f803472aa97dc25cbf7"}
...

Supponiamo che tu abbia bisogno di:
▸ Estrarre il campo JSON path
▸ Estrarre filebase da path
▸ Poi dividerlo in base alle convenzioni di denominazione

Soluzione in una riga

▸ Con cook non solo possiamo estrarlo, possiamo estrarre filebase dal percorso e ordinare unico, poi usare smartjoin per creare diverse permutazioni.

root@kitploit:~
cook -z shub_zip_files z.json[path].fb.sortu.smartjoin[c:_]

E questo è anche come è nato cook, mentre facevo fuzzing di IIS Shortnames e successivamente ho aggiunto altre funzionalità.

Operatore di ripetizione * e **

  • Usa * per la ripetizione orizzontale.
  • Usa ** per la ripetizione verticale.
  • E prova questo *10-1 o questo *1-10.

Regole di parsing

Flag

Uso come libreria

Puoi usare Cook come libreria nei tuoi progetti Go.

Uso base

root@kitploit:~
package main

import (
	"fmt"
	"github.com/glitchedgitz/cook/v2/pkg/cook"
)

func main() {
	// Crea una nuova istanza di cook
	cookInst := cook.New(&cook.COOK{
		Pattern:     []string{"a,b,c", "1,2,3"},
		PrintResult: false, // Non stampare su stdout
	})

	// Genera il pattern
	cookInst.Generate()

	fmt.Println("Pattern generati:", cookInst.Final)
}

Generazione efficiente multi-pattern (v2.X.X e successive)

Per generare più pattern senza reinizializzare le risorse ogni volta:

root@kitploit:~
package main

import (
	"fmt"
	"github.com/glitchedgitz/cook/v2/pkg/cook"
)

func main() {
	// Crea un generatore che inizializza le risorse condivise una volta
	generator := cook.NewGenerator()

	// Genera più pattern efficientemente
	list1 := generator.Generate([]string{"a,b,c", "1,2,3"})
	list2 := generator.Generate([]string{"admin", "password-2023"})

	fmt.Println("Pattern 1:", list1)
	fmt.Println("Pattern 2:", list2)
}

Generazione concorrente di pattern

Il generatore supporta anche la generazione concorrente di pattern:

root@kitploit:~
package main

import (
	"fmt"
	"sync"
	"github.com/glitchedgitz/cook/v2/pkg/cook"
)

func main() {
	generator := cook.NewGenerator()
	patterns := [][]string{
		{"user-1-5", "pass-1-3"},
		{"admin", "Admin-2023-2025"},
	}

	var wg sync.WaitGroup
	results := make([][]string, len(patterns))

	// Genera pattern in concorrenza
	for i, pattern := range patterns {
		wg.Add(1)
		go func(idx int, p []string) {
			defer wg.Done()
			results[idx] = generator.Generate(p)
		}(i, pattern)
	}

	wg.Wait()

	// Usa i risultati
	for i, r := range results {
		fmt.Printf("Pattern %d ha generato %d risultati\n", i, len(r))
	}
}

Esempio di ricerca

Cerca cook-ingredients usando la libreria:

root@kitploit:~
package main

import (
	"fmt"
	"github.com/glitchedgitz/cook/v2/pkg/cook"
)

func main() {
	cookInst := cook.NewWithoutConfig()
	results := cookInst.Search("api")
	fmt.Printf("Pattern API cercati: %v\n", results)
}

Condividi le tue ricette e ingredienti in cook-ingredients

  • Condividi il tuo file yaml con la community

Contribuisci

  • Usa concorrenza e rendilo più veloce
  • Completamento automatico per shell
  • Fai funzionare append in modo simile a cook file1 =/= file2, assicurati che i caratteri funzionino direttamente con tutti i terminali.
  • Fai funzionare la stringa raw come funziona nei linguaggi di programmazione. Significa un parser migliore.
  • Non lo so, potresti usare la tua creatività e aggiungere alcune funzionalità fantastiche.
  • Puoi offrirmi un caffè☕
Scarica lo strumento
CategoriaDescrizione
listsArray di valori da usare direttamente quando richiamati
filesArray di url
portsIntervalli di numeri
raw-filesArray di file locali
functionsFunzioni usate per generare pattern
hashing sha256
ColonneSeparate da spazio
ValoriSeparati da virgola
ParametriPuoi dare qualsiasi nome al parametro, usa - prima di qualsiasi cosa per renderlo un parametro -param valore
Stringhe rawUsa ` prima e dopo la stringa per impedire il parsing di cook. Utile quando hai bisogno di usare una parola chiave come parola.
Input pipePrende input pipe usando - come valore di qualsiasi parametro.
Input fileUsa : dopo il nome del parametro per prendere input da file. cook -f: live.txt f
FunzioniPossono essere chiamate solo tramite parametri.
MetodiPossono essere usati sui parametri o sull'output finale
FlagUtilizzo
-peekAnteprima dell'output usando -peek 50 per le prime 50 righe
-a, -appendAggiungi alle righe precedenti, invece di permutazioni
-c, -colStampa i numeri di colonna e i loro valori
-conf, -configInformazioni di configurazione
-mc, -methodcolApplica metodi per colonna -mc 0:md5,b64e; 1:reverse
Per tutte le colonne separa -mc md5,b64e
-m, -methodApplica metodi all'output finale
-h, -helpAiuto
-minNumero minimo di colonne da stampare