- Você trabalha em uma **empresa de segurança cibernética**? Você quer ver sua **empresa anunciada no HackTricks**? ou você quer ter acesso à **última versão do PEASS ou baixar o HackTricks em PDF**? Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
- Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
- **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
- **Compartilhe suas técnicas de hacking enviando PRs para o [repositório hacktricks](https://github.com/carlospolop/hacktricks) e [hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)**.
É como uma **Injeção de Template do Lado do Servidor** (SSTI), mas no **lado do cliente**. O **SSTI** pode permitir que você **execute código** no servidor remoto, o **CSTI** pode permitir que você **execute código JavaScript arbitrário** na vítima.
A maneira de **testar** essa vulnerabilidade é muito **semelhante** ao caso do **SSTI**, o interpretador vai esperar algo para executar **entre chaves duplas** e irá executá-lo. Por exemplo, usando algo como: `{{ 7-7 }}` se o servidor for **vulnerável**, você verá um `0` e, se não, verá o original: `{{ 7-7 }}`
AngularJS é uma biblioteca JavaScript popular, que examina o conteúdo dos nós HTML contendo o atributo **`ng-app`** (também conhecido como diretiva AngularJS). Quando uma diretiva é adicionada ao código HTML, **você pode executar expressões JavaScript dentro de chaves duplas**.\
Por exemplo, se sua **entrada** está sendo **refletida** dentro do **corpo** do HTML e o corpo é definido com `ng-app`: **`<body ng-app>`**
[**Angular 1.6 removeu o sandbox**](http://blog.angularjs.org/2016/09/angular-16-expression-sandbox-removal.html#:\~:text=The%20Angular%20expression%20sandbox%20will,smaller%20and%20easier%20to%20maintain.\&text=Removing%20the%20expression%20sandbox%20does,surface%20of%20Angular%201%20applications.) então a partir desta versão um payload como `{{constructor.constructor('alert(1)')()}}` ou `<input ng-focus=$event.view.alert('XSS')>` deve funcionar.
Você pode encontrar uma implementação **vue.js vulnerável** em [https://vue-client-side-template-injection-example.azu.now.sh/](https://vue-client-side-template-injection-example.azu.now.sh)\
E o **código fonte** do exemplo vulnerável aqui: [https://github.com/azu/vue-client-side-template-injection-example](https://github.com/azu/vue-client-side-template-injection-example)
Um post realmente bom sobre CSTI em VUE pode ser encontrado em [https://portswigger.net/research/evading-defences-using-vuejs-script-gadgets](https://portswigger.net/research/evading-defences-using-vuejs-script-gadgets)
Mais payloads em [https://portswigger.net/research/abusing-javascript-frameworks-to-bypass-xss-mitigations](https://portswigger.net/research/abusing-javascript-frameworks-to-bypass-xss-mitigations)
- Você trabalha em uma **empresa de segurança cibernética**? Você quer ver sua **empresa anunciada no HackTricks**? ou quer ter acesso à **última versão do PEASS ou baixar o HackTricks em PDF**? Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
- Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
- **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
- **Compartilhe suas técnicas de hacking enviando PRs para o [repositório hacktricks](https://github.com/carlospolop/hacktricks) e [hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)**.