Skip to content
Heist/ feed
Back to feed
Low

Usage of disabled protocol

Type: advisorySources: OSV

When a protocol selection parameter option disables all protocols without adding any then the default set of protocols would remain in the allowed set due to an error in the logic for removing protocols. The below command would perform a request to curl.se with a plaintext protocol which has been explicitly disabled. curl --proto -all,-http http://curl.se The flaw is only present if the set of selected protocols disables the entire set of available protocols, in itself a command with no practical use and therefore unlikely to be encountered in real situations. The curl security team has thus assessed this to be low severity bug.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2024-2004
Confirmed fixed CVEs
Not specified
Updated in this feed
1 Nov 2026, 09:39 UTC · Revision 1

Source evidence

Usage of disabled protocol

core-osv · Original source

Published 27 Mar 2024, 08:00 UTC

When a protocol selection parameter option disables all protocols without adding any then the default set of protocols would remain in the allowed set due to an error in the logic for removing protocols. The below command would perform a request to curl.se with a plaintext protocol which has been explicitly disabled. curl --proto -all,-http http://curl.se The flaw is only present if the set of selected protocols disables the entire set of available protocols, in itself a command with no practical use and therefore unlikely to be encountered in real situations. The curl security team has thus assessed this to be low severity bug.

osv:CURL-CVE-2024-2004
Complete source record
{
  "id": "82725a21d001b6d4f0fde6b2ed1470a5b34752dcdff1f838deb18bc1d1d084c6",
  "url": "https://osv.dev/vulnerability/CURL-CVE-2024-2004",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Usage of disabled protocol",
    "summary": "When a protocol selection parameter option disables all protocols without adding any then the default set of protocols would remain in the allowed set due to an error in the logic for removing protocols. The below command would perform a request to curl.se with a plaintext protocol which has been explicitly disabled. curl --proto -all,-http http://curl.se The flaw is only present if the set of selected protocols disables the entire set of available protocols, in itself a command with no practical use and therefore unlikely to be encountered in real situations. The curl security team has thus assessed this to be low severity bug.",
    "evidence": "osv:CURL-CVE-2024-2004",
    "products": [],
    "severity": "low",
    "structured": {
      "id": "CURL-CVE-2024-2004",
      "aliases": [
        "CURL-CVE-2024-2004",
        "CVE-2024-2004"
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "SEMVER",
              "events": [
                {
                  "introduced": "7.85.0"
                },
                {
                  "fixed": "8.7.0"
                }
              ]
            },
            {
              "repo": "https://github.com/curl/curl.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "e6f8445edef8e7996d1cfb141d6df184efef972c"
                },
                {
                  "fixed": "17d302e56221f5040092db77d4f85086e8a20e0e"
                }
              ]
            }
          ],
          "versions": [
            "8.6.0",
            "8.5.0",
            "8.4.0",
            "8.3.0",
            "8.2.1",
            "8.2.0",
            "8.1.2",
            "8.1.1",
            "8.1.0",
            "8.0.1",
            "8.0.0",
            "7.88.1",
            "7.88.0",
            "7.87.0",
            "7.86.0",
            "7.85.0",
            "curl-8_6_0",
            "curl-8_5_0",
            "tiny-curl-8_4_0",
            "curl-8_4_0",
            "curl-8_3_0",
            "curl-8_2_1",
            "curl-8_2_0",
            "curl-8_1_2",
            "curl-8_1_1",
            "curl-8_1_0",
            "curl-8_0_1",
            "curl-8_0_0",
            "curl-7_88_1",
            "curl-7_88_0",
            "curl-7_87_0",
            "curl-7_86_0",
            "curl-7_85_0"
          ],
          "database_specific": {
            "source": "https://curl.se/docs/CURL-CVE-2024-2004.json",
            "vanir_signatures": [
              {
                "id": "CURL-CVE-2024-2004-9cf2e21f",
                "digest": {
                  "length": 596,
                  "function_hash": "263242573932328283999651086202567972618"
                },
                "source": "https://github.com/curl/curl.git/commit/17d302e56221f5040092db77d4f85086e8a20e0e",
                "target": {
                  "file": "lib/setopt.c",
                  "function": "protocol2num"
                },
                "deprecated": false,
                "signature_type": "Function",
                "signature_version": "v1"
              },
              {
                "id": "CURL-CVE-2024-2004-db5ae2c3",
                "digest": {
                  "threshold": 0.9,
                  "line_hashes": [
                    "146775005194302234180871574532588634564",
                    "80774664900874679466631972198617203437",
                    "86560868041181873753741543273752203153",
                    "109635461924336694993478269644761368576",
                    "39663110126223588880452705360058635771",
                    "102598405752472213421951089163281066316",
                    "157504417133305387864513172521483805914",
                    "145541974102060752112997255455914659047",
                    "55260926967184544494570742347233254077",
                    "309192183229697118771568187270845002502",
                    "207866583364123580529107003148224483591",
                    "279198607381022972964908451529542064687",
                    "204952814017326855018165074809916426516",
                    "218132813899329869962711050077308818148",
                    "97319856121381203335677480056430916413",
                    "2797198658783848953219211360631403037",
                    "2798885337662632170976809274065866810",
                    "285306478552654161847997198384499473828",
                    "101086623269084607372318015532336010479",
                    "84026534629191629047935736214357629521",
                    "279198607381022972964908451529542064687",
                    "204952814017326855018165074809916426516",
                    "187026923012455286014531231840419879013",
                    "284912050998252905552411915627914736924",
                    "66657897627182812001308922601052818508",
                    "883451548261387060813125014860668010"
                  ]
                },
                "source": "https://github.com/curl/curl.git/commit/17d302e56221f5040092db77d4f85086e8a20e0e",
                "target": {
                  "file": "lib/setopt.c"
                },
                "deprecated": false,
                "signature_type": "Line",
                "signature_version": "v1"
              },
              {
                "id": "CURL-CVE-2024-2004-fee4b627",
                "digest": {
                  "length": 58066,
                  "function_hash": "339673796738820965873681585057018251270"
                },
                "source": "https://github.com/curl/curl.git/commit/17d302e56221f5040092db77d4f85086e8a20e0e",
                "target": {
                  "file": "lib/setopt.c",
                  "function": "Curl_vsetopt"
                },
                "deprecated": false,
                "signature_type": "Function",
                "signature_version": "v1"
              }
            ],
            "vanir_signatures_modified": "2026-10-25T01:05:23Z"
          }
        }
      ],
      "modified": "2026-10-25T01:05:23.732849566Z",
      "provider": "osv",
      "references": [],
      "provider_metadata": {
        "CWE": {
          "id": "CWE-115",
          "desc": "Misinterpretation of Input"
        },
        "URL": "https://curl.se/docs/CVE-2024-2004.json",
        "www": "https://curl.se/docs/CVE-2024-2004.html",
        "award": {
          "amount": "540",
          "currency": "USD"
        },
        "issue": "https://hackerone.com/reports/2384833",
        "affects": "both",
        "package": "curl",
        "severity": "Low",
        "last_affected": "8.6.0"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2024-2004",
        "evidence": "/aliases"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/database_specific/severity"
  },
  "source_id": "core-osv",
  "document_id": 444381,
  "published_at": "2024-03-27T08:00:00+00:00"
}