No video disponibilizado no topico "Para saber mais sobre XSS" é comentado que o Twig evitaria o XSS. Gostaria de saber mais sobre o porquê ele consegue fazer isso.
Grato
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
No video disponibilizado no topico "Para saber mais sobre XSS" é comentado que o Twig evitaria o XSS. Gostaria de saber mais sobre o porquê ele consegue fazer isso.
Grato
Oi Daniel, tudo bem?
O Twig é um mecanismo de template utilizado no Symfony que ajuda a evitar vulnerabilidades de Cross-Site Scripting (XSS) de forma bastante eficaz. A principal razão para isso é que, por padrão, o Twig escapa automaticamente todas as variáveis que você insere nos templates. Isso significa que ele converte caracteres especiais em entidades HTML seguras, prevenindo a execução de código malicioso.
Por exemplo, se você tiver uma variável contendo um script malicioso:
{{ user_input }}
Se user_input contiver <script>alert('XSS!')</script>, o Twig automaticamente escapa isso para <script>alert('XSS!')</script>, que será exibido como texto na página, ao invés de ser executado como um script.
Além disso, o Twig permite que você controle o comportamento de escape através de filtros. Por exemplo, se você quiser desativar o escape automático para uma variável específica (o que deve ser feito com muito cuidado), você pode usar o filtro raw:
{{ user_input|raw }}
Mas lembre-se, desativar o escape automático pode abrir brechas para XSS se não for feito de maneira segura e controlada.
Um abraço e bons estudos.