Segurança cibernética

Falhas críticas no Framework Ollama AI podem permitir DoS e roubo de modelos

O framework Ollama AI possui seis falhas críticas de segurança que permitem DoS e roubo de modelos. Aplique medidas de segurança.

Falhas críticas Ollama AI

Pesquisadores em cibersegurança revelaram recentemente seis vulnerabilidades significativas no framework de inteligência artificial (IA) Ollama, que podem ser exploradas por agentes maliciosos para realizar ações nocivas, como ataques de negação de serviço (DoS), contaminação de modelos e roubo de modelos.

Falhas críticas no Framework Ollama AI

Avi Lumelsky, pesquisador da Oligo Security, destacou em um relatório publicado na semana passada que “coletivamente, as vulnerabilidades podem permitir que um atacante execute uma ampla gama de ações maliciosas com um único pedido HTTP, incluindo ataques DoS, contaminação de modelos, roubo de modelos e muito mais”.

Ollama é uma aplicação de código aberto que permite aos usuários implantar e operar grandes modelos de linguagem (LLMs) localmente em dispositivos Windows, Linux e macOS. Até agora, seu repositório no GitHub foi copiado mais de 7.600 vezes.

Falhas críticas Ollama AI

Descrição das Vulnerabilidades

Abaixo está uma breve descrição das seis vulnerabilidades identificadas:

  1. CVE-2024-39719 (Pontuação CVSS: 7,5) – Uma vulnerabilidade que permite a um atacante usar o endpoint /api/create para verificar a existência de um arquivo no servidor (corrigido na versão 0.1.47).
  2. CVE-2024-39720 (Pontuação CVSS: 8,2) – Uma vulnerabilidade de leitura fora dos limites que pode fazer o aplicativo falhar por meio do endpoint /api/create, resultando em uma condição de DoS (corrigido na versão 0.1.46).
  3. CVE-2024-39721 (Pontuação CVSS: 7,5) – Uma vulnerabilidade que causa exaustão de recursos e, eventualmente, DoS ao invocar repetidamente o endpoint /api/create passando o arquivo “/dev/random” como entrada (corrigido na versão 0.1.34).
  4. CVE-2024-39722 (Pontuação CVSS: 7,5) – Uma vulnerabilidade de travessia de caminho no endpoint api/push que expõe os arquivos existentes no servidor e toda a estrutura de diretórios na qual o Ollama está implantado (corrigido na versão 0.1.46).
  5. Uma vulnerabilidade que pode levar à contaminação do modelo por meio do endpoint /api/pull de uma fonte não confiável (sem identificador CVE, não corrigida).
  6. Uma vulnerabilidade que pode resultar no roubo do modelo através do endpoint /api/push para um alvo não confiável (sem identificador CVE, não corrigida).

Para as vulnerabilidades não corrigidas, os mantenedores do Ollama recomendaram que os usuários filtrem quais endpoints estão expostos à internet, utilizando um proxy ou um firewall de aplicativo web. “Significa que, por padrão, nem todos os endpoints devem ser expostos”, alertou Lumelsky. “Essa é uma suposição perigosa. Nem todos têm conhecimento disso ou filtram o roteamento HTTP para o Ollama. Atualmente, esses endpoints estão disponíveis através da porta padrão do Ollama como parte de cada implantação, sem qualquer separação ou documentação para respaldar.”

A Oligo identificou 9.831 instâncias únicas do Ollama acessíveis pela internet, com a maioria localizada na China, EUA, Alemanha, Coreia do Sul, Taiwan, França, Reino Unido, Índia, Cingapura e Hong Kong. Um em cada quatro servidores expostos à internet foi considerado vulnerável às falhas identificadas.

O desenvolvimento dessas vulnerabilidades surge mais de quatro meses após a empresa de segurança em nuvem Wiz ter divulgado uma falha grave impactando o Ollama (CVE-2024-37032), que poderia ser explorada para alcançar a execução remota de código. Lumelsky observou que “expor o Ollama à internet sem autorização é equivalente a expor o docker socket ao público, pois ele pode carregar arquivos e possui capacidades de pull e push de modelos que podem ser abusadas por atacantes”.