Dado que no entregó algunos ejemplos, como por ejemplo: dónde obtuvo información de que un CVE no entrega un CPE, ya sea por medio de alguna plataforma o archivos proporcionados por algún proveedor específico. Supongo que está utilizando las fuentes de datos de la base de datos de vulnerabilidad nacional (NVD), ya sea en formato XML 2.0 o JSON proporcionado por NIST en https://nvd.nist.gov/vuln/data-feeds
, porque la información recopilada de los archivos de NIST (NVDCVE) es la misma en CVEDetails.com
.
Usted afirma que hay más de mil entradas sin CPE:
$ ls -lh
total 96136
-rw-r--r-- 1 test test 44M Aug 18 03:25 nvdcve-2.0-2016.xml
-rw-r--r-- 1 test test 2.6M Aug 20 06:57 nvdcve-2.0-2016.xml.zip
$ grep -c "\*\* REJECT \*\*" nvdcve-2.0-2016.xml
1106
Si se está preguntando, ¿por qué usé la palabra clave " RECHAZAR "? Esta es la única forma en que existe un CVE y no puede encontrar un CPE. Por ejemplo:
$ grep -A5 "<entry id=\"CVE-2016-0001\">" nvdcve-2.0-2016.xml
<entry id="CVE-2016-0001">
<vuln:cve-id>CVE-2016-0001</vuln:cve-id>
<vuln:published-datetime>2017-05-11T10:29:55.767-04:00</vuln:published-datetime>
<vuln:last-modified-datetime>2017-05-11T10:29:55.767-04:00</vuln:last-modified-datetime>
<vuln:summary>** REJECT ** DO NOT USE THIS CANDIDATE NUMBER. ConsultIDs: none. Reason: The CNA or individual who requested this candidate did not associate it with any vulnerability during 2016. Notes: none.</vuln:summary>
</entry>
La razón por la que esto sucede, he explicado en esta pregunta: Categorizando CVE nombre del producto