
TInjA è uno strumento CLI per testare le pagine web per vulnerabilità di injection nei template e supporta 44 dei motori di template più rilevanti per otto diversi linguaggi di programmazione.
TInjA è uno strumento CLI per testare le pagine web per vulnerabilità di iniezione di template.
Supporta 44 dei motori di template più rilevanti (a partire da settembre 2023) per otto diversi linguaggi di programmazione.
TInjA è stato sviluppato da Hackmanit e Maximilian Hildebrand.
I binari precompilati di TInjA sono forniti nella pagina delle release.
Requisiti: go1.21 o superiore
go install -v github.com/Hackmanit/TInjA@latest
tinja url -u "http://example.com/"tinja url -u "http://example.com/" -u "http://example.com/path2"tinja url -u "file:/path/to/file"tinja raw -R "/path/to/file"tinja jsonl -j "/path/to/file"
{
"request":{
"method":"POST",
"endpoint":"http://example.com/path",
"body":"name=Kirlia",
"headers":{
"Content-Type":"application/x-www-form-urlencoded"
}
}
--header/-H specifica le intestazioni da aggiungere alla richiesta.
tinja url -u "http://example.com/" -H "Authentication: Bearer ey..."--cookie/-c specifica i cookie da aggiungere alla richiesta.
tinja url -u "http://example.com/" -c "PHPSESSID=ABC123..."--data/-d specifica il corpo POST da aggiungere alla richiesta.
tinja url -u "http://example.com/" -d "username=Kirlia&password=nonindovinabile"--csti abilita la scansione per CSTI.
tinja url -u "http://example.com/" --cstiPer impostazione predefinita TInjA esegue la scansione solo per SSTI. Per la scansione CSTI viene utilizzato un browser headless, il che può aumentare l'uso di RAM e CPU.
--reportpath abilita la generazione di un report in formato JSONL. Il report verrà aggiornato dopo ogni URL scansionato e verrà archiviato nel percorso fornito.
tinja url -u "http://example.com/" --reportpath "/home/user/Documents"--proxyurl specifica l'URL e la porta di un proxy da utilizzare per la scansione.
tinja url -u "http://example.com/" --proxyurl "http://127.0.0.1:8080"--proxycertpath specifica il certificato CA del proxy in formato PEM (necessario quando si scansionano URL HTTPS).
tinja url -u "http://example.com/" --proxyurl "http://127.0.0.1:8080" --proxycertpath "/home/user/Documents/cacert.pem"Per scansionare URL HTTPS utilizzando un proxy è necessario un certificato CA del proxy in formato PEM. I certificati CA di Burp Suite sono forniti in formato DER, ad esempio. Per convertirli, è possibile utilizzare il seguente comando:
openssl x509 -inform DER -outform PEM -text -in cacert.der -out cacert.pem
--ratelimit/-r specifica il numero massimo di richieste al secondo consentite. Per impostazione predefinita, questo numero è illimitato.
tinja url -u "http://example.com/" --ratelimit 10[ERR] Couldn't connect to URL: remote error: tls: user canceled
--proxycertpath (vedi Utilizzare un Proxy).[ERR] Error reading response from target server via proxy: malformed HTTP response "HTTP/1.1"
Default to HTTP/2 if the server supports it nelle impostazioni di Burp Suite (Network > HTTP).TINJA per indicare dove posizionare i poliglotti.Un articolo di blog che fornisce maggiori informazioni sull'iniezione di template e su TInjA – the Template INJection Analyzer può essere trovato qui:
Template Injection Vulnerabilities – Understand, Detect, Identify
TInjA è stato sviluppato come parte di una tesi di laurea magistrale da Maximilian Hildebrand. I risultati della tesi di laurea magistrale sono disponibili pubblicamente qui:
TInjA – the Template INJection Analyzer è stato sviluppato da Hackmanit e Maximilian Hildebrand come parte della sua tesi di laurea magistrale. TInjA – the Template INJection Analyzer è concesso in licenza secondo i termini della Apache License, Version 2.0.