Skip to content
Heist/ feed
Back to feed
Low

SASL password overflow via integer overflow

Type: advisorySources: OSV

libcurl contains a buffer overrun in the SASL authentication code. The internal function `Curl_auth_create_plain_message` fails to correctly verify that the passed in lengths for name and password are not too long, then calculates a buffer size to allocate. On systems with a 32-bit `size_t`, the math to calculate the buffer size triggers an integer overflow when the username length exceeds 1GB and the password name length is close to 2GB in size. This integer overflow usually causes a tiny buffer to actually get allocated instead of the intended huge one, making the use of that buffer end up in a heap buffer overflow. (This bug is similar to [CVE-2018-14618](https://curl.se/docs/CVE-2018-14618.html).)

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

Source evidence

SASL password overflow via integer overflow

core-osv · Original source

Published 31 Oct 2018, 08:00 UTC

libcurl contains a buffer overrun in the SASL authentication code. The internal function `Curl_auth_create_plain_message` fails to correctly verify that the passed in lengths for name and password are not too long, then calculates a buffer size to allocate. On systems with a 32-bit `size_t`, the math to calculate the buffer size triggers an integer overflow when the username length exceeds 1GB and the password name length is close to 2GB in size. This integer overflow usually causes a tiny buffer to actually get allocated instead of the intended huge one, making the use of that buffer end up in a heap buffer overflow. (This bug is similar to [CVE-2018-14618](https://curl.se/docs/CVE-2018-14618.html).)

osv:CURL-CVE-2018-16839
Complete source record
{
  "id": "4da0e147a4caa989d3fa0719961d35f632ea9c5c4e9995ea7848a2ed829db78a",
  "url": "https://osv.dev/vulnerability/CURL-CVE-2018-16839",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "SASL password overflow via integer overflow",
    "summary": "libcurl contains a buffer overrun in the SASL authentication code. The internal function `Curl_auth_create_plain_message` fails to correctly verify that the passed in lengths for name and password are not too long, then calculates a buffer size to allocate. On systems with a 32-bit `size_t`, the math to calculate the buffer size triggers an integer overflow when the username length exceeds 1GB and the password name length is close to 2GB in size. This integer overflow usually causes a tiny buffer to actually get allocated instead of the intended huge one, making the use of that buffer end up in a heap buffer overflow. (This bug is similar to [CVE-2018-14618](https://curl.se/docs/CVE-2018-14618.html).)",
    "evidence": "osv:CURL-CVE-2018-16839",
    "products": [],
    "severity": "low",
    "structured": {
      "id": "CURL-CVE-2018-16839",
      "aliases": [
        "CURL-CVE-2018-16839",
        "CVE-2018-16839"
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "SEMVER",
              "events": [
                {
                  "introduced": "7.33.0"
                },
                {
                  "fixed": "7.62.0"
                }
              ]
            },
            {
              "repo": "https://github.com/curl/curl.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "c56f9797e7feb7c2dc93bc389d4b85cc75220d77"
                },
                {
                  "fixed": "f3a24d7916b9173c69a3e0ee790102993833d6c5"
                }
              ]
            }
          ],
          "versions": [
            "7.61.1",
            "7.61.0",
            "7.60.0",
            "7.59.0",
            "7.58.0",
            "7.57.0",
            "7.56.1",
            "7.56.0",
            "7.55.1",
            "7.55.0",
            "7.54.1",
            "7.54.0",
            "7.53.1",
            "7.53.0",
            "7.52.1",
            "7.52.0",
            "7.51.0",
            "7.50.3",
            "7.50.2",
            "7.50.1",
            "7.50.0",
            "7.49.1",
            "7.49.0",
            "7.48.0",
            "7.47.1",
            "7.47.0",
            "7.46.0",
            "7.45.0",
            "7.44.0",
            "7.43.0",
            "7.42.1",
            "7.42.0",
            "7.41.0",
            "7.40.0",
            "7.39.0",
            "7.38.0",
            "7.37.1",
            "7.37.0",
            "7.36.0",
            "7.35.0",
            "7.34.0",
            "7.33.0",
            "curl-7_61_1",
            "curl-7_61_0",
            "curl-7_60_0",
            "curl-7_59_0",
            "curl-7_58_0",
            "curl-7_57_0",
            "curl-7_56_1",
            "curl-7_56_0",
            "curl-7_55_1",
            "curl-7_55_0",
            "curl-7_54_1",
            "curl-7_54_0",
            "curl-7_53_1",
            "curl-7_53_0",
            "curl-7_52_1",
            "curl-7_52_0",
            "curl-7_51_0",
            "curl-7_50_3",
            "curl-7_50_2",
            "curl-7_50_1",
            "curl-7_50_0",
            "curl-7_49_1",
            "curl-7_49_0",
            "curl-7_48_0",
            "curl-7_47_1",
            "curl-7_47_0",
            "curl-7_46_0",
            "curl-7_45_0",
            "curl-7_44_0",
            "curl-7_43_0",
            "curl-7_42_1",
            "curl-7_42_0",
            "curl-7_41_0",
            "curl-7_40_0",
            "curl-7_39_0",
            "curl-7_38_0",
            "curl-7_37_1",
            "curl-7_37_0",
            "curl-7_36_0",
            "curl-7_35_0",
            "curl-7_34_0",
            "curl-7_33_0"
          ],
          "database_specific": {
            "source": "https://curl.se/docs/CURL-CVE-2018-16839.json",
            "vanir_signatures": [
              {
                "id": "CURL-CVE-2018-16839-712de67c",
                "digest": {
                  "length": 711,
                  "function_hash": "307941837594799485192212106034451078774"
                },
                "source": "https://github.com/curl/curl.git/commit/f3a24d7916b9173c69a3e0ee790102993833d6c5",
                "target": {
                  "file": "lib/vauth/cleartext.c",
                  "function": "Curl_auth_create_plain_message"
                },
                "deprecated": false,
                "signature_type": "Function",
                "signature_version": "v1"
              },
              {
                "id": "CURL-CVE-2018-16839-c4e18881",
                "digest": {
                  "threshold": 0.9,
                  "line_hashes": [
                    "323405508741544077634728860040609514286",
                    "223299084025646397460911356647096920855",
                    "237287603532771469400165005710548925177",
                    "294262302604077010113878498613345104589"
                  ]
                },
                "source": "https://github.com/curl/curl.git/commit/f3a24d7916b9173c69a3e0ee790102993833d6c5",
                "target": {
                  "file": "lib/vauth/cleartext.c"
                },
                "deprecated": false,
                "signature_type": "Line",
                "signature_version": "v1"
              }
            ],
            "vanir_signatures_modified": "2026-10-25T01:05:28Z"
          }
        }
      ],
      "modified": "2026-10-25T01:05:28.979301935Z",
      "provider": "osv",
      "references": [],
      "provider_metadata": {
        "CWE": {
          "id": "CWE-131",
          "desc": "Incorrect Calculation of Buffer Size"
        },
        "URL": "https://curl.se/docs/CVE-2018-16839.json",
        "www": "https://curl.se/docs/CVE-2018-16839.html",
        "affects": "both",
        "package": "curl",
        "severity": "Low",
        "last_affected": "7.61.1"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2018-16839",
        "evidence": "/aliases"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/database_specific/severity"
  },
  "source_id": "core-osv",
  "document_id": 444391,
  "published_at": "2018-10-31T08:00:00+00:00"
}