PT-2024-36551 · Unknown · Invoice Ninja
Mickaël Benassouli
+1
·
Publicado
2024-12-13
·
Atualizado
2025-01-13
·
CVE-2024-55555
CVSS v3.1
8.8
Alta
| Vetor | AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Nome do software vulnerável e versões afetadas
Versões do Invoice Ninja anteriores à 5.10.43
Descrição
A vulnerabilidade permite a execução remota de código a partir de uma rota pré-autenticada quando um invasor conhece a
APP KEY. Isso é agravado por arquivos .env que possuem valores padrão para APP KEY. A rota route/{hash}, definida no arquivo invoiceninja/routes/client.php, pode ser acessada sem autenticação. O parâmetro {hash} é passado para a função decrypt, que espera um valor criptografado do Laravel contendo um objeto serializado. O Laravel contém várias cadeias de gadgets que podem ser usadas para acionar a execução remota de comandos a partir de uma deserialização arbitrária. Portanto, um invasor que possua a APP KEY pode controlar totalmente uma string passada para uma função unserialize.Recomendações
Para versões anteriores à 5.10.43, atualize para a versão 5.10.43 ou posterior para resolver o problema. Como solução temporária, considere restringir o acesso à rota
route/{hash} ou desativar a função decrypt até que um patch seja aplicado. Além disso, certifique-se de que os valores padrão de APP KEY dos arquivos .env sejam alterados para valores únicos e seguros, a fim de evitar exploração.Correção
Deserialization of Untrusted Data
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Invoice Ninja