draft-ietf-opsawg-sbom-access-03.txt   draft-ietf-opsawg-sbom-access-04.txt 
Network Working Group E. Lear Network Working Group E. Lear
Internet-Draft Cisco Systems Internet-Draft Cisco Systems
Intended status: Standards Track S. Rose Intended status: Standards Track S. Rose
Expires: 27 April 2022 NIST Expires: 9 July 2022 NIST
24 October 2021 5 January 2022
Discovering and Retrieving Software Transparency and Vulnerability Discovering and Retrieving Software Transparency and Vulnerability
Information Information
draft-ietf-opsawg-sbom-access-03 draft-ietf-opsawg-sbom-access-04
Abstract Abstract
To improve cybersecurity posture, automation is necessary to locate To improve cybersecurity posture, automation is necessary to locate
what software is running on a device, whether that software has known what software is running on a device, whether that software has known
vulnerabilities, and what, if any recommendations suppliers may have. vulnerabilities, and what, if any recommendations suppliers may have.
This memo specifies a model to provide access to this information. This memo specifies a model to provide access to this information.
It may optionally be discovered through manufacturer usage It may optionally be discovered through manufacturer usage
descriptions. descriptions.
skipping to change at page 1, line 37 skipping to change at page 1, line 37
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on 27 April 2022. This Internet-Draft will expire on 9 July 2022.
Copyright Notice Copyright Notice
Copyright (c) 2021 IETF Trust and the persons identified as the Copyright (c) 2022 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/ Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document. license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components and restrictions with respect to this document. Code Components
extracted from this document must include Simplified BSD License text extracted from this document must include Revised BSD License text as
as described in Section 4.e of the Trust Legal Provisions and are described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Simplified BSD License. provided without warranty as described in the Revised BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Cases Not Addressed . . . . . . . . . . . . . . . . . . . 4 1.1. Cases Not Addressed . . . . . . . . . . . . . . . . . . . 5
1.2. How This Information Is Retrieved . . . . . . . . . . . . 5 1.2. How This Information Is Retrieved . . . . . . . . . . . . 5
1.3. Formats . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3. Formats . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4. Discussion points . . . . . . . . . . . . . . . . . . . . 5 1.4. Discussion points . . . . . . . . . . . . . . . . . . . . 6
2. The .well-known/transparency endpoint set . . . . . . . . . . 6 2. The well-known transparency endpoint set . . . . . . . . . . 6
3. The mud-transparency extension model extension . . . . . . . 6 3. The mud-transparency extension model extension . . . . . . . 6
4. The mud-sbom augmentation to the MUD YANG model . . . . . . . 7 4. The mud-sbom augmentation to the MUD YANG model . . . . . . . 7
5. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . 10 5. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.1. Without ACLS . . . . . . . . . . . . . . . . . . . . . . 10 5.1. Without ACLS . . . . . . . . . . . . . . . . . . . . . . 10
5.2. SBOM Located on the Device . . . . . . . . . . . . . . . 12 5.2. SBOM Located on the Device . . . . . . . . . . . . . . . 12
5.3. Further contact required. . . . . . . . . . . . . . . . . 13 5.3. Further contact required. . . . . . . . . . . . . . . . . 13
5.4. With ACLS . . . . . . . . . . . . . . . . . . . . . . . . 14 5.4. With ACLS . . . . . . . . . . . . . . . . . . . . . . . . 14
6. Security Considerations . . . . . . . . . . . . . . . . . . . 16 6. Security Considerations . . . . . . . . . . . . . . . . . . . 16
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17
7.1. MUD Extension . . . . . . . . . . . . . . . . . . . . . . 17 7.1. MUD Extension . . . . . . . . . . . . . . . . . . . . . . 17
7.2. Well-Known Prefix . . . . . . . . . . . . . . . . . . . . 17 7.2. YANG Registration . . . . . . . . . . . . . . . . . . . . 17
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 17 7.3. Well-Known Prefix . . . . . . . . . . . . . . . . . . . . 17
8.1. Normative References . . . . . . . . . . . . . . . . . . 17 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 18
8.2. Informative References . . . . . . . . . . . . . . . . . 18 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 18
Appendix A. Changes from Earlier Versions . . . . . . . . . . . 18 9.1. Normative References . . . . . . . . . . . . . . . . . . 18
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 18 9.2. Informative References . . . . . . . . . . . . . . . . . 18
Appendix A. Changes from Earlier Versions . . . . . . . . . . . 19
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19
1. Introduction 1. Introduction
A number of activities have been working to improve visibility to A number of activities have been working to improve visibility to
what software is running on a system, and what vulnerabilities that what software is running on a system, and what vulnerabilities that
software may have. software may have[EO2021].
Put simply, we seek to answer two classes of questions *at scale*: Put simply, we seek to answer two classes of questions *at scale*:
* Is this system vulnerable to a particular vulnerability? * Is this system vulnerable to a particular vulnerability?
* Which devices in a particular environment contain vulnerabilities * Which devices in a particular environment contain vulnerabilities
that require some action? that require some action?
This memo doesn't specify the format of this information, but rather
only how to locate and retrieve these objects.
Software bills of materials (SBOMs) are descriptions of what Software bills of materials (SBOMs) are descriptions of what
software, including versioning and dependencies, a device contains. software, including versioning and dependencies, a device contains.
There are different SBOM formats such as Software Package Data There are different SBOM formats such as Software Package Data
Exchange [SPDX] or CycloneDX[CycloneDX12]. Exchange [SPDX] or CycloneDX[CycloneDX12].
System vulnerabilities may similarly be described using several data System vulnerabilities may similarly be described using several data
formats, including the aforementioned CycloneDX, Common Vulnerability formats, including the aforementioned CycloneDX, Common Vulnerability
Reporting Framework [CVRF], the Common Security Advisory Format Reporting Framework [CVRF], the Common Security Advisory Format
[CSAF]. This information is typically used to report to customers [CSAF]. This information is typically used to report to customers
the state of a system. the state of a system.
skipping to change at page 3, line 34 skipping to change at page 3, line 37
specified in this memo. One can provide only an SBOM, only specified in this memo. One can provide only an SBOM, only
vulnerability information, or both an SBOM and vulnerability vulnerability information, or both an SBOM and vulnerability
information. information.
Note that SBOM formats may also carry other information, the most Note that SBOM formats may also carry other information, the most
common being any licensing terms. Because this specification is common being any licensing terms. Because this specification is
neutral regarding content, it is left for format developers such as neutral regarding content, it is left for format developers such as
the Linux Foundation, OASIS, and ISO to decide what attributes they the Linux Foundation, OASIS, and ISO to decide what attributes they
will support. will support.
This specification does not allow for vulnerability information to be This memo does not specify how vulnerability information may be
retrieved directly from the endpoint. That's because vulnerability retrieved directly from the endpoint. That's because vulnerability
information changes occur at different rates to software updates. information changes occur at different rates to software updates.
However, some SBOM formats may also contain vulnerability
information.
SBOMs and vulnerability information are advertised and retrieved SBOMs and vulnerability information are advertised and retrieved
through the use of a YANG augmentation of the Manufacturer User through the use of a YANG augmentation of the Manufacturer User
Description (MUD) model [RFC8520]. Note that the schema creates a Description (MUD) model [RFC8520]. Note that the schema creates a
grouping that can also be used independently of MUD. Moreover, other grouping that can also be used independently of MUD. Moreover, other
MUD features, such as access controls, needn't be present. MUD features, such as access controls, needn't be present.
The mechanisms specified in this document are meant to satisfy The mechanisms specified in this document are meant to satisfy
several use cases: several use cases:
skipping to change at page 4, line 27 skipping to change at page 4, line 31
* through some form of out-of-band contact with the supplier. * through some form of out-of-band contact with the supplier.
In the first case, devices will have interfaces that permit direct In the first case, devices will have interfaces that permit direct
retrieval. Examples of these interfaces might be an HTTP, COAP or retrieval. Examples of these interfaces might be an HTTP, COAP or
[OpenC2] endpoint for retrieval. There may also be private [OpenC2] endpoint for retrieval. There may also be private
interfaces as well. interfaces as well.
In the second case, when a device does not have an appropriate In the second case, when a device does not have an appropriate
retrieval interface, but one is directly available from the retrieval interface, but one is directly available from the
manufacturer, a URI to that information must be discovered. manufacturer, a URI to that information MUST be discovered.
In the third case, a supplier may wish to make an SBOM or In the third case, a supplier may wish to make an SBOM or
vulnerability information available under certain circumstances, and vulnerability information available under certain circumstances, and
may need to individually evaluate requests. The result of that may need to individually evaluate requests. The result of that
evaluation might be the SBOM or vulnerability itself or a restricted evaluation might be the SBOM or vulnerability itself or a restricted
URL or no access. URL or no access.
To enable application-layer discovery, this memo defines a well-known To enable application-layer discovery, this memo defines a well-known
URI [RFC8615]. Management or orchestration tools can query this URI [RFC8615]. Management or orchestration tools can query this
well-known URI to retrieve a system's SBOM or vulnerability well-known URI to retrieve a system's SBOM or vulnerability
skipping to change at page 6, line 4 skipping to change at page 6, line 17
information is available from the same location, both sbom and vuln information is available from the same location, both sbom and vuln
nodes MUST indicate that. Network management systems retrieving this nodes MUST indicate that. Network management systems retrieving this
information MUST take note that the identical resource is being information MUST take note that the identical resource is being
retrieved rather than retrieving it twice. retrieved rather than retrieving it twice.
1.4. Discussion points 1.4. Discussion points
The following is discussion to be removed at time of RFC publication. The following is discussion to be removed at time of RFC publication.
* Is the model structured correctly? * Is the model structured correctly?
* Are there other retrieval mechanisms that need to be specified? * Are there other retrieval mechanisms that need to be specified?
* Do we need to be more specific in how to authenticate and retrieve * Do we need to be more specific in how to authenticate and retrieve
SBOMs? SBOMs?
* What are the implications if the MUD URL is an extension in a * What are the implications if the MUD URL is an extension in a
certificate (e.g. an IDevID cert)? certificate (e.g. an IDevID cert)?
2. The .well-known/transparency endpoint set 2. The well-known transparency endpoint set
Two well known endpoints are defined: Two well known endpoints are defined:
* "/.well-known/sbom" retrieves an SBOM. * "/.well-known/sbom" retrieves an SBOM.
* "/.well-known/openc2" is the HTTPS binding to OpenC2. * "/.well-known/openc2" is the HTTPS binding to OpenC2.
As discussed previously, the precise format of a response is based on As discussed previously, the precise format of a response is based on
the Content-type provided. the Content-type provided.
skipping to change at page 7, line 31 skipping to change at page 7, line 31
+--:(vuln-contact-info) +--:(vuln-contact-info)
+--rw contact-uri inet:uri +--rw contact-uri inet:uri
4. The mud-sbom augmentation to the MUD YANG model 4. The mud-sbom augmentation to the MUD YANG model
<CODE BEGINS> <CODE BEGINS>
file "ietf-mud-transparency@2021-10-22.yang" file "ietf-mud-transparency@2021-10-22.yang"
module ietf-mud-transparency { module ietf-mud-transparency {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-mud-transparency"; namespace "urn:ietf:params:xml:ns:yang:ietf-mud-transparency";
prefix mud-transparency; prefix mudtx;
import ietf-inet-types { import ietf-inet-types {
prefix inet; prefix inet;
reference "RFC 6991"; reference "RFC 6991";
} }
import ietf-mud { import ietf-mud {
prefix mud; prefix mud;
reference "RFC 8520"; reference "RFC 8520";
} }
organization organization
"IETF OPSAWG (Ops Area) Working Group"; "IETF OPSAWG (Ops Area) Working Group";
contact contact
"WG Web: http://tools.ietf.org/wg/opsawg/ "WG Web: http://tools.ietf.org/wg/opsawg/
WG List: opsawg@ietf.org WG List: opsawg@ietf.org
Editor: Eliot Lear lear@cisco.com Editor: Eliot Lear lear@cisco.com
Editor: Scott Rose scott.rose@nist.gov"; Editor: Scott Rose scott.rose@nist.gov";
description description
"This YANG module augments the ietf-mud model to provide for "This YANG module augments the ietf-mud model to provide for
reporting of SBOMs. reporting of SBOMs and vulnerability information.
Copyright (c) 2020 IETF Trust and the persons identified as Copyright (c) 2020 IETF Trust and the persons identified as
authors of the code. All rights reserved. authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with or Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject to without modification, is permitted pursuant to, and subject to
the license terms contained in, the Simplified BSD License set the license terms contained in, the Simplified BSD License set
forth in Section 4.c of the IETF Trust's Legal Provisions forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents Relating to IETF Documents
(https://trustee.ietf.org/license-info). (https://trustee.ietf.org/license-info).
skipping to change at page 8, line 29 skipping to change at page 8, line 29
The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
'MAY', and 'OPTIONAL' in this document are to be interpreted as 'MAY', and 'OPTIONAL' in this document are to be interpreted as
described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
they appear in all capitals, as shown here. "; they appear in all capitals, as shown here. ";
revision 2021-07-06 { revision 2021-07-06 {
description description
"Initial proposed standard."; "Initial proposed standard.";
reference reference
"RFC XXXX: Extension for software transparency"; "RFC XXXX: Discovering and Retrieving Software Transparency
and Vulnerability Information";
} }
grouping transparency-extension { grouping transparency-extension {
description description
"Transparency extension grouping"; "Transparency extension grouping";
container transparency { container transparency {
description description
"container of methods to get an SBOM."; "container of methods to get an SBOM.";
choice sbom-retrieval-method { choice sbom-retrieval-method {
description description
skipping to change at page 11, line 9 skipping to change at page 11, line 9
5.1. Without ACLS 5.1. Without ACLS
This first MUD file demonstrates how to get SBOM and vulnerability This first MUD file demonstrates how to get SBOM and vulnerability
information without ACLs. information without ACLs.
{ {
"ietf-mud:mud": { "ietf-mud:mud": {
"mud-version": 1, "mud-version": 1,
"extensions": [ "extensions": [
"ol",
"transparency" "transparency"
], ],
"ietf-mud-transparency:transparency": { "ol": {
"sboms": [ "owners": [
{ "Copyright (c) Example, Inc. 2022. All Rights Reserved"
"version-info": "ExOS1.1",
"sbom-url": "https://iot.example.com/info/modelX/sbom.json"
}
], ],
"spdx-tag": "0BSD"
},
"mudtx:transparency": {
"sbom-local-well-known": "https",
"vuln-url": "https://iot.example.com/info/modelX/csaf.json" "vuln-url": "https://iot.example.com/info/modelX/csaf.json"
}, },
"mud-url": "https://iot.example.com/modelX.json", "mud-url": "https://iot.example.com/modelX.json",
"mud-signature": "https://iot.example.com/modelX.p7s", "mud-signature": "https://iot.example.com/modelX.p7s",
"last-update": "2021-07-09T05:57:58+00:00", "last-update": "2022-01-05T13:29:12+00:00",
"cache-validity": 48, "cache-validity": 48,
"is-supported": true, "is-supported": true,
"systeminfo": "retrieving vuln and SBOM info via a cloud service", "systeminfo": "retrieving vuln and SBOM info via a cloud service",
"mfg-name": "Example, Inc.", "mfg-name": "Example, Inc.",
"documentation": "https://iot.example.com/doc/modelX", "documentation": "https://iot.example.com/doc/modelX",
"model-name": "modelX" "model-name": "modelX"
} }
} }
The second example demonstrates that just SBOM information is The second example demonstrates that just SBOM information is
included. included.
{ {
"ietf-mud:mud": { "ietf-mud:mud": {
"mud-version": 1, "mud-version": 1,
"extensions": [ "extensions": [
"ol",
"transparency" "transparency"
], ],
"ietf-mud-transparency:transparency": { "ol": {
"sboms": [ "owners": [
{ "Copyright (c) Example, Inc. 2022. All Rights Reserved"
"version-info": "ExOS1.1", ],
"sbom-url": "https://iot.example.com/info/modelX/sbom.json" "spdx-tag": "0BSD"
} },
] "mudtx:transparency": {
"sbom-local-well-known": "https"
}, },
"mud-url": "https://iot.example.com/modelX.json", "mud-url": "https://iot.example.com/modelX.json",
"mud-signature": "https://iot.example.com/modelX.p7s", "mud-signature": "https://iot.example.com/modelX.p7s",
"last-update": "2021-07-09T06:03:21+00:00", "last-update": "2022-01-05T13:29:47+00:00",
"cache-validity": 48, "cache-validity": 48,
"is-supported": true, "is-supported": true,
"systeminfo": "retrieving vuln and SBOM info via a cloud service", "systeminfo": "retrieving vuln and SBOM info via a cloud service",
"mfg-name": "Example, Inc.", "mfg-name": "Example, Inc.",
"documentation": "https://iot.example.com/doc/modelX", "documentation": "https://iot.example.com/doc/modelX",
"model-name": "modelX" "model-name": "modelX"
} }
} }
5.2. SBOM Located on the Device 5.2. SBOM Located on the Device
In this example, the SBOM is retrieved from the device, while In this example, the SBOM is retrieved from the device, while
vulnerability information is available from the cloud. This is vulnerability information is available from the cloud. This is
likely a common case, because vendors may learn of vulnerability likely a common case, because vendors may learn of vulnerability
information more frequently than they update software. information more frequently than they update software.
{ {
"ietf-mud:mud": { "ietf-mud:mud": {
"mud-version": 1, "mud-version": 1,
"extensions": [ "extensions": [
"ol",
"transparency" "transparency"
], ],
"ol": { "mudtx:transparency": {
"owners": [
"Copyright (c) Example, Inc. 2021. All Rights Reserved"
],
"spdx-tag": "0BSD"
},
"ietf-mud-transparency:transparency": {
"sbom-local-well-known": "https", "sbom-local-well-known": "https",
"vuln-url": "https://iot-device.example.com/info/modelX/csaf.json" "vuln-url": "https://iot-device.example.com/info/modelX/csaf.json"
}, },
"mud-url": "https://iot-device.example.com/modelX.json", "mud-url": "https://iot-device.example.com/modelX.json",
"mud-signature": "https://iot-device.example.com/modelX.p7s", "mud-signature": "https://iot-device.example.com/modelX.p7s",
"last-update": "2021-07-09T06:06:13+00:00", "last-update": "2022-01-05T13:25:14+00:00",
"cache-validity": 48, "cache-validity": 48,
"is-supported": true, "is-supported": true,
"systeminfo": "retrieving vuln and SBOM info via a cloud service", "systeminfo": "retrieving vuln and SBOM info via a cloud service",
"mfg-name": "Example, Inc.", "mfg-name": "Example, Inc.",
"documentation": "https://iot-device.example.com/doc/modelX", "documentation": "https://iot-device.example.com/doc/modelX",
"model-name": "modelX" "model-name": "modelX"
} }
} }
5.3. Further contact required. 5.3. Further contact required.
In this example, the network manager must take further steps to In this example, the network manager must take further steps to
retrieve SBOM information. Vulnerability information is still retrieve SBOM information. Vulnerability information is still
available. available.
{ {
"ietf-mud:mud": { "ietf-mud:mud": {
"mud-version": 1, "mud-version": 1,
skipping to change at page 14, line 36 skipping to change at page 14, line 36
5.4. With ACLS 5.4. With ACLS
Finally, here is a complete example where the device provides SBOM Finally, here is a complete example where the device provides SBOM
and vulnerability information, as well as access-control information. and vulnerability information, as well as access-control information.
{ {
"ietf-mud:mud": { "ietf-mud:mud": {
"mud-version": 1, "mud-version": 1,
"extensions": [ "extensions": [
"ol",
"transparency" "transparency"
], ],
"ietf-mud-transparency:transparency": { "ol": {
"sboms": [ "owners": [
{ "Copyright (c) Example, Inc. 2022. All Rights Reserved"
"version-info": "ExOS1.1",
"sbom-url": "https://iot.example.com/info/modelX/sbom.json"
}
], ],
"spdx-tag": "0BSD"
},
"mudtx:transparency": {
"sbom-local-well-known": "https",
"vuln-url": "https://iot.example.com/info/modelX/csaf.json" "vuln-url": "https://iot.example.com/info/modelX/csaf.json"
}, },
"mud-url": "https://iot.example.com/modelX.json", "mud-url": "https://iot.example.com/modelX.json",
"mud-signature": "https://iot.example.com/modelX.p7s", "mud-signature": "https://iot.example.com/modelX.p7s",
"last-update": "2021-07-09T06:19:39+00:00", "last-update": "2022-01-05T13:30:31+00:00",
"cache-validity": 48, "cache-validity": 48,
"is-supported": true, "is-supported": true,
"systeminfo": "retrieving vuln and SBOM info via a cloud service", "systeminfo": "retrieving vuln and SBOM info via a cloud service",
"mfg-name": "Example, Inc.", "mfg-name": "Example, Inc.",
"documentation": "https://iot.example.com/doc/modelX", "documentation": "https://iot.example.com/doc/modelX",
"model-name": "modelX", "model-name": "modelX",
"from-device-policy": { "from-device-policy": {
"access-lists": { "access-lists": {
"access-list": [ "access-list": [
{ {
"name": "mud-15060-v4fr" "name": "mud-65443-v4fr"
} }
] ]
} }
}, },
"to-device-policy": { "to-device-policy": {
"access-lists": { "access-lists": {
"access-list": [ "access-list": [
{ {
"name": "mud-15060-v4to" "name": "mud-65443-v4to"
} }
] ]
} }
} }
}, },
"ietf-access-control-list:acls": { "ietf-access-control-list:acls": {
"acl": [ "acl": [
{ {
"name": "mud-15060-v4to", "name": "mud-65443-v4to",
"type": "ipv4-acl-type", "type": "ipv4-acl-type",
"aces": { "aces": {
"ace": [ "ace": [
{ {
"name": "cl0-todev", "name": "cl0-todev",
"matches": { "matches": {
"ipv4": { "ipv4": {
"ietf-acldns:src-dnsname": "cloud.example.com" "ietf-acldns:src-dnsname": "iotserver.example.com"
} }
}, },
"actions": { "actions": {
"forwarding": "accept" "forwarding": "accept"
} }
} }
] ]
} }
}, },
{ {
"name": "mud-15060-v4fr", "name": "mud-65443-v4fr",
"type": "ipv4-acl-type", "type": "ipv4-acl-type",
"aces": { "aces": {
"ace": [ "ace": [
{ {
"name": "cl0-frdev", "name": "cl0-frdev",
"matches": { "matches": {
"ipv4": { "ipv4": {
"ietf-acldns:dst-dnsname": "cloud.example.com" "ietf-acldns:dst-dnsname": "iotserver.example.com"
} }
}, },
"actions": { "actions": {
"forwarding": "accept" "forwarding": "accept"
} }
} }
] ]
} }
} }
] ]
skipping to change at page 16, line 30 skipping to change at page 16, line 32
} }
At this point, the management system can attempt to retrieve the At this point, the management system can attempt to retrieve the
SBOM, and determine which format is in use through the content-type SBOM, and determine which format is in use through the content-type
header on the response to a GET request, independently repeat the header on the response to a GET request, independently repeat the
process for vulnerability information, and apply ACLs, as process for vulnerability information, and apply ACLs, as
appropriate. appropriate.
6. Security Considerations 6. Security Considerations
SBOMs provide an inventory of software. If firmware is available to SBOMs provide an inventory of software. If software is available to
an attacker, the attacker may well already be able to derive this an attacker, the attacker may well already be able to derive this
very same software inventory. Manufacturers MAY restrict access to very same software inventory. Manufacturers MAY restrict access to
SBOM information using appropriate authorization semantics within SBOM information using appropriate authorization semantics within
HTTP. In particular, if a system attempts to retrieve an SBOM via HTTP. In particular, if a system attempts to retrieve an SBOM via
HTTP and the client is not authorized, the server MUST produce an HTTP and the client is not authorized, the server MUST produce an
appropriate error, with instructions on how to register a particular appropriate error, with instructions on how to register a particular
client. One example may be to issue a certificate to the client for client. One example may be to issue a certificate to the client for
this purpose after a registration process has taken place. Another this purpose after a registration process has taken place. Another
example would involve the use of OAUTH in combination with a example would involve the use of OAUTH in combination with a
federations of SBOM servers. federations of SBOM servers.
Another risk is a skew in the SBOM listing and the actual software Another risk is a skew in the SBOM listing and the actual software
inventory of a device/container. For example, a manufacturer may inventory of a device/container. For example, a manufacturer may
update the SBOM on its server, but an individual device has not been update the SBOM on its server, but an individual device has not been
upgraded yet. This may result in an incorrect policy being applied upgraded yet. This may result in an incorrect policy being applied
to a device. A unique mapping of a device's firmware version and its to a device. A unique mapping of a device's software version and its
SBOM can minimize this risk. SBOM can minimize this risk.
To further mitigate attacks against a device, manufacturers SHOULD To further mitigate attacks against a device, manufacturers SHOULD
recommend access controls through the normal MUD mechanism. recommend access controls through the normal MUD mechanism.
Vulnerability information is generally made available to such Vulnerability information is generally made available to such
databases as NIST's National Vulnerability Database. It is possible databases as NIST's National Vulnerability Database. It is possible
that vendor may wish to release information early to some customers. that vendor may wish to release information early to some customers.
We do not discuss here whether that is a good idea, but if it is We do not discuss here whether that is a good idea, but if it is
employed, then appropriate access controls and authorization would be employed, then appropriate access controls and authorization would be
skipping to change at page 17, line 22 skipping to change at page 17, line 25
7. IANA Considerations 7. IANA Considerations
7.1. MUD Extension 7.1. MUD Extension
The IANA is requested to add "transparency" to the MUD extensions The IANA is requested to add "transparency" to the MUD extensions
registry as follows: registry as follows:
Extension Name: transparency Extension Name: transparency
Standard reference: This document Standard reference: This document
7.2. Well-Known Prefix 7.2. YANG Registration
The following YANG module should be registered in the "YANG Module
Names" registry:
Name: ietf-mud
URN: urn:ietf:params:xml:ns:yang:ietf-mud-transparency
Prefix: mudtx
Registrant contact: The IESG
Reference: This memo
7.3. Well-Known Prefix
The following well known URIs are requested in accordance with The following well known URIs are requested in accordance with
[RFC8615]: [RFC8615]:
URI suffix: "sbom" URI suffix: "sbom"
Change controller: "IETF" Change controller: "IETF"
Specification document: This memo Specification document: This memo
Related information: See ISO/IEC 19970-2 and SPDX.org Related information: See ISO/IEC 19970-2 and SPDX.org
URI suffix: "openc2" URI suffix: "openc2"
Change controller: "IETF" Change controller: "IETF"
Specification document: This memo Specification document: This memo
Related information: OpenC2 Project Related information: OpenC2 Project
8. References 8. Acknowledgments
8.1. Normative References Thanks to Russ Housley, Dick Brooks, Tom Petch, Nicolas Comstedt, who
provided revew comments.
9. References
9.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types",
RFC 6991, DOI 10.17487/RFC6991, July 2013, RFC 6991, DOI 10.17487/RFC6991, July 2013,
<https://www.rfc-editor.org/info/rfc6991>. <https://www.rfc-editor.org/info/rfc6991>.
skipping to change at page 18, line 14 skipping to change at page 18, line 36
[RFC8520] Lear, E., Droms, R., and D. Romascanu, "Manufacturer Usage [RFC8520] Lear, E., Droms, R., and D. Romascanu, "Manufacturer Usage
Description Specification", RFC 8520, Description Specification", RFC 8520,
DOI 10.17487/RFC8520, March 2019, DOI 10.17487/RFC8520, March 2019,
<https://www.rfc-editor.org/info/rfc8520>. <https://www.rfc-editor.org/info/rfc8520>.
[RFC8615] Nottingham, M., "Well-Known Uniform Resource Identifiers [RFC8615] Nottingham, M., "Well-Known Uniform Resource Identifiers
(URIs)", RFC 8615, DOI 10.17487/RFC8615, May 2019, (URIs)", RFC 8615, DOI 10.17487/RFC8615, May 2019,
<https://www.rfc-editor.org/info/rfc8615>. <https://www.rfc-editor.org/info/rfc8615>.
8.2. Informative References 9.2. Informative References
[CSAF] OASIS, "Common Security Advisory Format", July 2021, [CSAF] OASIS, "Common Security Advisory Format", July 2021,
<https://github.com/oasis-tcs/csaf>. <https://github.com/oasis-tcs/csaf>.
[CVRF] Santos, O., Ed., "Common Vulnerability Reporting Framework [CVRF] Santos, O., Ed., "Common Vulnerability Reporting Framework
(CVRF) Version 1.2", September 2017, <http://docs.oasis- (CVRF) Version 1.2", September 2017, <https://docs.oasis-
open.org/csaf/csaf-cvrf/v1.2/csaf-cvrf-v1.2.pdf>. open.org/csaf/csaf-cvrf/v1.2/csaf-cvrf-v1.2.pdf>.
[CycloneDX12] [CycloneDX12]
cylonedx.org, "CycloneDX XML Reference v1.2", May 2020. cylonedx.org, "CycloneDX XML Reference v1.2", May 2020.
[EO2021] Biden, J., "Executive Order 14028, Improving the Nations
Cybersecurity", May 2021.
[OpenC2] Lemire, D., Ed., "Specification for Transfer of OpenC2 [OpenC2] Lemire, D., Ed., "Specification for Transfer of OpenC2
Messages via HTTPS Version 1.0", July 2019, Messages via HTTPS Version 1.0", July 2019,
<https://docs.oasis-open.org/openc2/open-impl-https/v1.0/ <https://docs.oasis-open.org/openc2/open-impl-https/v1.0/
open-impl-https-v1.0.html>. open-impl-https-v1.0.html>.
[SPDX] The Linux Foundation, "SPDX Specification 2.1", 2016. [SPDX] The Linux Foundation, "SPDX Specification 2.1", 2016.
Appendix A. Changes from Earlier Versions Appendix A. Changes from Earlier Versions
Draft -04: * Address review comments
Draft -02: Draft -02:
* include vulnerability information * include vulnerability information
Draft -01: Draft -01:
* some modest changes * some modest changes
Draft -00: Draft -00:
 End of changes. 49 change blocks. 
70 lines changed or deleted 99 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/