From 8bfbb4cb21aebc360e52db7a6b55bedf3da324a1 Mon Sep 17 00:00:00 2001 From: zar3bski Date: Mon, 27 Jul 2026 20:59:54 +0200 Subject: [PATCH] feat: template engine identification --- Fuzzing/README.md | 5 +++++ Fuzzing/template-engines-identification.txt | 24 +++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 Fuzzing/template-engines-identification.txt diff --git a/Fuzzing/README.md b/Fuzzing/README.md index 44bc67815..bcd63d0bf 100644 --- a/Fuzzing/README.md +++ b/Fuzzing/README.md @@ -24,3 +24,8 @@ Source: [JBroFuzz](https://sourceforge.net/projects/jbrofuzz/) ## fully-qualified-java-classes.txt Use for: Fuzzing URL parameters in **web applications** to test for **deserialisation** and **type confusion** vulnerabilities. + +## template-engines-identification.txt + +Use for: Indentifying the template engine of a web application based on the reflected values of the items of this list. Based on the substitutions, the template can be identified using this [graph](https://hacktricks.wiki/en/pentesting-web/ssti-server-side-template-injection/index.html#identification-by-payloads) + diff --git a/Fuzzing/template-engines-identification.txt b/Fuzzing/template-engines-identification.txt new file mode 100644 index 000000000..0018589ed --- /dev/null +++ b/Fuzzing/template-engines-identification.txt @@ -0,0 +1,24 @@ +D{{="O"}}T +P#{XXXXX}ug +Thym[[${session}]]eleaf +Dus{XXXXXXX}tjs +Sm{"ar"}ty +La{var $X="tt"}{$X}e +#set($X="Velo")#set($Y="city")$X$Y +Underscore OR<%"XXXXXXXXXX"%>Ejs +E<%="j"_%>s +This{{printf "is "}}GO +Haml#{"OR"}Slim +Erb<%="OR Erubi OR"%>Erubis +Must{{Context.lookup}}ache +Handlebars OR Hogan{{XXXXXXX}} OR Pystache +{{#if 0 IncludeZero=true}}Handlebars{{/if}} +Mako${"OR Chameleon OR "}Cheetah +Freemakers${" OR "}Groovy +Liquid AND Blade OR Twig {{" AND Jinja2 OR Bottle OR Tornado OR Django AND "}}Nunjucks OR Twig OR Vue +{{|reverse}} +{{|wordcount}} +{{-Comment-}} +{{ "

Django OR Jinja

"|striptags }} +Djan{{ Jinja2.Django }}go +Torn{% comment %}ado