{
  "schemaVersion": 1,
  "attribution": [
    {
      "source": "CISA Known Exploited Vulnerabilities",
      "url": "https://www.cisa.gov/known-exploited-vulnerabilities-catalog",
      "licence": "US government work"
    },
    {
      "source": "GitHub Advisory Database",
      "url": "https://github.com/advisories",
      "licence": "CC BY 4.0"
    },
    {
      "source": "Have I Been Pwned",
      "url": "https://haveibeenpwned.com/",
      "licence": "CC BY 4.0"
    },
    {
      "source": "CVE Program (CVE records)",
      "url": "https://www.cve.org/Legal/TermsOfUse",
      "licence": "CVE Terms of Use",
      "notice": "Copyright © 1999-2026, The MITRE Corporation. CVE is a trademark and the CVE logo is a registered trademark of The MITRE Corporation.",
      "terms": "CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE™). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy."
    },
    {
      "source": "FIRST EPSS",
      "url": "https://www.first.org/epss/",
      "licence": "free to use; FIRST requests attribution"
    }
  ],
  "record": {
    "id": "CVE-2026-31392",
    "sourceURL": "https://www.cve.org/CVERecord?id=CVE-2026-31392",
    "idYear": 2026,
    "status": "PUBLISHED",
    "publishedAt": "2026-04-03T15:15:57.491Z",
    "updatedAt": "2026-10-19T18:35:46.023Z",
    "importedAt": "2026-10-24T01:58:02.025Z",
    "snapshot": {
      "id": "cve_2026-10-24_midnight_baseline",
      "at": "2026-10-24T00:00:00.000Z",
      "source": "https://github.com/CVEProject/cvelistV5/releases/tag/cve_2026-10-24_0100Z"
    },
    "facts": {
      "title": "smb: client: fix krb5 mount with username option",
      "summary": "In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: fix krb5 mount with username option\n\nCustomer reported that some of their krb5 mounts were failing against\na single server as the client was trying to mount the shares with\nwrong credentials.  It turned out the client was reusing SMB session\nfrom first mount to try mounting the other shares, even though a\ndifferent username= option had been specified to the other mounts.\n\nBy using username mount option along with sec=krb5 to search for\nprincipals from keytab is supported by cifs.upcall(8) since\ncifs-utils-4.8.  So fix this by matching username mount option in\nmatch_session() even with Kerberos.\n\nFor example, the second mount below should fail with -ENOKEY as there\nis no 'foobar' principal in keytab (/etc/krb5.keytab).  The client\nends up reusing SMB session from first mount to perform the second\none, which is wrong.\n\n```\n$ ktutil\nktutil:  add_entry -password -p testuser -k 1 -e aes256-cts\nPassword for testuser@ZELDA.TEST:\nktutil:  write_kt /etc/krb5.keytab\nktutil:  quit\n$ klist -ke\nKeytab name: FILE:/etc/krb5.keytab\nKVNO Principal\n ---- ----------------------------------------------------------------\n   1 testuser@ZELDA.TEST (aes256-cts-hmac-sha1-96)\n$ mount.cifs //w22-root2/scratch /mnt/1 -o sec=krb5,username=testuser\n$ mount.cifs //w22-root2/scratch /mnt/2 -o sec=krb5,username=foobar\n$ mount -t cifs | grep -Po 'username=\\K\\w+'\ntestuser\ntestuser\n```",
      "affected": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "versions": [
            {
              "version": "4ff67b720c02c36e54d55b88c2931879b7db1cd2",
              "status": "affected",
              "versionType": "git",
              "lessThan": "fd4547830720647d4af02ee50f883c4b1cca06e4"
            },
            {
              "version": "4ff67b720c02c36e54d55b88c2931879b7db1cd2",
              "status": "affected",
              "versionType": "git",
              "lessThan": "9229709ec8bf85ae7ca53aeee9aa14814cdc1bd2"
            },
            {
              "version": "4ff67b720c02c36e54d55b88c2931879b7db1cd2",
              "status": "affected",
              "versionType": "git",
              "lessThan": "d33cbf0bf8979d779900da9be2505d68d9d8da25"
            },
            {
              "version": "4ff67b720c02c36e54d55b88c2931879b7db1cd2",
              "status": "affected",
              "versionType": "git",
              "lessThan": "9ee803bfdba0cf739038dbdabdd4c02582c8f2b2"
            },
            {
              "version": "4ff67b720c02c36e54d55b88c2931879b7db1cd2",
              "status": "affected",
              "versionType": "git",
              "lessThan": "6e9ff1eb7feedcf46ff2d0503759960ab58e7775"
            },
            {
              "version": "4ff67b720c02c36e54d55b88c2931879b7db1cd2",
              "status": "affected",
              "versionType": "git",
              "lessThan": "12b4c5d98cd7ca46d5035a57bcd995df614c14e1"
            },
            {
              "version": "223c7f082d2836ac719b3b228bdcfab35e5e5330",
              "status": "affected",
              "versionType": "git"
            },
            {
              "version": "88720224330a655ab6268e20109b65b11cfd7f6a",
              "status": "affected",
              "versionType": "git"
            },
            {
              "version": "2.6.32.44",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "2.6.33"
            },
            {
              "version": "2.6.34.12",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "2.6.35"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "versions": [
            {
              "version": "2.6.36",
              "status": "affected"
            },
            {
              "version": "0",
              "status": "unaffected",
              "versionType": "semver",
              "lessThan": "2.6.36"
            },
            {
              "version": "6.1.167",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.1.*"
            },
            {
              "version": "6.6.130",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.6.*"
            },
            {
              "version": "6.12.78",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.12.*"
            },
            {
              "version": "6.18.20",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.18.*"
            },
            {
              "version": "6.19.10",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.19.*"
            },
            {
              "version": "7.0",
              "status": "unaffected",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ]
        }
      ]
    }
  }
}