
Notas de prova de conceito e verificação de patch para CVE-2026-96877, um XSS refletido nas breadcrumbs de busca full-text do Cargo Drilldown, com um script de detecção em Python.
Repórter: Marco Paciaroni (BomboBombone).
O Cargo exibia um termo de pesquisa de texto completo no breadcrumb do Drilldown sem escape de HTML. A entrada de pesquisa podia, portanto, tornar-se marcação executável na página de resultados.
O registo CVE identifica o Cargo até à versão 3.9.4 como afetado.
O problema dependia da indexação de páginas de texto completo ativada e de uma tabela publicamente consultável cujos resultados chegassem à exibição afetada. Um atacante anónimo podia preparar um pedido que executava script quando uma vítima o abrisse.
O relatório original regista a execução no navegador local a partir do breadcrumb e um controlo comum que era renderizado sem um elemento executável.
A alteração upstream escapa o termo de pesquisa de texto completo exibido antes de o adicionar ao breadcrumb.
python poc.py https://wiki.example TABLE SEARCH_TERM
A tabela deve usar a indexação de páginas de texto completo do Cargo, e o termo fornecido deve corresponder ao texto da página. O script indica se o breadcrumb contém o marcador inofensivo não escapado.