Como fazer escape de scripts Jelly [Atualizado na Central de segurança 1.3]
Use a propriedade glide.ui.escape_all_script para forçar o escape de todos os scripts injetados no Jelly.
Ela escapa de todas as cadeias de caracteres JS e HTML incluídas em<j:jelly> ... </j:jelly> antes de serem gravadas no fluxo de saída, evitando que vários problemas de XSS ocorram.
Mais informações
| Atributo | Descrição |
|---|---|
| Nome da propriedade | glide.ui.escape_all_script |
| Tipo de configuração | Propriedades do sistema (/sys_properties_list.do) |
| Tipo de dados | booliano |
| Categoria | Validação, limpeza e codificação |
| Finalidade | Se a propriedade não estiver definida como verdadeira, os desenvolvedores precisarão executar várias etapas em cada script Jelly personalizado para evitar problemas de XSS. Essas etapas incluem localizar as variáveis Jelly enviadas para o fluxo de saída para renderizar em páginas da Web e executar o escape em cada um dos seguintes marcadores:
OU
|
| Valor recomendado | verdadeiro |
| Valor-padrão | verdadeiro |
| Classificação de risco de segurança | 7,3 |
| Impacto funcional | (Médio) Esta correção impõe o escape do Jelly no nível do analisador. Ela pode ter um impacto na funcionalidade na interação do usuário da instância com os dados resultantes. |
| Risco à segurança | (Alto) A validação de entrada deve ocorrer em todas as entradas do usuário inseridas na aplicação. Ao fazer isso, os ataques de injeção contra a plataforma podem ser defendidos e protegidos. |
| Solução alternativa | A IU pode ser afetada porque alguns dos scripts e marcadores HTML projetados para renderização em uma página da Web podem aparecer quebrados. Esta correção envia a página codificada de saída para o navegador renderizar. Por exemplo, em vez de 'minha cadeia de caracteres aqui', ela pode exibir '<u>minha cadeia de caracteres aqui</u>, já que o marcador <u> teve o escape correto. Nesse caso, para impedir o escape, adicione o prefixo NOESC à expressão do Jelly para impedir o escape de JS. Por exemplo:
|
| Referências | Configurações de Alta Segurança Marcadores Jelly |
Para saber mais sobre como adicionar ou criar uma propriedade do sistema, consulte Add a system property.