<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.3.6 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>

<rfc ipr="trust200902" docName="draft-lear-opsawg-sbom-access-00" category="std">

  <front>
    <title abbrev="Accessing SBOMs">Discovering And Accessing Software Bills of Materials</title>

    <author initials="E." surname="Lear" fullname="Eliot Lear">
      <organization>Cisco Systems</organization>
      <address>
        <postal>
          <street>Richtistrasse 7</street>
          <city>Wallisellen</city>
          <code>CH-8304</code>
          <country>Switzerland</country>
        </postal>
        <phone>+41 44 878 9200</phone>
        <email>lear@cisco.com</email>
      </address>
    </author>
    <author initials="S." surname="Rose" fullname="Scott Rose">
      <organization>NIST</organization>
      <address>
        <postal>
          <street>100 Bureau Dr</street>
          <city>Gaithersburg MD</city>
          <code>20899</code>
          <country>USA</country>
        </postal>
        <phone>+1 301-975-8439</phone>
        <email>scott.rose@nist.gov</email>
      </address>
    </author>

    <date year="2020" month="October" day="13"/>

    
    
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>Software bills of materials (SBOMs) are formal descriptions of what
pieces of software are included in a product.  This memo specifies a
different means for SBOMs to be retrieved.</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction" title="Introduction">

<t>Software bills of material (SBOMs) are descriptions of what software,
including versioning and dependencies, a device contains.  There
are different SBOM formats such as Software Package Data Exchange
<xref target="SPDX"/>, Software Identity Tags <xref target="SWID"/>, or CycloneDX<xref target="CycloneDX12"/>.</t>

<t>This memo specifies means by which SBOMs can be advertised and retrieved.</t>

<t>The mechanisms specified in this document are meant to satisfy several
use cases:</t>

<t><list style="symbols">
  <t>An application-layer management system retrieving an SBOM in
order to evaluate the posture of an application server of some
form.  These application servers may themselves be containers or
hypervisors.  Discovery of the topology of a server is beyond the
scope of this memo.</t>
  <t>A network-layer management system retrieving an SBOM from an IoT
device as part of its ongoing lifecycle. Such devices may or may not
have interfaces available to query SBOM information.</t>
</list></t>

<t>To satisfy these two key use cases, SBOMs may be found in one of three
ways:</t>

<t><list style="symbols">
  <t>on devices themselves</t>
  <t>on a web site (e.g., via URI)</t>
  <t>through some form of out-of-band contact with the supplier.</t>
</list></t>

<t>In the first case, devices will have interfaces that permit direct
SBOM retrieval.  Examples of these interfaces might be an
HTTP or COAP endpoint for retrieval.  There may also be private
interfaces as well.</t>

<t>In the second case, when a device does not have an appropriate
interface to retrieve an SBOM, but one is directly available from the
manufacturer, a URI to that information must be discovered.</t>

<t>In the third case, a supplier may wish to make an SBOM available under
certain circumstances, and may need to individually evaluate requests.
The result of that evaluation might be the SBOM itself or a restricted
URL or no access.</t>

<t>To enable application-layer discovery, this memo defines a well-known
URI <xref target="RFC8615"/>.  Management or orchestration tools can query this
well-known URI to retrieve a system’s SBOM.  Further queries may be
necessary based on the content and structure of a particular SBOM.</t>

<t>To enable network-layer discovery, particularly for IOT-based devices,
an extension to Manufacturer Usage Descriptions (MUD) may be
used<xref target="RFC8520"/>.</t>

<t>The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL
NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “NOT RECOMMENDED”,
“MAY”, and “OPTIONAL” in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>

<section anchor="how-this-information-is-used" title="How This Information Is Used">
<t>SBOMs are used for numerous purposes, including vulnerability
assessment, license management, and inventory management.  This memo
provides means for either automated or semi-automated collection of
that information.  For devices that can output a MUD URL or establish
a well-known URI, the mechanism may be highly automated.  For devices
that have a MUD URL in either their documentation or within a QR code
on a box, the mechanism is semi-automated (someone has to scan the QR
code or enter the URL).</t>

<t>Note that SBOMs may change more frequently than access control
requirements.  A change to software does not necessarily mean a change
to control channels that are used.  Therefore, it is important to
retrieve the MUD file as suggested by the manufacturer in the
cache-validity period.  In many cases, only the SBOM list will have
been updated.</t>

</section>
<section anchor="sbom-formats" title="SBOM formats">
<t>There are multiple ways to express an SBOM.  When these are retrieved
either directly from the device or directly from a web server, tools
will need to observe the content-type header to determine precisely
which format is being transmitted.  Because IoT devices in particular
have limited capabilities, use of a specific Accept: header in HTTP 
or the Accept Option in CoAP is NOT RECOMMENDED.  Instead, backend
tooling MUST silently discard SBOM information sent with a media type
that is not understood.</t>

</section>
<section anchor="discussion-points" title="Discussion points">
<t>The following is discussion to be removed at time of RFC publication.</t>

<t><list style="symbols">
  <t>Is the model structured correctly?</t>
  <t>Are there other retrieval mechanisms that need to be specified?</t>
  <t>Do we need to be more specific in how to authenticate and retrieve
SBOMs?</t>
  <t>What are the implications if the MUD URL is an extension in a certificate
(e.g. an IDevID cert)?</t>
</list></t>

</section>
</section>
<section anchor="the-mud-sbom-extension-model-extension" title="The mud-sbom extension model extension">

<t>We now formally define this extension.  This is done in two parts.
First, the extension name “sbom” is listed in the
“extensions” array of the MUD file.</t>

<t>Second, the “mud” container is augmented with a list of SBOM sources.</t>

<t>This is done as follows:</t>

<figure><artwork><![CDATA[
module: ietf-mud-sbom
  augment /mud:mud:
    +--rw sboms* [version-info]
       +--rw version-info         string
       +--rw (sbom-type)?
          +--:(url)
          |  +--rw sbom-url?      inet:uri
          +--:(local-uri)
          |  +--rw sbom-local*    enumeration
          +--:(contact-info)
             +--rw contact-uri?   inet:uri
]]></artwork></figure>

</section>
<section anchor="the-mud-sbom-augmentation-to-the-mud-yang-model" title="The mud-sbom augmentation to the MUD YANG model">

<figure><artwork><![CDATA[
<CODE BEGINS>file "ietf-mud-sbom@2020-03-06.yang"
module ietf-mud-sbom {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-mud-sbom";
  prefix mud-sbom;

  import ietf-inet-types {
    prefix inet;
  }
  import ietf-mud {
    prefix mud;
  }

  organization
    "IETF OPSAWG (Ops Area) Working Group";
  contact
    "WG
     Web: http://tools.ietf.org/wg/opsawg/
     WG List: opsawg@ietf.org
     Author: Eliot Lear lear@cisco.com ";
  description
    "This YANG module augments the ietf-mud model to provide for
     reporting of SBOMs.

     Copyright (c) 2019 IETF Trust and the persons identified as
     authors of the code.  All rights reserved.

     Redistribution and use in source and binary forms, with or
     without modification, is permitted pursuant to, and subject to
     the license terms contained in, the Simplified BSD License set
     forth in Section 4.c of the IETF Trust's Legal Provisions
     Relating to IETF Documents
     (https://trustee.ietf.org/license-info).

     This version of this YANG module is part of RFC XXXX
     (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself for
     full legal notices.

     The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
     NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
     'MAY', and 'OPTIONAL' in this document are to be interpreted as
     described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
     they appear in all capitals, as shown here.  ";

  revision 2020-03-06 {
    description
      "Initial proposed standard.";
    reference
      "RFC XXXX: Extension for MUD Reporting";
  }

  grouping mud-sbom-extension {
    description
      "SBOM extension grouping";
    list sboms {
      key "version-info";
      leaf version-info {
        type string;
        description
          "A version string that is applicable for this SBOM list entry.
           The format of this string is left to the device manufacturer.
           How the network administrator determines the version of
           software running on the device is beyond the scope of this
           memo.";
      }
      choice sbom-type {
        case url {
          leaf sbom-url {
            type inet:uri;
            description
              "A statically located URI.";
          }
        }
        case local-uri {
          leaf-list sbom-local {
            type enumeration {
              enum coap {
                description
                  "Use COAP schema to retrieve SBOM";
              }
              enum coaps {
                description
                  "Use COAPS schema to retrieve SBOM";
              }
              enum http {
                description
                  "Use HTTP schema to retrieve SBOM";
              }
              enum https {
                description
                  "Use HTTPS schema to retrieve SBOM";
              }
            }
            description
              "The choice of sbom-local means that the SBOM resides at
              a location indicated by an indicted scheme for the
              device in question, at well known location
              '/.well-known/sbom'.  For example, if the MUD file
              indicates that coaps is to be used and the host is
              located at address 10.1.2.3, the SBOM could be retrieved
              at 'coaps://10.1.2.3/.well-known/sbom'.  N.B., coap and
              http schemes are NOT RECOMMENDED.";
          }
        }
        case contact-info {
          leaf contact-uri {
            type inet:uri;
            description
              "This MUST be either a tel, http, https, or
               mailto uri schema that customers can use to
               contact someone for SBOM information.";
          }
        }
        description
          "choices for SBOM retrieval.";
      }
      description
        "list of methods to get an SBOM.";
    }
  }

  augment "/mud:mud" {
    description
      "Add extension for SBOMs.";
    uses mud-sbom-extension;
  }
}

<CODE ENDS>
]]></artwork></figure>

</section>
<section anchor="examples" title="Examples">

<t>In this example MUD file that uses a cloud service, the Frobinator
presents a location of the SBOM in a URL.  Note, the ACLs in a MUD
file are NOT required, although they are a very good idea for IP-based
devices.  The first MUD file demonstrates how to get the SBOM without
ACLs, and the second has ACLs.</t>

<section anchor="without-acls" title="Without ACLS">

<figure><artwork><![CDATA[
{
  "ietf-mud:mud": {
    "mud-version": 1,
    "mud-url": "https://iot-device.example.com/dnsname",
    "last-update": "2019-01-15T10:22:47+00:00",
    "cache-validity": 48,
    "is-supported": true,
    "systeminfo": "device that wants to talk to a cloud service",
    "mfg-name": "Example, Inc.",
    "documentation": "https://frobinator.example.com/doc/frob2000",
    "model-name": "Frobinator 2000",
    "extensions" : [ 
       "sbom"
      ],
    "sboms" : [
      {
         "version-info" : "FrobOS Release 1.1",
         "sbom-url" : "https://frobinator.example.com/sboms/f20001.1",
      }
    ]
  }
}
]]></artwork></figure>

</section>
<section anchor="located-on-the-device" title="Located on the Device">

<figure><artwork><![CDATA[
{
  "ietf-mud:mud": {
    "mud-version": 1,
    "mud-url": "https://iot-device.example.com/dnsname",
    "last-update": "2019-01-15T10:22:47+00:00",
    "cache-validity": 48,
    "is-supported": true,
    "systeminfo": "device that wants to talk to a cloud service",
    "mfg-name": "Example, Inc.",
    "documentation": "https://frobinator.example.com/doc/frob2000",
    "model-name": "Frobinator 2000",
    "extensions" : [ 
       "sbom"
      ],
    "sboms" : [
      {
         "version-info" : "FrobOS Release 1.1",
         "sbom-local" : "coaps:///.well-known/sbom",
      }
    ]
  }
}
]]></artwork></figure>

</section>
<section anchor="sbom-obtained-from-contact-information" title="SBOM Obtained from Contact Information">

<figure><artwork><![CDATA[
{
  "ietf-mud:mud": {
    "mud-version": 1,
    "mud-url": "https://iot-device.example.com/dnsname",
    "last-update": "2019-01-15T10:22:47+00:00",
    "cache-validity": 48,
    "is-supported": true,
    "systeminfo": "device that wants to talk to a cloud service",
    "mfg-name": "Example, Inc.",
    "documentation": "https://frobinator.example.com/doc/frob2000",
    "model-name": "Frobinator 2000",
    "extensions" : [ 
       "sbom"
      ],
    "sboms" : [
      {
         "version-info" : "FrobOS Release 1.1",
         "contact-uri" : "mailto:sbom-requst@example.com",
      }
    ]
  }
}
]]></artwork></figure>

</section>
<section anchor="with-acls" title="With ACLS">

<figure><artwork><![CDATA[
{
  "ietf-mud:mud": {
    "mud-version": 1,
    "mud-url": "https://iot-device.example.com/dnsname",
    "last-update": "2019-01-15T10:22:47+00:00",
    "cache-validity": 48,
    "is-supported": true,
    "systeminfo": "device that wants to talk to a cloud service",
    "mfg-name": "Example, Inc.",
    "documentation": "https://frobinator.example.com/doc/frob2000",
    "model-name": "Frobinator 2000",
    "extensions" : [ 
       "sbom"
      ],
    "sboms" : [
      {
         "version-info" : "FrobOS Release 1.1",
         "sbom-url" : "https://frobinator.example.com/sboms/f20001.1",
      }
    ],
    "from-device-policy": {
      "access-lists": {
        "access-list": [
          {
            "name": "mud-96898-v4fr"
          },
          {
            "name": "mud-96898-v6fr"
          }
        ]
      }
    },
    "to-device-policy": {
      "access-lists": {
        "access-list": [
          {
            "name": "mud-96898-v4to"
          },
          {
            "name": "mud-96898-v6to"
          }
        ]
      }
    }
  },
  "ietf-access-control-list:acls": {
    "acl": [
      {
        "name": "mud-96898-v4to",
        "type": "ipv4-acl-type",
        "aces": {
          "ace": [
            {
              "name": "cl0-todev",
              "matches": {
                "ipv4": {
                  "ietf-acldns:src-dnsname": "cloud-service.example.com"
                }
              },
              "actions": {
                "forwarding": "accept"
              }
            }
          ]
        }
      },
      {
        "name": "mud-96898-v4fr",
        "type": "ipv4-acl-type",
        "aces": {
          "ace": [
            {
              "name": "cl0-frdev",
              "matches": {
                "ipv4": {
                  "ietf-acldns:dst-dnsname": "cloud-service.example.com"
                }
              },
              "actions": {
                "forwarding": "accept"
              }
            }
          ]
        }
      },
      {
        "name": "mud-96898-v6to",
        "type": "ipv6-acl-type",
        "aces": {
          "ace": [
            {
              "name": "cl0-todev",
              "matches": {
                "ipv6": {
                  "ietf-acldns:src-dnsname": "cloud-service.example.com"
                }
              },
              "actions": {
                "forwarding": "accept"
              }
            }
          ]
        }
      },
      {
        "name": "mud-96898-v6fr",
        "type": "ipv6-acl-type",
        "aces": {
          "ace": [
            {
              "name": "cl0-frdev",
              "matches": {
                "ipv6": {
                  "ietf-acldns:dst-dnsname": "cloud-service.example.com"
                }
              },
              "actions": {
                "forwarding": "accept"
              }
            }
          ]
        }
      }
    ]
  }
}
]]></artwork></figure>
<t>At this point, the management system can attempt to retrieve the SBOM,
and determine which format is in use through the content-type header
on the response to a GET request.</t>

</section>
</section>
<section anchor="security-considerations" title="Security Considerations">
<t>SBOMs provide an inventory of software.  If firmware is available to
an attacker, the attacker may well already be able to derive this very
same software inventory.  Manufacturers MAY restrict access to SBOM
information using appropriate authorization semantics within HTTP.  In
particular, if a system attempts to retrieve an SBOM via HTTP, if the
client is not authorized, the server MUST produce an appropriate
error, with instructions on how to register a particular client.  One
example may be to issue a certificate to the client for this purpose
after a registration process has taken place.  Another example would
involve the use of OAUTH in combination with a federations of SBOM
servers.</t>

<t>Another risk is a skew in the SBOM listing and the actual software 
inventory of a device/container. For example, a manufactuer may update
the SBOM on its server, but an individual device has not be 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 SBOM can 
minimize this risk.</t>

<t>To further mitigate attacks against a device, manufacturers SHOULD
recommend access controls through the normal MUD mechanism.</t>

</section>
<section anchor="iana-considerations" title="IANA Considerations">

<section anchor="mud-extension" title="MUD Extension">

<t>The IANA is requested to add “controller-candidate” to the MUD
extensions registry as follows:</t>

<figure><artwork><![CDATA[
  Extension Name: sbom
  Standard reference: This document

]]></artwork></figure>

</section>
<section anchor="well-known-prefix" title="Well-Known Prefix">

<t>The following well known URI is requested in accordance with
<xref target="RFC8615"/>:</t>

<figure><artwork><![CDATA[
  URI suffix: "sbom"
  Change controller: "IETF"
  Specification document: This memo
  Related information:  See ISO/IEC 19970-2 and SPDX.org

]]></artwork></figure>

</section>
</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference  anchor="RFC6991" target='https://www.rfc-editor.org/info/rfc6991'>
<front>
<title>Common YANG Data Types</title>
<author initials='J.' surname='Schoenwaelder' fullname='J. Schoenwaelder' role='editor'><organization /></author>
<date year='2013' month='July' />
<abstract><t>This document introduces a collection of common data types to be used with the YANG data modeling language.  This document obsoletes RFC 6021.</t></abstract>
</front>
<seriesInfo name='RFC' value='6991'/>
<seriesInfo name='DOI' value='10.17487/RFC6991'/>
</reference>



<reference  anchor="RFC8520" target='https://www.rfc-editor.org/info/rfc8520'>
<front>
<title>Manufacturer Usage Description Specification</title>
<author initials='E.' surname='Lear' fullname='E. Lear'><organization /></author>
<author initials='R.' surname='Droms' fullname='R. Droms'><organization /></author>
<author initials='D.' surname='Romascanu' fullname='D. Romascanu'><organization /></author>
<date year='2019' month='March' />
<abstract><t>This memo specifies a component-based architecture for Manufacturer Usage Descriptions (MUDs).  The goal of MUD is to provide a means for end devices to signal to the network what sort of access and network functionality they require to properly function.  The initial focus is on access control.  Later work can delve into other aspects.</t><t>This memo specifies two YANG modules, IPv4 and IPv6 DHCP options, a Link Layer Discovery Protocol (LLDP) TLV, a URL, an X.509 certificate extension, and a means to sign and verify the descriptions.</t></abstract>
</front>
<seriesInfo name='RFC' value='8520'/>
<seriesInfo name='DOI' value='10.17487/RFC8520'/>
</reference>



<reference  anchor="RFC2119" target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
<date year='1997' month='March' />
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference  anchor="RFC8174" target='https://www.rfc-editor.org/info/rfc8174'>
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
<author initials='B.' surname='Leiba' fullname='B. Leiba'><organization /></author>
<date year='2017' month='May' />
<abstract><t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='8174'/>
<seriesInfo name='DOI' value='10.17487/RFC8174'/>
</reference>



<reference  anchor="RFC8615" target='https://www.rfc-editor.org/info/rfc8615'>
<front>
<title>Well-Known Uniform Resource Identifiers (URIs)</title>
<author initials='M.' surname='Nottingham' fullname='M. Nottingham'><organization /></author>
<date year='2019' month='May' />
<abstract><t>This memo defines a path prefix for &quot;well-known locations&quot;, &quot;/.well-known/&quot;, in selected Uniform Resource Identifier (URI) schemes.</t><t>In doing so, it obsoletes RFC 5785 and updates the URI schemes defined in RFC 7230 to reserve that space.  It also updates RFC 7595 to track URI schemes that support well-known URIs in their registry.</t></abstract>
</front>
<seriesInfo name='RFC' value='8615'/>
<seriesInfo name='DOI' value='10.17487/RFC8615'/>
</reference>




    </references>

    <references title='Informative References'>

<reference anchor="SPDX" >
  <front>
    <title>SPDX Specification 2.1</title>
    <author >
      <organization>The Linux Foundation</organization>
    </author>
    <date year="2016"/>
  </front>
</reference>
<reference anchor="SWID" >
  <front>
    <title>Information technology — IT asset management — Part 2: Software identification tag</title>
    <author >
      <organization>ISO/IEC</organization>
    </author>
    <date year="2015"/>
  </front>
  <seriesInfo name="ISO" value="19770-2:2015"/>
</reference>
<reference anchor="CycloneDX12" >
  <front>
    <title>CycloneDX XML Reference v1.2</title>
    <author >
      <organization>cylonedx.org</organization>
    </author>
    <date year="2020" month="May"/>
  </front>
</reference>


    </references>


<section anchor="changes-from-earlier-versions" title="Changes from Earlier Versions">

<t>Draft -00:</t>

<t><list style="symbols">
  <t>Initial revision</t>
</list></t>

</section>


  </back>

<!-- ##markdown-source:
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
ioyGwzHh+pX0PWe+UU38F1Nyrx3yRQAA

-->

</rfc>

