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
goWAPT — Test di penetrazione di applicazioni web in Go | Kitploit
Strumenti/GitHubGitHub/dzonerzy/gowapt
Scanner di Vulnerabilità WebAnalisi delle VulnerabilitàScripting e AutomazioneSfruttamento di Applicazioni WebSicurezza WebFuzzingPenetration Testing
GitHubdzonerzy/gowapt

goWAPT

Test di penetrazione di applicazioni web in Go

Vedi Repository
347591 anno 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

GOWAPT - Test di Penetrazione di Applicazioni Web in Go

GOWAPT è il fratello minore di wfuzz, un coltellino svizzero dei WAPT, permette ai penetration tester di svolgere attività massive senza alcuno stress, basta configurarlo ed è questione di click.

Come installare

Per installare gowapt basta digitare:

root@kitploit:~
make
sudo make install

Utilizzo

Dal menu -h

root@kitploit:~
Usage of gowapt:
  -H value
    	A list of additional headers
  -a string
    	Basic authentication (user:password)
  -c string
    	A list of cookies
  -d string
    	POST data for request
  -e string
    	A list of comma separated encoders (default "plain")
  -f string
    	Filter the results
  -from-proxy
    	Get the request via a proxy server
  -fuzz
    	Use the built-in fuzzer
  -p string
    	Use upstream proxy
  -plugin-dir string
    	Directory containing all scanning module
  -scanner
    	Run in scanning mode
  -ssl
    	Use SSL
  -t string
    	Template for request
  -threads int
    	Number of threads (default 10)
  -u string
    	URL to fuzz
  -w string
    	Wordlist file
  -x string
    	Extension file example.js

Esempi

Scansiona http://www.example.com e filtra tutte le richieste 200 OK

root@kitploit:~
gowapt -u "http://www.example.com/FUZZ" -w wordlist/general/common.txt -f "code == 200"

Scansiona http://www.example.com fuzzando il parametro GET vuln cercando XSS (presuppone 200 tag con una richiesta legittima)

root@kitploit:~
gowapt -u "http://www.example.com/?vuln=FUZZ" -w wordlist/Injections/XSS.txt -f "tags > 200"

Scansiona http://www.example.com fuzzando il parametro POST vuln cercando XSS (presuppone 200 tag con una richiesta legittima)

root@kitploit:~
gowapt -u "http://www.example.com/" -d "vuln=FUZZ" -w wordlist/Injections/XSS.txt -f "tags > 200"

Scansiona http://www.example.com protetta da autenticazione e filtra tutte le richieste 200 OK

root@kitploit:~
gowapt -u "http://www.example.com/FUZZ" -w wordlist/general/common.txt -f "code == 200" -a "user:password"

Scansiona http://www.example.com aggiungendo l'header Hello: world e filtra tutte le richieste 200 OK

root@kitploit:~
gowapt -u "http://www.example.com/FUZZ" -w wordlist/general/common.txt -f "code == 200" -H "Hello: world"

Scansiona http://www.example.com usando l'autenticazione base con utente/password guest:guest

root@kitploit:~
gowapt -u "http://www.example.com/FUZZ" -w wordlist/general/common.txt -a "guest:guest"

Scansiona http://www.example.com aggiungendo un'estensione

root@kitploit:~
gowapt -u "http://www.example.com/FUZZ" -w wordlist/general/common.txt -x myextension.js

Scansiona http://www.example.com attraverso un proxy (come Burp):

root@kitploit:~
gowapt -p "http://localhost:8080" -u "http://www.example.com/FUZZ" -w wordlist/general/common.txt

Scansiona http://www.example.com (ricevuta dal proxy) e filtra tutte le richieste 200 OK

root@kitploit:~
gowapt --from-proxy -w wordlist/general/common.txt

Esegui la modalità scanner su http://www.example.com (ricevuta dal proxy) con i plugin predefiniti

root@kitploit:~
gowapt --from-proxy --scanner --plugin-dir plugin/

Poi apri BurpSuite, invia la richiesta che vuoi fuzzare al repeater e imposta un proxy upstream verso 127.0.0.1:31337 quando sei pronto clicca su invia, se tutto è corretto dovresti vedere come risposta Request received by GOWAPT

Estensione

Le estensioni sono un modo semplice per estendere le funzionalità di gowapt, una macchina virtuale JavaScript è responsabile del caricamento e dell'esecuzione dei file di estensione.

API JS

Di seguito l'elenco delle API attualmente implementate

* PS: Quando si utilizza setHTTPInterceptor, il metodo di callback riceve 3 parametri:

  • Un oggetto richiesta/risposta
  • Un oggetto risultato
  • Un oggetto flag che indica se il primo oggetto è una richiesta o una risposta

A causa della natura di sendRequestSync, rallenterà il motore a causa della richiesta sincrona, quindi usalo con moderazione

Maggiori informazioni nell'esempio di estensione qui sotto:

example.js

root@kitploit:~
/*
* Create a custom encoder called helloworld
*
* This encore just add the string "_helloworld" to every payload
* coming from the wordlist
*/
addCustomEncoder("helloworld", myenc);
/*
* Define the callback method for the helloworld encoder
*/
function myenc(data) {
	return data + "_helloword";
}
/*
* Create an HTTP interceptor
*
* The interceptor will hook every request / response
* is possible to modify request before send it, anyway the respose item
* it's just shadow copy of the one received from the server so no modification
* are possible
*
*
* request_response is an object which may contains both http.Request
* or http.Response , to know which on is contained check is_request flag
*
* REMEMBER! request_response is an http.* object so you must interact with
* this one just like you would do in golang!
*
* dumpResponse is a built-in function which dump full request-response to
* disk.
* result is an object filled with stats about the response it contains some fields
*
* result.tags => Number of tags in the response
* result.code => HTTP Response status
* result.words => Number of words in the response
* result.lines => Number of lines in the response
* result.chars => Number of chars in the response
* result.request => Full dump of the request
* result.response => Full dump of the response
* result.response => The injected payload
*
*/
setHTTPInterceptor(function(request_response, result, is_request){
	if(is_request){
		request_response.Header.Set("Hello", "world")
	}else{
		dumpResponse(request_response, "/tmp/dump.txt")
		/*
		* Send an HTTP request in a synchronous way
		*
		* This API accept 4 parameters:
		* method => GET | POST | HEAD | PUT | PATCH | UPDATE
		* url => The url of the HTTP service
		* post_data => The content of request bodyBytes
		* headers => A javascript dictionary {headerName => headerValue}
		*
		* The response object may be null or undefined or an http.Response from golang
		*/
		var response = sendRequestSync("GET", "http://example.com/", null, {"Fake": "Header"})
	}
})

Scanner

Una nuova modalità chiamata Scanner è stata introdotta con l'ultimo commit, permette all'utente di creare plugin completamente personalizzabili per eseguire scansioni web attive. Per maggiori informazioni leggi la Wiki!.

Wordlist

Le wordlist provengono dal progetto wfuzz! quindi grazie mille ragazzi!

Look&Feel

asciicast

Encoder

Di seguito l'elenco degli encoder disponibili

  • url (Codifica URL)
  • urlurl (Doppia codifica URL)
  • html (Codifica HTML)
  • htmlhex (Codifica HTML esadecimale)
  • unicode (Codifica Unicode)
  • hex (Codifica esadecimale)
  • md5hash (Hash MD5)
  • sha1hash (Hash SHA1)
  • sha2hash (Hash SHA2)
  • b64 (Codifica Base64)
  • b32 (Codifica Base32)
  • plain (Nessuna codifica)

Filtri

Puoi applicare filtri sulle seguenti variabili

  • tags (Numero di tag)
  • lines (Numero di righe del corpo della risposta)
  • words (Numero di parole del corpo della risposta)
  • length (Dimensione del corpo della risposta)
  • code (Codice di stato HTTP)
  • chars (Numero di caratteri del corpo della risposta)

Licenza

gowapt è rilasciato sotto licenza GPL 3.0 ed è copyleft di Daniele 'dzonerzy' Linguaglossa

Scarica lo strumento
MetodoNumero di parametriDescrizioneParametri
addCustomEncoder2Crea un encoder personalizzato da usare con le wordlistParam1 -> EncoderName (string)
Param2 -> EncoderLogic (function)
panic1Per scopi di debugging, crasha l'applicazioneParam1 -> PanicText (string)
dumpResponse2Scarica una richiesta/risposta completa su disco, utile per salvare casi di testParam1 -> ResponseObject (http.Response)
Param2 -> Path (string)
setHTTPInterceptor1Crea un interceptor per richieste HTTP in uscita e risposte in entrataParam1 -> HTTPCallback (function) *
sendRequestSync *4Invia una richiesta HTTP in modo sincronoParam1 -> Method (string)
Param2 -> Url (string)
Param3 -> PostData (string)
Param4 -> Headers (Object{Name:Value})