
Advisory e prova de conceito para CVE-2024-36057, uma injeção de comandos do sistema operacional autenticada no Koha Library Software, demonstrando execução arbitrária de comandos por meio de nomes de arquivos ZIP manipulados.
ID CVE: CVE-2024-36057
Produto: Koha Library Software
Tipo de Vulnerabilidade: Injeção de Comando do SO (CWE-78)
Pontuação CVSS: 9.8 (Crítica)
Versões Afetadas: Anteriores a 23.05.10
Créditos: Karolis Narvilas
Koha é um sistema integrado de biblioteca de código aberto. Existe uma vulnerabilidade de injeção de comando na funcionalidade de upload de imagem de capa em tools/upload-cover-image.pl. A aplicação utiliza qx/unzip $filename -d $dirname/ para extrair arquivos ZIP enviados sem sanitizar o parâmetro filename.
Um usuário autenticado com altos privilégios pode criar um arquivo ZIP com um nome de arquivo malicioso contendo caracteres de crase para injetar comandos de shell arbitrários, que são executados no lado do servidor quando o usuário clica em "Process Images".
Impacto: Um atacante remoto autenticado pode explorar o CVE-2024-36057 para executar comandos arbitrários do SO no servidor subjacente, levando ao comprometimento total do sistema, exfiltração de dados e ao estabelecimento de backdoors persistentes ou reverse shells.
https://{domain}/cgi-bin/koha/tools/upload-cover-image.plRequisição:
POST /cgi-bin/koha/tools/upload-file.pl?temp=1 HTTP/1.1
Host: {domain}
Cookie: [High-Privilege Session]
Connection: close
------WebKitFormBoundaryP82Da5V6eaQOuBUT
Content-Disposition: form-data; name="file"; filename="execute`<INJECTED_COMMAND>`.zip"
Content-Type: application/x-zip-compressed
<zip file contents>
------WebKitFormBoundaryP82Da5V6eaQOuBUT--
