PT-2026-80796 · Hugo · Hugo
CVSS v3.1
5.4
Média
| Vetor | AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N |
Nome do Software Vulnerável e Versões Afetadas
Hugo versões 0.93.0 through 0.165.0
Description
O renderizador padrão de blocos de código delimitados (fenced-code-block) não escapa os valores de atributos derivados da string de informação do delimitador de código ao escrevê-los no HTML renderizado. Isso ocorre porque a função
New em markup/internal/attributes/attributes.go converte os valores de atributos de fatias de bytes (byte slices) para strings, ignorando o processo de escape. Subsequentemente, a função RenderAttributes() escapa apenas valores que permanecem como fatias de bytes, fazendo com que valores em string sejam escritos literalmente. Um invasor pode usar uma aspa dentro de um valor de atributo para encerrar o atributo e injetar atributos adicionais, como manipuladores de eventos (event handlers), no elemento wrapper, resultando em Cross-Site Scripting (XSS) armazenado. Este problema está presente na configuração padrão quando os delimitadores de código estão habilitados, independentemente da configuração unsafe do goldmark ou hooks de renderização personalizados. Embora nomes de atributos que começam com on sejam filtrados durante a análise, a injeção ainda é possível através do valor do atributo.Recommendations
Atualize o Hugo para uma versão posterior à 0.165.0.
Exploit
Correção
XSS
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Hugo