Skip to content

Commit 5b65a9e

Browse files
Merge pull request #215 from CycloneDX/v1.5-dev-adversary-risk-extref
Adding external reference support for adversary model and risk assessment
2 parents 9847c91 + 17f98b6 commit 5b65a9e

File tree

3 files changed

+30
-14
lines changed

3 files changed

+30
-14
lines changed

schema/bom-1.5.proto

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -219,32 +219,36 @@ enum ExternalReferenceType {
219219
EXTERNAL_REFERENCE_TYPE_ATTESTATION = 16;
220220
// An enumeration of identified weaknesses, threats, and countermeasures, dataflow diagram (DFD), attack tree, and other supporting documentation in human-readable or machine-readable format
221221
EXTERNAL_REFERENCE_TYPE_THREAT_MODEL = 17;
222+
// The defined assumptions, goals, and capabilities of an adversary.
223+
EXTERNAL_REFERENCE_TYPE_ADVERSARY_MODEL = 18;
224+
// Identifies and analyzes the potential of future events that may negatively impact individuals, assets, and/or the environment. Risk assessments may also include judgments on the tolerability of each risk.
225+
EXTERNAL_REFERENCE_TYPE_RISK_ASSESSMENT = 19;
222226
// The location where a component was published to. This is often the same as "distribution" but may also include specialized publishing processes that act as an intermediary
223-
EXTERNAL_REFERENCE_TYPE_DISTRIBUTION_INTAKE = 18;
227+
EXTERNAL_REFERENCE_TYPE_DISTRIBUTION_INTAKE = 20;
224228
// A Vulnerability Disclosure Report (VDR) which asserts the known and previously unknown vulnerabilities that affect a component, service, or product including the analysis and findings describing the impact (or lack of impact) that the reported vulnerability has on a component, service, or product
225-
EXTERNAL_REFERENCE_TYPE_VULNERABILITY_ASSERTION = 19;
229+
EXTERNAL_REFERENCE_TYPE_VULNERABILITY_ASSERTION = 21;
226230
// A Vulnerability Exploitability eXchange (VEX) which asserts the known vulnerabilities that do not affect a product, product family, or organization, and optionally the ones that do. The VEX should include the analysis and findings describing the impact (or lack of impact) that the reported vulnerability has on the product, product family, or organization
227-
EXTERNAL_REFERENCE_TYPE_EXPLOITABILITY_STATEMENT = 20;
231+
EXTERNAL_REFERENCE_TYPE_EXPLOITABILITY_STATEMENT = 22;
228232
// Results from an authorized simulated cyberattack on a component or service, otherwise known as a penetration test
229-
EXTERNAL_REFERENCE_TYPE_PENTEST_REPORT = 21;
233+
EXTERNAL_REFERENCE_TYPE_PENTEST_REPORT = 23;
230234
// SARIF or proprietary machine or human-readable report for which static analysis has identified code quality, security, and other potential issues with the source code
231-
EXTERNAL_REFERENCE_TYPE_STATIC_ANALYSIS_REPORT = 22;
235+
EXTERNAL_REFERENCE_TYPE_STATIC_ANALYSIS_REPORT = 24;
232236
// Dynamic analysis report that has identified issues such as vulnerabilities and misconfigurations
233-
EXTERNAL_REFERENCE_TYPE_DYNAMIC_ANALYSIS_REPORT = 23;
237+
EXTERNAL_REFERENCE_TYPE_DYNAMIC_ANALYSIS_REPORT = 25;
234238
// Report generated by analyzing the call stack of a running application
235-
EXTERNAL_REFERENCE_TYPE_RUNTIME_ANALYSIS_REPORT = 24;
239+
EXTERNAL_REFERENCE_TYPE_RUNTIME_ANALYSIS_REPORT = 26;
236240
// Report generated by Software Composition Analysis (SCA), container analysis, or other forms of component analysis
237-
EXTERNAL_REFERENCE_TYPE_COMPONENT_ANALYSIS_REPORT = 25;
241+
EXTERNAL_REFERENCE_TYPE_COMPONENT_ANALYSIS_REPORT = 27;
238242
// Report containing a formal assessment of an organization, business unit, or team against a maturity model
239-
EXTERNAL_REFERENCE_TYPE_MATURITY_REPORT = 26;
243+
EXTERNAL_REFERENCE_TYPE_MATURITY_REPORT = 28;
240244
// Industry, regulatory, or other certification from an accredited (if applicable) certification body
241-
EXTERNAL_REFERENCE_TYPE_CERTIFICATION_REPORT = 27;
245+
EXTERNAL_REFERENCE_TYPE_CERTIFICATION_REPORT = 29;
242246
// Report or system in which quality metrics can be obtained
243-
EXTERNAL_REFERENCE_TYPE_QUALITY_METRICS = 28;
247+
EXTERNAL_REFERENCE_TYPE_QUALITY_METRICS = 30;
244248
// Code or configuration that defines and provisions virtualized infrastructure, commonly referred to as Infrastructure as Code (IaC)
245-
EXTERNAL_REFERENCE_TYPE_CODIFIED_INFRASTRUCTURE = 29;
249+
EXTERNAL_REFERENCE_TYPE_CODIFIED_INFRASTRUCTURE = 31;
246250
// A model card describes the intended uses of a machine learning model, potential limitations, biases, ethical considerations, training parameters, datasets used to train the model, performance metrics, and other relevant data useful for ML transparency.
247-
EXTERNAL_REFERENCE_TYPE_MODEL_CARD = 30;
251+
EXTERNAL_REFERENCE_TYPE_MODEL_CARD = 32;
248252
}
249253

250254
enum HashAlg {

schema/bom-1.5.schema.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1121,7 +1121,7 @@
11211121
"type": {
11221122
"type": "string",
11231123
"title": "Type",
1124-
"description": "Specifies the type of external reference.\n\n* __vcs__ = Version Control System\n* __issue-tracker__ = Issue or defect tracking system, or an Application Lifecycle Management (ALM) system\n* __website__ = Website\n* __advisories__ = Security advisories\n* __bom__ = Bill of Materials (SBOM, OBOM, HBOM, SaaSBOM, etc)\n* __mailing-list__ = Mailing list or discussion group\n* __social__ = Social media account\n* __chat__ = Real-time chat platform\n* __documentation__ = Documentation, guides, or how-to instructions\n* __support__ = Community or commercial support\n* __distribution__ = Direct or repository download location\n* __distribution-intake__ = The location where a component was published to. This is often the same as \"distribution\" but may also include specialized publishing processes that act as an intermediary\n* __license__ = The URL to the license file. If a license URL has been defined in the license node, it should also be defined as an external reference for completeness\n* __build-meta__ = Build-system specific meta file (i.e. pom.xml, package.json, .nuspec, etc)\n* __build-system__ = URL to an automated build system\n* __release-notes__ = URL to release notes\n* __security-contact__ = Specifies a way to contact the maintainer, supplier, or provider in the event of a security incident. Common URIs include links to a disclosure procedure, a mailto (RFC-2368) that specifies an email address, a tel (RFC-3966) that specifies a phone number, or dns (RFC-4501]) that specifies the records containing DNS Security TXT\n* __model-card__ = A model card describes the intended uses of a machine learning model, potential limitations, biases, ethical considerations, training parameters, datasets used to train the model, performance metrics, and other relevant data useful for ML transparency.\n* __attestation__ = Human or machine-readable statements containing facts, evidence, or testimony\n* __threat-model__ = An enumeration of identified weaknesses, threats, and countermeasures, dataflow diagram (DFD), attack tree, and other supporting documentation in human-readable or machine-readable format\n* __vulnerability-assertion__ = A Vulnerability Disclosure Report (VDR) which asserts the known and previously unknown vulnerabilities that affect a component, service, or product including the analysis and findings describing the impact (or lack of impact) that the reported vulnerability has on a component, service, or product.\n* __exploitability-statement__ = A Vulnerability Exploitability eXchange (VEX) which asserts the known vulnerabilities that do not affect a product, product family, or organization, and optionally the ones that do. The VEX should include the analysis and findings describing the impact (or lack of impact) that the reported vulnerability has on the product, product family, or organization.\n* __pentest-report__ = Results from an authorized simulated cyberattack on a component or service, otherwise known as a penetration test\n* __static-analysis-report__ = SARIF or proprietary machine or human-readable report for which static analysis has identified code quality, security, and other potential issues with the source code\n* __dynamic-analysis-report__ = Dynamic analysis report that has identified issues such as vulnerabilities and misconfigurations\n* __runtime-analysis-report__ = Report generated by analyzing the call stack of a running application\n* __component-analysis-report__ = Report generated by Software Composition Analysis (SCA), container analysis, or other forms of component analysis\n* __maturity-report__ = Report containing a formal assessment of an organization, business unit, or team against a maturity model\n* __certification-report__ = Industry, regulatory, or other certification from an accredited (if applicable) certification body\n* __quality-metrics__ = Report or system in which quality metrics can be obtained\n* __codified-infrastructure__ = Code or configuration that defines and provisions virtualized infrastructure, commonly referred to as Infrastructure as Code (IaC)\n* __other__ = Use this if no other types accurately describe the purpose of the external reference",
1124+
"description": "Specifies the type of external reference.\n\n* __vcs__ = Version Control System\n* __issue-tracker__ = Issue or defect tracking system, or an Application Lifecycle Management (ALM) system\n* __website__ = Website\n* __advisories__ = Security advisories\n* __bom__ = Bill of Materials (SBOM, OBOM, HBOM, SaaSBOM, etc)\n* __mailing-list__ = Mailing list or discussion group\n* __social__ = Social media account\n* __chat__ = Real-time chat platform\n* __documentation__ = Documentation, guides, or how-to instructions\n* __support__ = Community or commercial support\n* __distribution__ = Direct or repository download location\n* __distribution-intake__ = The location where a component was published to. This is often the same as \"distribution\" but may also include specialized publishing processes that act as an intermediary\n* __license__ = The URL to the license file. If a license URL has been defined in the license node, it should also be defined as an external reference for completeness\n* __build-meta__ = Build-system specific meta file (i.e. pom.xml, package.json, .nuspec, etc)\n* __build-system__ = URL to an automated build system\n* __release-notes__ = URL to release notes\n* __security-contact__ = Specifies a way to contact the maintainer, supplier, or provider in the event of a security incident. Common URIs include links to a disclosure procedure, a mailto (RFC-2368) that specifies an email address, a tel (RFC-3966) that specifies a phone number, or dns (RFC-4501]) that specifies the records containing DNS Security TXT\n* __model-card__ = A model card describes the intended uses of a machine learning model, potential limitations, biases, ethical considerations, training parameters, datasets \n* __attestation__ = Human or machine-readable statements containing facts, evidence, or testimony\n* __threat-model__ = An enumeration of identified weaknesses, threats, and countermeasures, dataflow diagram (DFD), attack tree, and other supporting documentation in human-readable or machine-readable format\n* __adversary-model__ = The defined assumptions, goals, and capabilities of an adversary.\n* __risk-assessment__ = Identifies and analyzes the potential of future events that may negatively impact individuals, assets, and/or the environment. Risk assessments may also include judgments on the tolerability of each risk.\n* __vulnerability-assertion__ = A Vulnerability Disclosure Report (VDR) which asserts the known and previously unknown vulnerabilities that affect a component, service, or product including the analysis and findings describing the impact (or lack of impact) that the reported vulnerability has on a component, service, or product.\n* __exploitability-statement__ = A Vulnerability Exploitability eXchange (VEX) which asserts the known vulnerabilities that do not affect a product, product family, or organization, and optionally the ones that do. The VEX should include the analysis and findings describing the impact (or lack of impact) that the reported vulnerability has on the product, product family, or organization.\n* __pentest-report__ = Results from an authorized simulated cyberattack on a component or service, otherwise known as a penetration test\n* __static-analysis-report__ = SARIF or proprietary machine or human-readable report for which static analysis has identified code quality, security, and other potential issues with the source code\n* __dynamic-analysis-report__ = Dynamic analysis report that has identified issues such as vulnerabilities and misconfigurations\n* __runtime-analysis-report__ = Report generated by analyzing the call stack of a running application\n* __component-analysis-report__ = Report generated by Software Composition Analysis (SCA), container analysis, or other forms of component analysis\n* __maturity-report__ = Report containing a formal assessment of an organization, business unit, or team against a maturity model\n* __certification-report__ = Industry, regulatory, or other certification from an accredited (if applicable) certification body\n* __quality-metrics__ = Report or system in which quality metrics can be obtained\n* __codified-infrastructure__ = Code or configuration that defines and provisions virtualized infrastructure, commonly referred to as Infrastructure as Code (IaC)\n* __other__ = Use this if no other types accurately describe the purpose of the external reference",
11251125
"enum": [
11261126
"vcs",
11271127
"issue-tracker",
@@ -1143,6 +1143,8 @@
11431143
"model-card",
11441144
"attestation",
11451145
"threat-model",
1146+
"adversary-model",
1147+
"risk-assessment",
11461148
"vulnerability-assertion",
11471149
"exploitability-statement",
11481150
"pentest-report",

schema/bom-1.5.xsd

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1219,6 +1219,16 @@ limitations under the License.
12191219
<xs:documentation>An enumeration of identified weaknesses, threats, and countermeasures, dataflow diagram (DFD), attack tree, and other supporting documentation in human-readable or machine-readable format</xs:documentation>
12201220
</xs:annotation>
12211221
</xs:enumeration>
1222+
<xs:enumeration value="adversary-model">
1223+
<xs:annotation>
1224+
<xs:documentation>The defined assumptions, goals, and capabilities of an adversary.</xs:documentation>
1225+
</xs:annotation>
1226+
</xs:enumeration>
1227+
<xs:enumeration value="risk-assessment">
1228+
<xs:annotation>
1229+
<xs:documentation>Identifies and analyzes the potential of future events that may negatively impact individuals, assets, and/or the environment. Risk assessments may also include judgments on the tolerability of each risk.</xs:documentation>
1230+
</xs:annotation>
1231+
</xs:enumeration>
12221232
<xs:enumeration value="vulnerability-assertion">
12231233
<xs:annotation>
12241234
<xs:documentation>A Vulnerability Disclosure Report (VDR) which asserts the known and previously unknown vulnerabilities that affect a component, service, or product including the analysis and findings describing the impact (or lack of impact) that the reported vulnerability has on a component, service, or product.</xs:documentation>

0 commit comments

Comments
 (0)