2024-12-15 03:03:56 +00:00

224 lines
8.0 KiB
JSON

{
"id": "CVE-2020-15209",
"sourceIdentifier": "security-advisories@github.com",
"published": "2020-09-25T19:15:16.213",
"lastModified": "2024-11-21T05:05:05.573",
"vulnStatus": "Modified",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, a crafted TFLite model can force a node to have as input a tensor backed by a `nullptr` buffer. This can be achieved by changing a buffer index in the flatbuffer serialization to convert a read-only tensor to a read-write one. The runtime assumes that these buffers are written to before a possible read, hence they are initialized with `nullptr`. However, by changing the buffer index for a tensor and implicitly converting that tensor to be a read-write one, as there is nothing in the model that writes to it, we get a null pointer dereference. The issue is patched in commit 0b5662bc, and is released in TensorFlow versions 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1."
},
{
"lang": "es",
"value": "En tensorflow-lite versiones anteriores a 1.15.4, 2.0.3, 2.1.2, 2.2.1 y 2.3.1, un modelo TFLite dise\u00f1ado puede forzar a un nodo a tener como entrada un tensor respaldado por un b\u00fafer de \"nullptr\". Esto se puede lograr cambiando un \u00edndice de b\u00fafer en la serializaci\u00f3n flatbuffer para convertir un tensor de solo lectura en uno de lectura y escritura. El tiempo de ejecuci\u00f3n asume que estos b\u00faferes son escritos antes de una posible lectura, por lo que son inicializados con \"nullptr\". Sin embargo, al cambiar el \u00edndice del b\u00fafer por un tensor y convertir impl\u00edcitamente ese tensor en uno de lectura y escritura, ya que no existe nada en el modelo que escriba en \u00e9l, obtenemos una desreferencia del puntero null. El problema es parcheado en el commit 0b5662bc y es publicado en TensorFlow versiones 1.15.4, 2.0.3, 2.1.2, 2.2.1 o 2.3.1"
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "security-advisories@github.com",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H",
"baseScore": 5.9,
"baseSeverity": "MEDIUM",
"attackVector": "NETWORK",
"attackComplexity": "HIGH",
"privilegesRequired": "NONE",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"availabilityImpact": "HIGH"
},
"exploitabilityScore": 2.2,
"impactScore": 3.6
},
{
"source": "nvd@nist.gov",
"type": "Primary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H",
"baseScore": 5.9,
"baseSeverity": "MEDIUM",
"attackVector": "NETWORK",
"attackComplexity": "HIGH",
"privilegesRequired": "NONE",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"availabilityImpact": "HIGH"
},
"exploitabilityScore": 2.2,
"impactScore": 3.6
}
],
"cvssMetricV2": [
{
"source": "nvd@nist.gov",
"type": "Primary",
"cvssData": {
"version": "2.0",
"vectorString": "AV:N/AC:M/Au:N/C:N/I:N/A:P",
"baseScore": 4.3,
"accessVector": "NETWORK",
"accessComplexity": "MEDIUM",
"authentication": "NONE",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"availabilityImpact": "PARTIAL"
},
"baseSeverity": "MEDIUM",
"exploitabilityScore": 8.6,
"impactScore": 2.9,
"acInsufInfo": false,
"obtainAllPrivilege": false,
"obtainUserPrivilege": false,
"obtainOtherPrivilege": false,
"userInteractionRequired": false
}
]
},
"weaknesses": [
{
"source": "security-advisories@github.com",
"type": "Primary",
"description": [
{
"lang": "en",
"value": "CWE-476"
}
]
}
],
"configurations": [
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:a:google:tensorflow:*:*:*:*:lite:*:*:*",
"versionEndExcluding": "1.15.4",
"matchCriteriaId": "7A5421A9-693F-472A-9A21-43950C884C77"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:a:google:tensorflow:*:*:*:*:lite:*:*:*",
"versionStartIncluding": "2.0.0",
"versionEndExcluding": "2.0.3",
"matchCriteriaId": "B0FEB74E-5E54-4A2F-910C-FA1812C73DB2"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:a:google:tensorflow:*:*:*:*:lite:*:*:*",
"versionStartIncluding": "2.1.0",
"versionEndExcluding": "2.1.2",
"matchCriteriaId": "47D83682-6615-49BC-8043-F36B9D017578"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:a:google:tensorflow:*:*:*:*:lite:*:*:*",
"versionStartIncluding": "2.2.0",
"versionEndExcluding": "2.2.1",
"matchCriteriaId": "323B716A-E8F7-4CDA-B8FD-A56977D59C02"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:a:google:tensorflow:*:*:*:*:lite:*:*:*",
"versionStartIncluding": "2.3.0",
"versionEndExcluding": "2.3.1",
"matchCriteriaId": "C09502A8-B667-4867-BEBD-40333E98A601"
}
]
}
]
},
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:o:opensuse:leap:15.2:*:*:*:*:*:*:*",
"matchCriteriaId": "B009C22E-30A4-4288-BCF6-C3E81DEAF45A"
}
]
}
]
}
],
"references": [
{
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-10/msg00065.html",
"source": "security-advisories@github.com",
"tags": [
"Mailing List",
"Third Party Advisory"
]
},
{
"url": "https://github.com/tensorflow/tensorflow/commit/0b5662bc2be13a8c8f044d925d87fb6e56247cd8",
"source": "security-advisories@github.com",
"tags": [
"Patch",
"Third Party Advisory"
]
},
{
"url": "https://github.com/tensorflow/tensorflow/releases/tag/v2.3.1",
"source": "security-advisories@github.com",
"tags": [
"Third Party Advisory"
]
},
{
"url": "https://github.com/tensorflow/tensorflow/security/advisories/GHSA-qh32-6jjc-qprm",
"source": "security-advisories@github.com",
"tags": [
"Exploit",
"Third Party Advisory"
]
},
{
"url": "http://lists.opensuse.org/opensuse-security-announce/2020-10/msg00065.html",
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Mailing List",
"Third Party Advisory"
]
},
{
"url": "https://github.com/tensorflow/tensorflow/commit/0b5662bc2be13a8c8f044d925d87fb6e56247cd8",
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Patch",
"Third Party Advisory"
]
},
{
"url": "https://github.com/tensorflow/tensorflow/releases/tag/v2.3.1",
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Third Party Advisory"
]
},
{
"url": "https://github.com/tensorflow/tensorflow/security/advisories/GHSA-qh32-6jjc-qprm",
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Exploit",
"Third Party Advisory"
]
}
]
}