{
  "schema_version": "1.5.0",
  "id": "CURL-CVE-2019-5481",
  "aliases": [
    "CVE-2019-5481"
  ],
  "summary": "FTP-KRB double free",
  "modified": "2026-05-19T11:21:50.00Z",
  "database_specific": {
    "package": "curl",
    "affects": "both",
    "URL": "https://curl.se/docs/CVE-2019-5481.json",
    "www": "https://curl.se/docs/CVE-2019-5481.html",
    "issue": "https://hackerone.com/reports/686823",
    "CWE": {
      "id": "CWE-415",
      "desc": "Double Free"
    },
    "award": {
      "amount": "200",
      "currency": "USD"
    },
    "last_affected": "7.65.3",
    "severity": "Medium"
  },
  "published": "2019-09-11T08:00:00.00Z",
  "affected": [
    {
      "ranges": [
        {
           "type": "SEMVER",
           "events": [
             {"introduced": "7.52.0"},
             {"fixed": "7.66.0"}
           ]
        },
        {
           "type": "GIT",
           "repo": "https://github.com/curl/curl.git",
           "events": [
             {"introduced": "0649433da53c7165f839e24e889e131e2894dd32"},
             {"fixed": "9069838b30fb3b48af0123e39f664cea683254a5"}
           ]
        }
      ],
      "versions": [
        "7.65.3", "7.65.2", "7.65.1", "7.65.0", "7.64.1", "7.64.0", "7.63.0", 
        "7.62.0", "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"
      ]
    }
  ],
  "credits": [
    {
      "name": "Thomas Vegas",
      "type": "FINDER"
    },
    {
      "name": "Daniel Stenberg",
      "type": "REMEDIATION_DEVELOPER"
    }
  ],
  "details": "libcurl can be told to use kerberos over FTP to a server, as set with the\n`CURLOPT_KRBLEVEL` option.\n\nDuring such kerberos FTP data transfer, the server sends data to curl in\nblocks with the 32-bit size of each block first and then that amount of data\nimmediately following.\n\nA malicious or broken server can claim to send a large block and if by doing\nthat it makes curl's subsequent call to `realloc()` to fail, curl would then\nmisbehave in the exit path and double free the memory.\n\nIn practical terms, an up to 4 GB memory area may well be fine to allocate\non a modern 64-bit system but on 32-bit systems it fails.\n\nKerberos FTP is a rarely used protocol with curl. Also, Kerberos\nauthentication is usually only attempted and used with servers that the client\nhas a previous association with."
}