Skip to content

Commit 9637f27

Browse files
rrobergerlxdev
andauthored
1/27/26 release branch (#3829)
* #3828 Update FAQs page * #3827 Add 1 new CNA + Update 2 CNA's info * cveListSearch: make all CVE ID only searches consistent by quoting the ID --------- Co-authored-by: Roy Lane <rlane@mitre.org>
1 parent 1d5a148 commit 9637f27

5 files changed

Lines changed: 132 additions & 23 deletions

File tree

src/assets/data/CNAsList.json

Lines changed: 71 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12314,21 +12314,21 @@
1231412314
"CNA": {
1231512315
"isRoot": false,
1231612316
"root": {
12317-
"shortName": "n/a",
12318-
"organizationName": "n/a"
12317+
"shortName": "ENISA",
12318+
"organizationName": "EU Agency for Cybersecurity (ENISA)"
1231912319
},
12320-
"roles": [
12321-
{
12322-
"helpText": "",
12323-
"role": "CNA"
12324-
}
12320+
"type": [
12321+
"Vendor"
1232512322
],
1232612323
"TLR": {
1232712324
"shortName": "mitre",
1232812325
"organizationName": "MITRE Corporation"
1232912326
},
12330-
"type": [
12331-
"Vendor"
12327+
"roles": [
12328+
{
12329+
"helpText": "",
12330+
"role": "CNA"
12331+
}
1233212332
]
1233312333
},
1233412334
"country": "Germany"
@@ -26831,7 +26831,7 @@
2683126831
"shortName": "AxxonSoft",
2683226832
"cnaID": "CNA-2025-0045",
2683326833
"organizationName": "AxxonSoft Limited",
26834-
"scope": "AxxonSoft products and solutions, GRUNDIG security products, and C-WERK software solutions.",
26834+
"scope": "AxxonSoft products and solutions, Abetechs GmbH products and solutions (GRUNDIG security products, and C-WERK software solutions).",
2683526835
"contact": [
2683626836
{
2683726837
"email": [
@@ -28076,7 +28076,7 @@
2807628076
},
2807728077
{
2807828078
"shortName": "Nintendo",
28079-
"cnaID": "CNA-2026-0004",
28079+
"cnaID": "CNA-2026-0005",
2808028080
"organizationName": "Nintendo Co., Ltd.",
2808128081
"scope": "System vulnerabilities regarding the Nintendo Switch 2, Nintendo Switch, Nintendo Switch Lite, and vulnerabilities regarding Nintendo Switch 2 and Nintendo Switch applications for which Nintendo is the publisher worldwide.",
2808228082
"contact": [
@@ -28129,5 +28129,65 @@
2812928129
]
2813028130
},
2813128131
"country": "Japan"
28132+
},
28133+
{
28134+
"shortName": "TCL_Smart_Terminal",
28135+
"cnaID": "CNA-2026-0006",
28136+
"organizationName": "TCL Electronics Holdings Limited",
28137+
"scope": "TCL smart TV, smart pad, and mobile phone devices only. Projects listed on <a href='https://github.com/TclSecLab/CNA/blob/main/README_EN.md' target='_blank'>https://github.com/TclSecLab/CNA/blob/main/README_EN.md</a>.",
28138+
"contact": [
28139+
{
28140+
"email": [
28141+
{
28142+
"label": "Email",
28143+
"emailAddr": "security@tcl.com"
28144+
}
28145+
],
28146+
"contact": [],
28147+
"form": []
28148+
}
28149+
],
28150+
"disclosurePolicy": [
28151+
{
28152+
"label": "Policy",
28153+
"language": "",
28154+
"url": "https://github.com/TclSecLab/CNA/blob/main/TSRC%20Disclosure%20Policy.md"
28155+
}
28156+
],
28157+
"securityAdvisories": {
28158+
"alerts": [],
28159+
"advisories": [
28160+
{
28161+
"label": "Advisories 1",
28162+
"url": "https://src.tcl.com/en/noticeList"
28163+
},
28164+
{
28165+
"label": "Advisories 2",
28166+
"url": "https://github.com/TclSecLab/CNA"
28167+
}
28168+
]
28169+
},
28170+
"resources": [],
28171+
"CNA": {
28172+
"isRoot": false,
28173+
"root": {
28174+
"shortName": "n/a",
28175+
"organizationName": "n/a"
28176+
},
28177+
"roles": [
28178+
{
28179+
"helpText": "",
28180+
"role": "CNA"
28181+
}
28182+
],
28183+
"TLR": {
28184+
"shortName": "mitre",
28185+
"organizationName": "MITRE Corporation"
28186+
},
28187+
"type": [
28188+
"Vendor"
28189+
]
28190+
},
28191+
"country": "China"
2813228192
}
2813328193
]

src/assets/data/faqs.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@
7474
"questionId": "who_owns_cve",
7575
"questionText": "Who owns CVE",
7676
"questionResponseParagraphs": [
77-
"Copyright © 1999-2025, <a href='http://www.mitre.org/'>The MITRE Corporation</a>. CVE is a trademark and the CVE logo is a registered trademark of The MITRE Corporation. CVE is sponsored by <a href='https://www.dhs.gov/' target='_blank'>U.S. Department of Homeland Security</a> (DHS) <a href='https://www.cisa.gov/about/divisions-offices/cybersecurity-division'>Cybersecurity and Infrastructure Security Agency</a> (CISA). CISA funds the <a href='https://www.dhs.gov/science-and-technology/hssedi'>Homeland Security Systems Engineering and Development Institute (HSSEDI)</a>, a DHS Federally Funded Research and Development Center (FFRDC) operated by The MITRE Corporation, to operate the CVE Program in cooperation with industry, government, and academic stakeholders under a public/private partnership."
77+
"Copyright © 1999-2026, <a href='http://www.mitre.org/'>The MITRE Corporation</a>. CVE is a trademark and the CVE logo is a registered trademark of The MITRE Corporation. CVE is sponsored by <a href='https://www.dhs.gov/' target='_blank'>U.S. Department of Homeland Security</a> (DHS) <a href='https://www.cisa.gov/about/divisions-offices/cybersecurity-division'>Cybersecurity and Infrastructure Security Agency</a> (CISA). CISA funds the <a href='https://www.dhs.gov/science-and-technology/hssedi'>Homeland Security Systems Engineering and Development Institute (HSSEDI)</a>, a DHS Federally Funded Research and Development Center (FFRDC) operated by The MITRE Corporation, to operate the CVE Program in cooperation with industry, government, and academic stakeholders under a public/private partnership."
7878
]
7979
},
8080
{

src/assets/data/metrics.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1172,7 +1172,7 @@
11721172
"data": [
11731173
{
11741174
"month": "January",
1175-
"value": "5"
1175+
"value": "6"
11761176
},
11771177
{
11781178
"month": "February",

src/assets/data/news.json

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,26 @@
11
{
22
"currentNews": [
3+
{
4+
"id": 623,
5+
"newsType": "news",
6+
"title": "TCL Added as CVE Numbering Authority (CNA)",
7+
"urlKeywords": "TCL Added as CNA",
8+
"date": "2026-01-27",
9+
"description": [
10+
{
11+
"contentnewsType": "paragraph",
12+
"content": "<a href='/PartnerInformation/ListofPartners/partner/TCL_Smart_Terminal'>TCL Electronics Holdings Limited</a> is now a <a href='/ResourcesSupport/Glossary?activeTerm=glossaryCNA'>CVE Numbering Authority (CNA)</a> for TCL smart TV, smart pad, and mobile phone devices only. Projects listed on <a href='https://github.com/TclSecLab/CNA/blob/main/README_EN.md' target='_blank'>https://github.com/TclSecLab/CNA/blob/main/README_EN.md</a>."
13+
},
14+
{
15+
"contentnewsType": "paragraph",
16+
"content": "To date, <a href='/PartnerInformation/ListofPartners'>490 CNAs</a> (487 CNAs and 3 CNA-LRs) from <a href='/ProgramOrganization/CNAs'>41 countries</a> and 1 no country affiliation have partnered with the CVE Program. CNAs are organizations from around the world that are authorized to assign <a href='/ResourcesSupport/Glossary?activeTerm=glossaryCVEID'>CVE Identifiers (CVE IDs)</a> and publish <a href='/ResourcesSupport/Glossary?activeTerm=glossaryRecord'>CVE Records</a> for vulnerabilities affecting products within their distinct, agreed-upon scope, for inclusion in first-time public announcements of new vulnerabilities. TCL is the 24th CNA from China."
17+
},
18+
{
19+
"contentnewsType": "paragraph",
20+
"content": "TCL’s Root is the <a href='/PartnerInformation/ListofPartners/partner/mitre'>MITRE TL-Root</a>."
21+
}
22+
]
23+
},
324
{
425
"id": 622,
526
"newsType": "news",
@@ -126,7 +147,7 @@
126147
"id": 616,
127148
"displayOnHomepageOrder": 1,
128149
"newsType": "blog",
129-
"title": "CVE Program to Normalize Formatting of Date/Time Fields Across Historical CVE Records Beginning in February 2026",
150+
"title": "CVE Program to Normalize Formatting of Date/Time Fields Across Historical CVE Records Beginning in Mid-February 2026",
130151
"urlKeywords": "Historic CVE Record Date Time Fields Normalized",
131152
"date": "2026-01-06",
132153
"author": {
@@ -141,7 +162,7 @@
141162
"description": [
142163
{
143164
"contentnewsType": "paragraph",
144-
"content": "The <a href='/'>CVE&trade; Program</a> is planning to begin normalizing the formatting of date/time fields across historical <a href='/ResourcesSupport/Glossary?activeTerm=glossaryRecord'>CVE Records</a> in February 2026 (see the “Timeline” section below). This update will align older records with the standardized format already used for all new and updated records since February 2025:"
165+
"content": "The <a href='/'>CVE&trade; Program</a> is planning to begin normalizing the formatting of date/time fields across historical <a href='/ResourcesSupport/Glossary?activeTerm=glossaryRecord'>CVE Records</a> in mid-February 2026 (see the “Timeline” section below). This update will align older records with the standardized format already used for all new and updated records since February 2025:"
145166
},
146167
{
147168
"contentnewsType": "paragraph",

src/stores/cveListSearch.js

Lines changed: 36 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,18 @@ import { useErrorMessageStore } from './cveRecord';
33
import { useGenericGlobalsStore } from './genericGlobals';
44
import axios from 'axios';
55

6+
// Users may search for a CVE ID by either specifying it with or without quotes.
7+
// The regular expresssion object defined here will detect if a string is solely
8+
// a CVE ID (quotes optional). It's used to extract the CVE ID. This helps to
9+
// yield consistent results independent of whether the user has enclosed the CVE
10+
// ID in quotes.
11+
12+
const cveIdRegex = '(?<cveid>CVE-\\d{4}-\\d{4,7})';
13+
14+
const searchCveIdRegex = `^"?${cveIdRegex}"?\$`;
15+
16+
const searchCveIdRe = RegExp(searchCveIdRegex, 'i');
17+
618
export const useCveListSearchStore = defineStore('cveListSearch ', {
719
state: () => {
820
return {
@@ -66,30 +78,46 @@ export const useCveListSearchStore = defineStore('cveListSearch ', {
6678
}
6779
},
6880
actions: {
81+
cveIdSearchTerm() {
82+
83+
// This method returns true if the search query is a CVE ID, optionally
84+
// surrounded by quotes. If this is the case, the CVE ID is extracted,
85+
// normalized, and the query set to the quoted CVE ID. By enclosing
86+
// the CVE ID in quotes, the search won't break it up into its parts
87+
// which is certainly not what the user expects. This will make the
88+
// search quicker and provide better results for CVE ID only searches.
89+
90+
const cveIdMatch = searchCveIdRe.exec(this.query);
91+
if (cveIdMatch) {
92+
this.cveId = cveIdMatch.groups.cveid.toUpperCase();
93+
this.query = `"${this.cveId}"`;
94+
}
95+
96+
return cveIdMatch !== null;
97+
},
6998
decrement(field) {
7099
this[field] -= 1;
71100
},
72-
isCveIdPattern() {
73-
return new RegExp(/^CVE-\d{4}-\d{4,7}$/, 'i').test(this.query);
74-
},
75101
resetResults() {
76102
this.searchResults = [];
77103
this.totalSearchResultCount = 0;
78104
},
79105
async search() {
80106
this.isSearching = true;
81-
try{
107+
108+
const isCveIdSearch = this.cveIdSearchTerm();
109+
110+
try {
82111

83112
// * query search service
84113
this.totalExecutingRequests = 1;
114+
85115
await this.getSearchResults();
86116

87-
if (this.isCveIdPattern()) {
117+
if (isCveIdSearch) {
88118

89119
// The user's query is one CVE ID.
90120

91-
this.cveId = this.query.toUpperCase();
92-
93121
if (this.searchResults.length === 1
94122
&& this.searchResults[0].cveId === this.cveId) {
95123

@@ -116,7 +144,7 @@ export const useCveListSearchStore = defineStore('cveListSearch ', {
116144
}
117145
} catch (error) {
118146
// if record is not found, find potential reserved/rejected ID
119-
if (this.isCveIdPattern() && Object.keys(this.recordData).length === 0) {
147+
if (isCveIdSearch && Object.keys(this.recordData).length === 0) {
120148
await this.getIdData();
121149
} else
122150
throw new Error(`search() >> error with getSearchResults(), getRecordData(): ${error}`);

0 commit comments

Comments
 (0)