
Prova de conceito de exploit para CVE-2026-73314, uma bypass na verificação de assinatura do webhook REST do PayPal no XenForo anterior à versão 2.3.13, permitindo a conclusão não autorizada de compras.
XenForo anterior à versão 2.3.13 falha ao validar quando um webhook REST do PayPal menciona um algoritmo de assinatura não suportado.
O manipulador de webhook mapeia PAYPAL-AUTH-ALGO através de uma pequena lista de permissões. Se o valor for desconhecido, o algoritmo mapeado torna-se nulo. Em vez de rejeitar a solicitação, o caminho de verificação registra que o algoritmo não está disponível e retorna sucesso. A obtenção do certificado e openssl_verify() nunca são alcançados.
Com uma atualização recorrente REST do PayPal ativa, um comprador pode obter a chave da solicitação de compra a partir dos próprios controles de atualização recorrente. Um callback forjado de PAYMENT.CAPTURE.COMPLETED contendo essa chave, o valor/moeda exibidos e um algoritmo não suportado pode alcançar a conclusão normal da compra sem uma assinatura válida do PayPal.
Reproduzi uma extensão de direito de 30 dias no XenForo 2.3.12 (build 2031270). O PoC não tem como alvo uma conta de pagamento real e deve ser usado apenas com uma atualização descartável em uma instalação isolada. O XenForo 2.3.13 contém a correção.
python poc.py https://xenforo.example DISPOSABLE_REQUEST_KEY 10.00 USD
O script cria um único evento sintético e relata apenas o status HTTP. Uma instalação corrigida deve rejeitá-lo.
Descoberto por Marco Paciaroni (BomboBombone).