cve-2021-47062
Vulnerability from cvelistv5
Published
2024-02-29 22:37
Modified
2024-12-19 07:34
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: KVM: SVM: Use online_vcpus, not created_vcpus, to iterate over vCPUs Use the kvm_for_each_vcpu() helper to iterate over vCPUs when encrypting VMSAs for SEV, which effectively switches to use online_vcpus instead of created_vcpus. This fixes a possible null-pointer dereference as created_vcpus does not guarantee a vCPU exists, since it is updated at the very beginning of KVM_CREATE_VCPU. created_vcpus exists to allow the bulk of vCPU creation to run in parallel, while still correctly restricting the max number of max vCPUs.
Impacted products
Vendor Product Version
Linux Linux Version: ad73109ae7ec30d5bfb76be108e304f9f0af4829
Version: ad73109ae7ec30d5bfb76be108e304f9f0af4829
Version: ad73109ae7ec30d5bfb76be108e304f9f0af4829
Create a notification for this product.
   Linux Linux Version: 5.11
Create a notification for this product.
Show details on NVD website


{
   containers: {
      adp: [
         {
            metrics: [
               {
                  other: {
                     content: {
                        id: "CVE-2021-47062",
                        options: [
                           {
                              Exploitation: "none",
                           },
                           {
                              Automatable: "no",
                           },
                           {
                              "Technical Impact": "partial",
                           },
                        ],
                        role: "CISA Coordinator",
                        timestamp: "2024-03-05T22:14:24.335971Z",
                        version: "2.0.3",
                     },
                     type: "ssvc",
                  },
               },
            ],
            providerMetadata: {
               dateUpdated: "2024-06-04T17:14:09.060Z",
               orgId: "134c704f-9b21-4f2e-91b3-4a467353bcc0",
               shortName: "CISA-ADP",
            },
            title: "CISA ADP Vulnrichment",
         },
         {
            providerMetadata: {
               dateUpdated: "2024-08-04T05:24:39.873Z",
               orgId: "af854a3a-2127-422b-91ae-364da2661108",
               shortName: "CVE",
            },
            references: [
               {
                  tags: [
                     "x_transferred",
                  ],
                  url: "https://git.kernel.org/stable/c/bd0cced2ae93195668f983d443f7f17e8efd24d2",
               },
               {
                  tags: [
                     "x_transferred",
                  ],
                  url: "https://git.kernel.org/stable/c/ba7bf5d6336aa9c0d977b161bfa420c56d46ee40",
               },
               {
                  tags: [
                     "x_transferred",
                  ],
                  url: "https://git.kernel.org/stable/c/c36b16d29f3af5f32fc1b2a3401bf48f71cabee1",
               },
            ],
            title: "CVE Program Container",
         },
      ],
      cna: {
         affected: [
            {
               defaultStatus: "unaffected",
               product: "Linux",
               programFiles: [
                  "arch/x86/kvm/svm/sev.c",
               ],
               repo: "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
               vendor: "Linux",
               versions: [
                  {
                     lessThan: "bd0cced2ae93195668f983d443f7f17e8efd24d2",
                     status: "affected",
                     version: "ad73109ae7ec30d5bfb76be108e304f9f0af4829",
                     versionType: "git",
                  },
                  {
                     lessThan: "ba7bf5d6336aa9c0d977b161bfa420c56d46ee40",
                     status: "affected",
                     version: "ad73109ae7ec30d5bfb76be108e304f9f0af4829",
                     versionType: "git",
                  },
                  {
                     lessThan: "c36b16d29f3af5f32fc1b2a3401bf48f71cabee1",
                     status: "affected",
                     version: "ad73109ae7ec30d5bfb76be108e304f9f0af4829",
                     versionType: "git",
                  },
               ],
            },
            {
               defaultStatus: "affected",
               product: "Linux",
               programFiles: [
                  "arch/x86/kvm/svm/sev.c",
               ],
               repo: "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
               vendor: "Linux",
               versions: [
                  {
                     status: "affected",
                     version: "5.11",
                  },
                  {
                     lessThan: "5.11",
                     status: "unaffected",
                     version: "0",
                     versionType: "semver",
                  },
                  {
                     lessThanOrEqual: "5.11.*",
                     status: "unaffected",
                     version: "5.11.21",
                     versionType: "semver",
                  },
                  {
                     lessThanOrEqual: "5.12.*",
                     status: "unaffected",
                     version: "5.12.4",
                     versionType: "semver",
                  },
                  {
                     lessThanOrEqual: "*",
                     status: "unaffected",
                     version: "5.13",
                     versionType: "original_commit_for_fix",
                  },
               ],
            },
         ],
         descriptions: [
            {
               lang: "en",
               value: "In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: SVM: Use online_vcpus, not created_vcpus, to iterate over vCPUs\n\nUse the kvm_for_each_vcpu() helper to iterate over vCPUs when encrypting\nVMSAs for SEV, which effectively switches to use online_vcpus instead of\ncreated_vcpus.  This fixes a possible null-pointer dereference as\ncreated_vcpus does not guarantee a vCPU exists, since it is updated at\nthe very beginning of KVM_CREATE_VCPU.  created_vcpus exists to allow the\nbulk of vCPU creation to run in parallel, while still correctly\nrestricting the max number of max vCPUs.",
            },
         ],
         providerMetadata: {
            dateUpdated: "2024-12-19T07:34:32.690Z",
            orgId: "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            shortName: "Linux",
         },
         references: [
            {
               url: "https://git.kernel.org/stable/c/bd0cced2ae93195668f983d443f7f17e8efd24d2",
            },
            {
               url: "https://git.kernel.org/stable/c/ba7bf5d6336aa9c0d977b161bfa420c56d46ee40",
            },
            {
               url: "https://git.kernel.org/stable/c/c36b16d29f3af5f32fc1b2a3401bf48f71cabee1",
            },
         ],
         title: "KVM: SVM: Use online_vcpus, not created_vcpus, to iterate over vCPUs",
         x_generator: {
            engine: "bippy-5f407fcff5a0",
         },
      },
   },
   cveMetadata: {
      assignerOrgId: "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      assignerShortName: "Linux",
      cveId: "CVE-2021-47062",
      datePublished: "2024-02-29T22:37:36.468Z",
      dateReserved: "2024-02-29T22:33:44.294Z",
      dateUpdated: "2024-12-19T07:34:32.690Z",
      state: "PUBLISHED",
   },
   dataType: "CVE_RECORD",
   dataVersion: "5.1",
   "vulnerability-lookup:meta": {
      nvd: "{\"cve\":{\"id\":\"CVE-2021-47062\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-02-29T23:15:07.843\",\"lastModified\":\"2024-12-10T16:43:41.337\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nKVM: SVM: Use online_vcpus, not created_vcpus, to iterate over vCPUs\\n\\nUse the kvm_for_each_vcpu() helper to iterate over vCPUs when encrypting\\nVMSAs for SEV, which effectively switches to use online_vcpus instead of\\ncreated_vcpus.  This fixes a possible null-pointer dereference as\\ncreated_vcpus does not guarantee a vCPU exists, since it is updated at\\nthe very beginning of KVM_CREATE_VCPU.  created_vcpus exists to allow the\\nbulk of vCPU creation to run in parallel, while still correctly\\nrestricting the max number of max vCPUs.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se resolvió la siguiente vulnerabilidad: KVM: SVM: use online_vcpus, no creado_vcpus, para iterar sobre vCPU. Use el asistente kvm_for_each_vcpu() para iterar sobre vCPU al cifrar VMSA para SEV, que efectivamente cambia para usar online_vcpus en lugar de creado_vcpus. Esto corrige una posible desreferencia de puntero nulo ya que create_vcpus no garantiza que exista una vCPU, ya que se actualiza al comienzo de KVM_CREATE_VCPU. create_vcpus existe para permitir que la mayor parte de la creación de vCPU se ejecute en paralelo, al mismo tiempo que restringe correctamente la cantidad máxima de vCPU máximas.\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-476\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.11\",\"versionEndExcluding\":\"5.11.21\",\"matchCriteriaId\":\"8CBB94EC-EC33-4464-99C5-03E5542715F0\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.12\",\"versionEndExcluding\":\"5.12.4\",\"matchCriteriaId\":\"D8C7052F-1B7B-4327-9C2B-84EBF3243838\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/ba7bf5d6336aa9c0d977b161bfa420c56d46ee40\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/bd0cced2ae93195668f983d443f7f17e8efd24d2\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/c36b16d29f3af5f32fc1b2a3401bf48f71cabee1\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/ba7bf5d6336aa9c0d977b161bfa420c56d46ee40\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/bd0cced2ae93195668f983d443f7f17e8efd24d2\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/c36b16d29f3af5f32fc1b2a3401bf48f71cabee1\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]}]}}",
      vulnrichment: {
         containers: "{\"adp\": [{\"title\": \"CVE Program Container\", \"references\": [{\"url\": \"https://git.kernel.org/stable/c/bd0cced2ae93195668f983d443f7f17e8efd24d2\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/ba7bf5d6336aa9c0d977b161bfa420c56d46ee40\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/c36b16d29f3af5f32fc1b2a3401bf48f71cabee1\", \"tags\": [\"x_transferred\"]}], \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2024-08-04T05:24:39.873Z\"}}, {\"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2021-47062\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-03-05T22:14:24.335971Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-05-23T19:01:16.100Z\"}, \"title\": \"CISA ADP Vulnrichment\"}], \"cna\": {\"title\": \"KVM: SVM: Use online_vcpus, not created_vcpus, to iterate over vCPUs\", \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"ad73109ae7ec30d5bfb76be108e304f9f0af4829\", \"lessThan\": \"bd0cced2ae93195668f983d443f7f17e8efd24d2\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"ad73109ae7ec30d5bfb76be108e304f9f0af4829\", \"lessThan\": \"ba7bf5d6336aa9c0d977b161bfa420c56d46ee40\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"ad73109ae7ec30d5bfb76be108e304f9f0af4829\", \"lessThan\": \"c36b16d29f3af5f32fc1b2a3401bf48f71cabee1\", \"versionType\": \"git\"}], \"programFiles\": [\"arch/x86/kvm/svm/sev.c\"], \"defaultStatus\": \"unaffected\"}, {\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"5.11\"}, {\"status\": \"unaffected\", \"version\": \"0\", \"lessThan\": \"5.11\", \"versionType\": \"semver\"}, {\"status\": \"unaffected\", \"version\": \"5.11.21\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.11.*\"}, {\"status\": \"unaffected\", \"version\": \"5.12.4\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"5.12.*\"}, {\"status\": \"unaffected\", \"version\": \"5.13\", \"versionType\": \"original_commit_for_fix\", \"lessThanOrEqual\": \"*\"}], \"programFiles\": [\"arch/x86/kvm/svm/sev.c\"], \"defaultStatus\": \"affected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/bd0cced2ae93195668f983d443f7f17e8efd24d2\"}, {\"url\": \"https://git.kernel.org/stable/c/ba7bf5d6336aa9c0d977b161bfa420c56d46ee40\"}, {\"url\": \"https://git.kernel.org/stable/c/c36b16d29f3af5f32fc1b2a3401bf48f71cabee1\"}], \"x_generator\": {\"engine\": \"bippy-5f407fcff5a0\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nKVM: SVM: Use online_vcpus, not created_vcpus, to iterate over vCPUs\\n\\nUse the kvm_for_each_vcpu() helper to iterate over vCPUs when encrypting\\nVMSAs for SEV, which effectively switches to use online_vcpus instead of\\ncreated_vcpus.  This fixes a possible null-pointer dereference as\\ncreated_vcpus does not guarantee a vCPU exists, since it is updated at\\nthe very beginning of KVM_CREATE_VCPU.  created_vcpus exists to allow the\\nbulk of vCPU creation to run in parallel, while still correctly\\nrestricting the max number of max vCPUs.\"}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2024-12-19T07:34:32.690Z\"}}}",
         cveMetadata: "{\"cveId\": \"CVE-2021-47062\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2024-12-19T07:34:32.690Z\", \"dateReserved\": \"2024-02-29T22:33:44.294Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2024-02-29T22:37:36.468Z\", \"assignerShortName\": \"Linux\"}",
         dataType: "CVE_RECORD",
         dataVersion: "5.1",
      },
   },
}


Log in or create an account to share your comment.

Security Advisory comment format.

This schema specifies the format of a comment related to a security advisory.

UUIDv4 of the comment
UUIDv4 of the Vulnerability-Lookup instance
When the comment was created originally
When the comment was last updated
Title of the comment
Description of the comment
The identifier of the vulnerability (CVE ID, GHSA-ID, PYSEC ID, etc.).



Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.