GCVE Best Current Practice
GCVE BCP-05-X-03 - Vulnerability Handling and Disclosure Timeline
GCVE BCP-05-X-03: Vulnerability Handling and Disclosure Timeline

- Version: 1.0
- Status: Draft
- Date: 2026-10-01
- Authors: GCVE Working Group
- BCP Extended ID: BCP-05
- BCP ID: BCP-05-X-03
This guide is distributed and available under CC-BY-4.0.
Copyright (C) 2026 GCVE Initiative.
Abstract
This document defines an extension to GCVE BCP-05 for representing the handling, coordination, remediation, disclosure, and regulatory notification timeline associated with a vulnerability advisory.
The extension provides a machine-readable representation of significant events during the vulnerability lifecycle, following the principles described in GCVE BCP-02 — Practical Guide to Vulnerability Handling and Disclosure.
It additionally provides an optional mechanism for recording regulatory notification milestones, including timelines associated with the European Union Cyber Resilience Act (CRA), without conflating regulatory notification with coordinated vulnerability disclosure or public publication.
The objective is to improve transparency, interoperability, process analysis, and automation while preserving the distinction between:
- vulnerability discovery and reporting;
- acknowledgement and validation;
- coordinated vulnerability disclosure;
- remediation and availability of corrective measures;
- public advisory publication; and
- regulatory notifications.
Motivation
GCVE BCP-02 recommends that vulnerability advisories include a discovery and disclosure timeline describing significant events such as when a vulnerability was reported, fixed, and publicly disclosed.
In practice, vulnerability handling contains considerably more useful information than these three dates. A complete process may include:
- initial discovery;
- report submission;
- acknowledgement;
- vulnerability validation;
- identifier allocation;
- coordination with affected parties;
- agreement or modification of an embargo;
- development and testing of remediation;
- availability of a workaround;
- availability of a corrective measure;
- detection of active exploitation;
- public disclosure; and
- regulatory notification.
Recording these events in a structured form enables vulnerability databases, CSIRTs, GNAs, CNAs, vendors, open-source projects, researchers, and CVD platforms to exchange and analyse handling timelines consistently.
Regulatory requirements can introduce additional deadlines that are related to, but distinct from, the CVD process. For example, under the European Union Cyber Resilience Act, a manufacturer becoming aware of an actively exploited vulnerability may be subject to specific notification deadlines.
This extension therefore models operational vulnerability-handling events separately from regulatory notification requirements.
Placement
The extension MUST be placed in the extensions object of a GCVE BCP-05 record using the key bcp-05-x-03.
Its value MUST contain one x_timeline object.
|
|
The regulatory member is OPTIONAL.
Data Model
The x_timeline object contains:
| Field | Type | Required | Description |
|---|---|---|---|
events |
array of objects | yes | Chronological vulnerability handling and disclosure events. |
regulatory |
array of objects | no | Regulatory assessments and notification timelines associated with the vulnerability. |
Handling and Disclosure Events
Each member of events represents a significant event in the vulnerability lifecycle.
Example:
|
|
Event Fields
| Field | Type | Required | Description |
|---|---|---|---|
id |
string | yes | Identifier unique within the timeline. |
type |
string | yes | Type of vulnerability lifecycle event. |
timestamp |
string | yes | ISO 8601 date or RFC 3339 date-time at which the event occurred. |
actor |
string | no | Role primarily responsible for or associated with the event. |
description |
string | no | Human-readable description of the event. |
references |
array of strings | no | Public references providing supporting information about the event. |
When a precise time is known, an RFC 3339 date-time SHOULD be used and UTC (Z) SHOULD be preferred.
When only a calendar date is reliably known, an ISO 8601 full date MAY be used.
Event Types
The following event types are defined:
| Event type | Description |
|---|---|
discovered |
The vulnerability was initially discovered. |
reported |
The vulnerability was reported to a vendor, maintainer, coordinator, GNA, CNA, or other appropriate party. |
received |
The vulnerability report was received by the handling organization. |
acknowledged |
Receipt of the vulnerability report was acknowledged. |
triaged |
Initial security triage was performed. |
validated |
The vulnerability was reproduced, confirmed, or otherwise validated. |
rejected |
The report was determined not to represent a vulnerability or was otherwise rejected. |
identifier-assigned |
A GCVE, CVE, or other vulnerability identifier was assigned. |
coordination-started |
Coordinated vulnerability handling involving one or more parties began. |
affected-party-notified |
An affected vendor, maintainer, downstream project, or other relevant party was notified. |
embargo-agreed |
A coordinated disclosure or embargo date was agreed. |
embargo-extended |
An existing coordinated disclosure deadline was extended. |
remediation-started |
Development of a corrective or mitigating measure began. |
mitigation-available |
A workaround or temporary mitigation became available. |
fix-developed |
A corrective change was developed but was not necessarily publicly available. |
fix-available |
A security update, patch, corrected release, or other corrective measure became available to users. |
exploit-observed |
Exploitation of the vulnerability was observed or reliably established. |
public-disclosure-planned |
A public disclosure date was established. |
public-disclosure |
Vulnerability information was publicly disclosed. |
advisory-published |
A vulnerability advisory was published. |
advisory-updated |
A previously published advisory was materially updated. |
case-closed |
The handling or coordination case was considered closed. |
other |
Another significant lifecycle event not covered by the defined vocabulary. |
Event types are intended to describe facts rather than workflow states.
Producers MAY omit events that are unknown or not relevant.
Consumers MUST NOT infer that an omitted event did not occur.
Additional event types MAY be introduced in future revisions of this extension. Consumers MUST ignore event types they do not understand rather than rejecting the complete extension.
Actor Values
The actor field MAY use one of the following values:
reporterresearchervendormaintainercoordinatorgnacnacsirtregulatordownstreamother
The role identifies the party associated with the event and does not require the publication of a natural person’s identity.
Regulatory Timeline
The optional regulatory array represents regulatory processes associated with the vulnerability.
Regulatory notification is distinct from public vulnerability disclosure.
A notification to a competent authority, national CSIRT, ENISA, or another regulatory recipient MUST NOT be represented as a public-disclosure event unless the vulnerability information was actually made public.
Each regulatory entry describes one regulatory framework or reporting regime.
Example:
|
|
Regulatory Fields
| Field | Type | Required | Description |
|---|---|---|---|
framework |
string | yes | Regulatory framework or reporting regime. |
jurisdiction |
string | no | Jurisdiction associated with the framework. |
assessment |
string | yes | Publisher’s current assessment of whether the reporting framework applies. |
trigger |
string | no | Event or condition potentially triggering the reporting requirement. |
awarenessAt |
string | no | Time at which the relevant organization became aware of the condition triggering the obligation. |
notifications |
array of objects | no | Notifications, reports, or other regulatory milestones. |
notes |
string | no | Additional non-sensitive context. |
Assessment Values
The assessment field MUST use one of:
not-assessednot-applicablepotentially-applicableapplicable
The value expresses the publisher’s process assessment and MUST NOT be interpreted by consumers as an authoritative legal determination.
Regulatory Notification Object
Each regulatory notification MAY contain:
| Field | Type | Required | Description |
|---|---|---|---|
type |
string | yes | Type of notification or regulatory milestone. |
triggerEvent |
string | no | id of an event in events that starts or materially affects the relevant deadline. |
dueAt |
string | no | Applicable deadline calculated by the producer. |
submittedAt |
string | no | Actual submission timestamp. |
status |
string | no | Current processing state. |
channel |
string | no | Reporting mechanism or platform used. |
reference |
string | no | Non-sensitive identifier or reference for the submission. |
basis |
string | no | Human-readable reference to the provision establishing the requirement. |
notes |
string | no | Additional non-sensitive context. |
Notification Status
The status field SHOULD use one of:
pendingsubmittedupdatednot-requiredwithdrawn
These values describe workflow state only.
A submitted value MUST NOT by itself be interpreted as evidence of regulatory compliance.
European Union Cyber Resilience Act Profile
This extension defines EU-CRA as the conventional framework identifier for reporting associated with Regulation (EU) 2024/2847, the Cyber Resilience Act.
For an actively exploited vulnerability, an entry MAY use:
|
|
When the publisher determines that the relevant CRA reporting requirement applies, assessment SHOULD be applicable.
The timeline MAY record the manufacturer’s awareness time using awarenessAt.
For an actively exploited vulnerability, the following notification types are defined:
early-warning
Represents the early warning notification required without undue delay and, where applicable, within 24 hours after the manufacturer becomes aware of the actively exploited vulnerability.
Recommended basis:
Regulation (EU) 2024/2847 Article 14(2)(a)vulnerability-notification
Represents the subsequent vulnerability notification required without undue delay and, where applicable, within 72 hours after awareness, unless the relevant information has already been provided.
Recommended basis:
Regulation (EU) 2024/2847 Article 14(2)(b)final-report
Represents the final report associated with an actively exploited vulnerability.
The relevant deadline is based on the availability of a corrective or mitigating measure rather than the original awareness timestamp.
A final-report SHOULD therefore use triggerEvent to reference the corresponding fix-available or mitigation-available event when that event is represented in the timeline.
Recommended basis:
Regulation (EU) 2024/2847 Article 14(2)(c)For CRA actively exploited vulnerability reporting, the final report is, where applicable, due no later than 14 days after a corrective or mitigating measure becomes available.
CRA Example
|
|
Relationship Between BCP-02 and Regulatory Timelines
GCVE BCP-02 defines practical recommendations for coordinated vulnerability handling and disclosure.
The events represented by this extension provide a machine-readable expression of that process.
In particular:
discovered
|
reported
|
received / acknowledged
|
triaged / validated
|
coordination-started
|
remediation-started
|
mitigation-available / fix-developed
|
fix-available
|
public-disclosure / advisory-published
|
case-closedIndividual cases MAY omit steps, contain additional steps, or execute several steps in parallel.
Regulatory processes MAY branch from this timeline independently:
+--> regulatory awareness
| |
validated/exploit--+ +--> early warning
|
+--> vulnerability notification
|
fix/mitigation available ---+--> final reportThe existence of regulatory reporting MUST NOT modify the semantics of CVD events.
In particular:
- a CRA early warning is not a public disclosure;
- a CRA vulnerability notification is not an advisory publication;
- assignment of a GCVE or CVE identifier does not by itself trigger or satisfy a CRA reporting obligation;
- publication of a vulnerability advisory does not by itself satisfy a regulatory reporting requirement; and
- regulatory reporting does not by itself mean vulnerability information has been publicly disclosed.
Public Disclosure and Corrective Measures
BCP-02 recommends coordinating public disclosure with the availability of a fix or other protective measure whenever practical.
For products within the scope of applicable regulation, additional vulnerability-handling requirements may apply.
The operational timeline SHOULD therefore distinguish at least:
fix-developedfrom:
fix-availableand from:
public-disclosureA fix can exist internally before it is available to users, and the availability of a corrective measure can itself trigger a regulatory deadline.
Processing and Validation Requirements
-
eventsMUST contain an array of event objects. -
Every event MUST contain a unique
id, atype, and atimestamp. -
Events SHOULD be ordered chronologically.
-
Producers MUST preserve the factual distinction between report receipt, validation, remediation, availability of a corrective measure, and public disclosure.
-
A
triggerEventMUST reference an existing eventidwithin the samex_timelineobject. -
Regulatory notifications MUST NOT be represented as public disclosure unless the underlying information was actually made public.
-
dueAtvalues SHOULD represent deadlines determined by the producer from the applicable regulatory requirements. Consumers SHOULD NOT independently infer legal compliance solely by comparingdueAtandsubmittedAt. -
Regulatory deadlines MAY depend on facts, exceptions, interpretations, or subsequent regulatory guidance not represented in the vulnerability record.
-
assessment: applicableindicates the producer’s assessment and MUST NOT be interpreted as a definitive legal determination by downstream consumers. -
Unknown event types, regulatory frameworks, notification types, or fields MUST NOT cause consumers to reject the complete extension.
-
Producers SHOULD include only information that is appropriate for the distribution level of the containing vulnerability record.
-
Producers MUST NOT publish confidential regulatory identifiers, coordination details, personal information, or non-public vulnerability information merely for the purpose of completing the timeline.
Updates and Corrections
A vulnerability timeline can evolve after publication.
For example:
-
active exploitation may be discovered after an advisory has been published;
-
additional affected parties may be identified;
-
a corrective measure may be replaced;
-
regulatory notifications may be updated;
-
an embargo may change;
-
the advisory may be corrected or expanded.
Producers MAY append additional events to the timeline.
Previously published factual events SHOULD NOT normally be removed. If an event was incorrect, the publisher SHOULD correct it in a way that preserves sufficient provenance to understand the change when supported by the surrounding publication system.
Privacy and Security Considerations
Vulnerability-handling timelines can reveal sensitive operational information.
In particular, they may disclose:
-
when an organization first became aware of a vulnerability;
-
the existence of confidential coordination;
-
vendors or downstream projects that were privately notified;
-
regulatory submissions;
-
internal remediation activities;
-
embargo periods;
-
non-public exploitation information; or
-
identifiers issued by regulatory platforms.
A producer MUST review timeline data before publication.
The presence of fields such as description, reference, or notes MUST NOT be used to publish confidential information that would otherwise be excluded from the vulnerability advisory.
When this extension is used internally before public disclosure, implementations MAY maintain additional non-public events. These SHOULD be removed, redacted, or transformed as appropriate before publishing the GCVE record.
The reference field of a regulatory notification SHOULD NOT contain confidential CRA SRP submission identifiers unless their publication has explicitly been determined to be appropriate.
Legal and Regulatory Considerations
This extension is a vulnerability-information interchange format and not a compliance determination mechanism.
Regulatory deadlines and requirements may change through legislation, delegated acts, implementing acts, regulatory guidance, judicial interpretation, or other applicable rules.
Therefore:
-
producers are responsible for determining which regulatory obligations apply;
-
consumers MUST NOT treat the presence or absence of this extension as evidence of regulatory compliance;
-
consumers MUST NOT treat timeline calculations as legal advice; and
-
regulatory profiles SHOULD be revised when the applicable framework changes.
The explicit dueAt field is preferred over requiring consumers to calculate regulatory deadlines from hard-coded rules. This allows the format to remain useful when regulatory requirements evolve.
Interoperability Considerations
The timeline is intended to complement rather than replace existing BCP-05 and CVE record fields.
The extension SHOULD NOT duplicate:
-
vulnerability descriptions;
-
affected product information;
-
CVSS metrics;
-
CWE classifications;
-
references already represented by the containing record; or
-
KEV assertions.
Where active exploitation is established, a publisher SHOULD additionally consider publishing the corresponding machine-readable information using GCVE BCP-07.
BCP-05-X-01 MAY be used when AI-assisted processing contributed to the generation or analysis of timeline information.
BCP-05-X-02 MAY be used when vulnerability metadata or remediation information was derived from analysis of a software patch.
Minimal Example
A producer that only wants to publish the disclosure history MAY use:
|
|
Example JSON Paths
The handling events for a vulnerability are located at:
containers.cna.x_gcve[0].extensions.bcp-05-x-03.x_timeline.eventsThe CRA regulatory timeline is located at:
containers.cna.x_gcve[0].extensions.bcp-05-x-03.x_timeline.regulatoryAn individual regulatory notification can therefore be located under:
containers.cna.x_gcve[0].extensions.bcp-05-x-03.x_timeline.regulatory[].notifications[]Relationship to Other GCVE BCPs
This extension complements:
- GCVE BCP-02 — defines the practical vulnerability handling and coordinated disclosure process represented by the timeline.
- GCVE BCP-04 — identifier allocation may be represented using the
identifier-assignedevent. - GCVE BCP-05 — defines the containing GCVE vulnerability record.
- GCVE BCP-05-X-01 — can describe AI assistance used during vulnerability analysis or advisory preparation.
- GCVE BCP-05-X-02 — can preserve provenance where vulnerability information was generated from software patches.
- GCVE BCP-07 — should be considered when the timeline establishes known exploitation.
- GCVE BCP-12 — sightings may provide evidence relevant to an
exploit-observedevent.
The extension is intentionally generic enough to represent non-CRA regulatory or contractual vulnerability-reporting timelines in future implementations.