## National Vunerability Database Feed ### Overview The Common Vulnerabilities and Exposures (CVE) program is a dictionary or glossary of vulnerabilities that have been identified for specific code bases, such as software applications or open libraries. A unique identifier known as the CVE ID allows stakeholders a common means of discussing and researching a specific, unique exploit. The Common Platform Enumeration (CPE) program fulfills a function similar to the CVE program for IT products and platforms. The Security Content Automation Protocol (SCAP) program combines CVE and CPE in a suite of tools to help automate vulnerability management and evaluate compliance with federal information technology security requirements. The NVD maintains the authoritative CPE dictionary, while the CVE program is maintained by the MITRE corporation. Both programs are sponsored by the U.S. Department of Homeland Security (DHS) and the Cybersecurity and Infrastructure Security Agency (CISA). The National Vulnerability Database (NVD) is tasked with analyzing each CVE once it has been published to the CVE List. NVD analysts use the reference information provided with the CVE and any publicly available information at the time of analysis to associate Reference Tags, Common Vulnerability Scoring System (CVSS) v2.0, CVSS v3.1, CWE, and CPE Applicability statements. CVEs are typically available in the NVD within an hour of their publishing. Once a CVE is in the NVD, analysts can begin the analysis process. The processing time can vary depending on the CVE, the information available, and the quantity of CVEs published within a given timeframe. After analysis is provided, CVEs may be updated (modified). If modifications are available, the NVD publishes these updates once every two hours. The CPE Dictionary is updated nightly when modifications or new names are added. ### Request an API Key Navigate to https://nvd.nist.gov/developers/request-an-api-key On the API key requests page, enter data into the three fields on the requests form. Scroll to the bottom of the Terms of Use, and then click the check box marked “I agree to the Terms of Use.” Check the inbox of the email address provided in the steps above for an email from nvd-noreply@nist.gov. Activate and view the API Key by opening the single-use hyperlink. Store the API Key in a secure location as the page will no longer be available after it is closed. If your key is not activated within seven days, a request for a new API Key must be submitted. Each API Key is associated with a single email address. If an email address is used to request an additional API key, clicking the single-use hyperlink will invalidate the key previously associated with that email address. The key will not be invalidated if the email is used to request another key, but the link is not opened. There is no process for retrieving a forgotten key. ### Rate Limits Requesting an API key allows for users to make a greater number of requests in a given time than they could otherwise. The public rate limit (without an API key) is 10 requests in a rolling 60 second window; the rate limit with an API key is 100 requests in a rolling 60 second window. The best practice for making requests within the rate limit is to make requests no more than once every two hours. ### Filtering It is recommended to filter in the CVE or CPE selections using the 'CPE Match String' or CVSS filters. This allows you to only pull the indicators that are relevant for you. Filtering can be achieved with a combination of the following: #### CPE Match String This parameter is used to filter products based on the CPE match criteria. The value is compared it against the CPE Match Criteria present on all CVE applicability statements. To find CPE names for Microsoft Windows 10, use: cpes/1.0?cpeMatchString=cpe:2.3:o:microsoft:windows_10 To find CPE names for Microsoft Windows 10, version 1511 use: cpes/1.0?cpeMatchString=cpe:2.3:o:microsoft:windows_10:1511 To find all CPE names for Microsoft, use: cpes/1.0?cpeMatchString=cpe:2.3:*:microsoft #### Keyword This parameter is used to retrieve records where a word or phrase is found in the vulnerability / CPE title or reference links. #### CVSS V2 / V3 Metrics These parameters are used to filter vulnerabilities based on CVSS vector strings. Either full or partial vector strings may be used. V2 Example 1: AV:L/AC:H/Au:M/C:N/I:N/A:N V2 Example 2: C:H/A:N V3 Example 1: S:U/AV:N/AC:L/PR:H/UI:N/C:L/I:L/A:N/E:F/RL:X/CR:H/IR:H/AR:H V3 Example 2: S:U/AV:N/AC:L/PR:H/UI:N/C:L/I:L/A:N/E:F/RL:X #### CVSS V2/V3 Severity CVSS refers to the scoring system used by NIST to assess the severity of vulnerabilities, https://www.first.org/cvss/. Either the V2 Severity or V3 Severity parameter may be used to find vulnerabilities having a severity of LOW, MEDIUM, or HIGH. For CVSS V3, cvssV3Severity=CRITICAL is also supported.