
TInjA — это CLI-инструмент для тестирования веб-страниц на уязвимости внедрения шаблонов и поддерживает 44 наиболее актуальных шаблонизатора для восьми различных языков программирования.
TInjA — это инструмент командной строки для проверки веб-страниц на уязвимости внедрения шаблонов.
Он поддерживает 44 наиболее актуальных шаблонизатора (по состоянию на сентябрь 2023 года) для восьми различных языков программирования.
TInjA был разработан Hackmanit и Maximilian Hildebrand.
Готовые бинарные файлы TInjA доступны на странице релизов.
Требования: go1.21 или выше
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 указывает заголовки, которые будут добавлены к запросу.
tinja url -u "http://example.com/" -H "Authentication: Bearer ey..."--cookie/-c указывает куки, которые будут добавлены к запросу.
tinja url -u "http://example.com/" -c "PHPSESSID=ABC123..."--data/-d указывает тело POST-запроса, которое будет добавлено к запросу.
tinja url -u "http://example.com/" -d "username=Kirlia&password=notguessable"--csti включает сканирование на CSTI.
tinja url -u "http://example.com/" --cstiПо умолчанию TInjA сканирует только SSTI. Для сканирования CSTI используется безголовый браузер, что может увеличить использование оперативной памяти и процессора.
--reportpath включает генерацию отчета в формате JSONL. Отчет будет обновляться после каждого просканированного URL и сохраняться по указанному пути.
tinja url -u "http://example.com/" --reportpath "/home/user/Documents"--proxyurl указывает URL и порт прокси для сканирования.
tinja url -u "http://example.com/" --proxyurl "http://127.0.0.1:8080"--proxycertpath указывает путь к сертификату CA прокси в формате PEM (необходимо при сканировании HTTPS URL).
tinja url -u "http://example.com/" --proxyurl "http://127.0.0.1:8080" --proxycertpath "/home/user/Documents/cacert.pem"Для сканирования HTTPS URL через прокси требуется сертификат CA прокси в формате PEM. Сертификаты CA Burp Suite предоставляются в формате DER, например. Чтобы преобразовать их, можно использовать следующую команду:
openssl x509 -inform DER -outform PEM -text -in cacert.der -out cacert.pem
--ratelimit/-r задаёт максимальное количество запросов в секунду. По умолчанию количество не ограничено.
tinja url -u "http://example.com/" --ratelimit 10[ERR] Не удалось подключиться к URL: удалённая ошибка: tls: user canceled
--proxycertpath (см. Использование прокси).[ERR] Ошибка чтения ответа от целевого сервера через прокси: некорректный HTTP-ответ "HTTP/1.1"
Default to HTTP/2 if the server supports it в настройках Burp Suite (Network > HTTP).TINJA для указания места вставки полиглотов.Статья в блоге, содержащая дополнительную информацию о внедрении шаблонов и TInjA – анализаторе внедрения шаблонов, доступна по адресу:
Уязвимости внедрения шаблонов – Понимание, обнаружение, идентификация
TInjA был разработан в рамках магистерской диссертации Maximilian Hildebrand. Результаты магистерской диссертации находятся в открытом доступе:
TInjA – анализатор внедрения шаблонов был разработан Hackmanit и Maximilian Hildebrand в рамках его магистерской диссертации. TInjA – анализатор внедрения шаблонов распространяется под лицензией Apache License, Version 2.0.