1ddaedbbeSThomas GleixnerEmbargoed hardware issues 2ddaedbbeSThomas Gleixner========================= 3ddaedbbeSThomas Gleixner 4ddaedbbeSThomas GleixnerScope 5ddaedbbeSThomas Gleixner----- 6ddaedbbeSThomas Gleixner 7ddaedbbeSThomas GleixnerHardware issues which result in security problems are a different category 8ddaedbbeSThomas Gleixnerof security bugs than pure software bugs which only affect the Linux 9ddaedbbeSThomas Gleixnerkernel. 10ddaedbbeSThomas Gleixner 11ddaedbbeSThomas GleixnerHardware issues like Meltdown, Spectre, L1TF etc. must be treated 12ddaedbbeSThomas Gleixnerdifferently because they usually affect all Operating Systems ("OS") and 13ddaedbbeSThomas Gleixnertherefore need coordination across different OS vendors, distributions, 14ddaedbbeSThomas Gleixnerhardware vendors and other parties. For some of the issues, software 15ddaedbbeSThomas Gleixnermitigations can depend on microcode or firmware updates, which need further 16ddaedbbeSThomas Gleixnercoordination. 17ddaedbbeSThomas Gleixner 18ddaedbbeSThomas Gleixner.. _Contact: 19ddaedbbeSThomas Gleixner 20ddaedbbeSThomas GleixnerContact 21ddaedbbeSThomas Gleixner------- 22ddaedbbeSThomas Gleixner 23ddaedbbeSThomas GleixnerThe Linux kernel hardware security team is separate from the regular Linux 24ddaedbbeSThomas Gleixnerkernel security team. 25ddaedbbeSThomas Gleixner 26ddaedbbeSThomas GleixnerThe team only handles the coordination of embargoed hardware security 27ddaedbbeSThomas Gleixnerissues. Reports of pure software security bugs in the Linux kernel are not 28ddaedbbeSThomas Gleixnerhandled by this team and the reporter will be guided to contact the regular 29ddaedbbeSThomas GleixnerLinux kernel security team (:ref:`Documentation/admin-guide/ 30ddaedbbeSThomas Gleixner<securitybugs>`) instead. 31ddaedbbeSThomas Gleixner 32ddaedbbeSThomas GleixnerThe team can be contacted by email at <hardware-security@kernel.org>. This 33ddaedbbeSThomas Gleixneris a private list of security officers who will help you to coordinate an 34ddaedbbeSThomas Gleixnerissue according to our documented process. 35ddaedbbeSThomas Gleixner 36ddaedbbeSThomas GleixnerThe list is encrypted and email to the list can be sent by either PGP or 37ddaedbbeSThomas GleixnerS/MIME encrypted and must be signed with the reporter's PGP key or S/MIME 38ddaedbbeSThomas Gleixnercertificate. The list's PGP key and S/MIME certificate are available from 39ddaedbbeSThomas Gleixnerhttps://www.kernel.org/.... 40ddaedbbeSThomas Gleixner 41ddaedbbeSThomas GleixnerWhile hardware security issues are often handled by the affected hardware 42ddaedbbeSThomas Gleixnervendor, we welcome contact from researchers or individuals who have 43ddaedbbeSThomas Gleixneridentified a potential hardware flaw. 44ddaedbbeSThomas Gleixner 45ddaedbbeSThomas GleixnerHardware security officers 46ddaedbbeSThomas Gleixner^^^^^^^^^^^^^^^^^^^^^^^^^^ 47ddaedbbeSThomas Gleixner 48ddaedbbeSThomas GleixnerThe current team of hardware security officers: 49ddaedbbeSThomas Gleixner 50ddaedbbeSThomas Gleixner - Linus Torvalds (Linux Foundation Fellow) 51ddaedbbeSThomas Gleixner - Greg Kroah-Hartman (Linux Foundation Fellow) 52ddaedbbeSThomas Gleixner - Thomas Gleixner (Linux Foundation Fellow) 53ddaedbbeSThomas Gleixner 54ddaedbbeSThomas GleixnerOperation of mailing-lists 55ddaedbbeSThomas Gleixner^^^^^^^^^^^^^^^^^^^^^^^^^^ 56ddaedbbeSThomas Gleixner 57ddaedbbeSThomas GleixnerThe encrypted mailing-lists which are used in our process are hosted on 58ddaedbbeSThomas GleixnerLinux Foundation's IT infrastructure. By providing this service Linux 59ddaedbbeSThomas GleixnerFoundation's director of IT Infrastructure security technically has the 60ddaedbbeSThomas Gleixnerability to access the embargoed information, but is obliged to 61ddaedbbeSThomas Gleixnerconfidentiality by his employment contract. Linux Foundation's director of 62ddaedbbeSThomas GleixnerIT Infrastructure security is also responsible for the kernel.org 63ddaedbbeSThomas Gleixnerinfrastructure. 64ddaedbbeSThomas Gleixner 65ddaedbbeSThomas GleixnerThe Linux Foundation's current director of IT Infrastructure security is 66ddaedbbeSThomas GleixnerKonstantin Ryabitsev. 67ddaedbbeSThomas Gleixner 68ddaedbbeSThomas Gleixner 69ddaedbbeSThomas GleixnerNon-disclosure agreements 70ddaedbbeSThomas Gleixner------------------------- 71ddaedbbeSThomas Gleixner 72ddaedbbeSThomas GleixnerThe Linux kernel hardware security team is not a formal body and therefore 73ddaedbbeSThomas Gleixnerunable to enter into any non-disclosure agreements. The kernel community 74ddaedbbeSThomas Gleixneris aware of the sensitive nature of such issues and offers a Memorandum of 75ddaedbbeSThomas GleixnerUnderstanding instead. 76ddaedbbeSThomas Gleixner 77ddaedbbeSThomas Gleixner 78ddaedbbeSThomas GleixnerMemorandum of Understanding 79ddaedbbeSThomas Gleixner--------------------------- 80ddaedbbeSThomas Gleixner 81ddaedbbeSThomas GleixnerThe Linux kernel community has a deep understanding of the requirement to 82ddaedbbeSThomas Gleixnerkeep hardware security issues under embargo for coordination between 83ddaedbbeSThomas Gleixnerdifferent OS vendors, distributors, hardware vendors and other parties. 84ddaedbbeSThomas Gleixner 85ddaedbbeSThomas GleixnerThe Linux kernel community has successfully handled hardware security 86ddaedbbeSThomas Gleixnerissues in the past and has the necessary mechanisms in place to allow 87ddaedbbeSThomas Gleixnercommunity compliant development under embargo restrictions. 88ddaedbbeSThomas Gleixner 89ddaedbbeSThomas GleixnerThe Linux kernel community has a dedicated hardware security team for 90ddaedbbeSThomas Gleixnerinitial contact, which oversees the process of handling such issues under 91ddaedbbeSThomas Gleixnerembargo rules. 92ddaedbbeSThomas Gleixner 93ddaedbbeSThomas GleixnerThe hardware security team identifies the developers (domain experts) who 94ddaedbbeSThomas Gleixnerwill form the initial response team for a particular issue. The initial 95ddaedbbeSThomas Gleixnerresponse team can bring in further developers (domain experts) to address 96ddaedbbeSThomas Gleixnerthe issue in the best technical way. 97ddaedbbeSThomas Gleixner 98ddaedbbeSThomas GleixnerAll involved developers pledge to adhere to the embargo rules and to keep 99ddaedbbeSThomas Gleixnerthe received information confidential. Violation of the pledge will lead to 100ddaedbbeSThomas Gleixnerimmediate exclusion from the current issue and removal from all related 101ddaedbbeSThomas Gleixnermailing-lists. In addition, the hardware security team will also exclude 102ddaedbbeSThomas Gleixnerthe offender from future issues. The impact of this consequence is a highly 103ddaedbbeSThomas Gleixnereffective deterrent in our community. In case a violation happens the 104ddaedbbeSThomas Gleixnerhardware security team will inform the involved parties immediately. If you 105ddaedbbeSThomas Gleixneror anyone becomes aware of a potential violation, please report it 106ddaedbbeSThomas Gleixnerimmediately to the Hardware security officers. 107ddaedbbeSThomas Gleixner 108ddaedbbeSThomas Gleixner 109ddaedbbeSThomas GleixnerProcess 110ddaedbbeSThomas Gleixner^^^^^^^ 111ddaedbbeSThomas Gleixner 112ddaedbbeSThomas GleixnerDue to the globally distributed nature of Linux kernel development, 113ddaedbbeSThomas Gleixnerface-to-face meetings are almost impossible to address hardware security 114ddaedbbeSThomas Gleixnerissues. Phone conferences are hard to coordinate due to time zones and 115ddaedbbeSThomas Gleixnerother factors and should be only used when absolutely necessary. Encrypted 116ddaedbbeSThomas Gleixneremail has been proven to be the most effective and secure communication 117ddaedbbeSThomas Gleixnermethod for these types of issues. 118ddaedbbeSThomas Gleixner 119ddaedbbeSThomas GleixnerStart of Disclosure 120ddaedbbeSThomas Gleixner""""""""""""""""""" 121ddaedbbeSThomas Gleixner 122ddaedbbeSThomas GleixnerDisclosure starts by contacting the Linux kernel hardware security team by 123ddaedbbeSThomas Gleixneremail. This initial contact should contain a description of the problem and 124ddaedbbeSThomas Gleixnera list of any known affected hardware. If your organization builds or 125ddaedbbeSThomas Gleixnerdistributes the affected hardware, we encourage you to also consider what 126ddaedbbeSThomas Gleixnerother hardware could be affected. 127ddaedbbeSThomas Gleixner 128ddaedbbeSThomas GleixnerThe hardware security team will provide an incident-specific encrypted 129ddaedbbeSThomas Gleixnermailing-list which will be used for initial discussion with the reporter, 130ddaedbbeSThomas Gleixnerfurther disclosure and coordination. 131ddaedbbeSThomas Gleixner 132ddaedbbeSThomas GleixnerThe hardware security team will provide the disclosing party a list of 133ddaedbbeSThomas Gleixnerdevelopers (domain experts) who should be informed initially about the 134ddaedbbeSThomas Gleixnerissue after confirming with the developers that they will adhere to this 135ddaedbbeSThomas GleixnerMemorandum of Understanding and the documented process. These developers 136ddaedbbeSThomas Gleixnerform the initial response team and will be responsible for handling the 137ddaedbbeSThomas Gleixnerissue after initial contact. The hardware security team is supporting the 138ddaedbbeSThomas Gleixnerresponse team, but is not necessarily involved in the mitigation 139ddaedbbeSThomas Gleixnerdevelopment process. 140ddaedbbeSThomas Gleixner 141ddaedbbeSThomas GleixnerWhile individual developers might be covered by a non-disclosure agreement 142ddaedbbeSThomas Gleixnervia their employer, they cannot enter individual non-disclosure agreements 143ddaedbbeSThomas Gleixnerin their role as Linux kernel developers. They will, however, agree to 144ddaedbbeSThomas Gleixneradhere to this documented process and the Memorandum of Understanding. 145ddaedbbeSThomas Gleixner 146dc925a36SThomas GleixnerThe disclosing party should provide a list of contacts for all other 147dc925a36SThomas Gleixnerentities who have already been, or should be, informed about the issue. 148dc925a36SThomas GleixnerThis serves several purposes: 149dc925a36SThomas Gleixner 150dc925a36SThomas Gleixner - The list of disclosed entities allows communication accross the 151dc925a36SThomas Gleixner industry, e.g. other OS vendors, HW vendors, etc. 152dc925a36SThomas Gleixner 153dc925a36SThomas Gleixner - The disclosed entities can be contacted to name experts who should 154dc925a36SThomas Gleixner participate in the mitigation development. 155dc925a36SThomas Gleixner 156dc925a36SThomas Gleixner - If an expert which is required to handle an issue is employed by an 157dc925a36SThomas Gleixner listed entity or member of an listed entity, then the response teams can 158dc925a36SThomas Gleixner request the disclosure of that expert from that entity. This ensures 159dc925a36SThomas Gleixner that the expert is also part of the entity's response team. 160ddaedbbeSThomas Gleixner 161ddaedbbeSThomas GleixnerDisclosure 162ddaedbbeSThomas Gleixner"""""""""" 163ddaedbbeSThomas Gleixner 164ddaedbbeSThomas GleixnerThe disclosing party provides detailed information to the initial response 165ddaedbbeSThomas Gleixnerteam via the specific encrypted mailing-list. 166ddaedbbeSThomas Gleixner 167ddaedbbeSThomas GleixnerFrom our experience the technical documentation of these issues is usually 168ddaedbbeSThomas Gleixnera sufficient starting point and further technical clarification is best 169ddaedbbeSThomas Gleixnerdone via email. 170ddaedbbeSThomas Gleixner 171ddaedbbeSThomas GleixnerMitigation development 172ddaedbbeSThomas Gleixner"""""""""""""""""""""" 173ddaedbbeSThomas Gleixner 174ddaedbbeSThomas GleixnerThe initial response team sets up an encrypted mailing-list or repurposes 175dc925a36SThomas Gleixneran existing one if appropriate. 176ddaedbbeSThomas Gleixner 177ddaedbbeSThomas GleixnerUsing a mailing-list is close to the normal Linux development process and 178ddaedbbeSThomas Gleixnerhas been successfully used in developing mitigations for various hardware 179ddaedbbeSThomas Gleixnersecurity issues in the past. 180ddaedbbeSThomas Gleixner 181ddaedbbeSThomas GleixnerThe mailing-list operates in the same way as normal Linux development. 182ddaedbbeSThomas GleixnerPatches are posted, discussed and reviewed and if agreed on applied to a 183ddaedbbeSThomas Gleixnernon-public git repository which is only accessible to the participating 184ddaedbbeSThomas Gleixnerdevelopers via a secure connection. The repository contains the main 185ddaedbbeSThomas Gleixnerdevelopment branch against the mainline kernel and backport branches for 186ddaedbbeSThomas Gleixnerstable kernel versions as necessary. 187ddaedbbeSThomas Gleixner 188ddaedbbeSThomas GleixnerThe initial response team will identify further experts from the Linux 189dc925a36SThomas Gleixnerkernel developer community as needed. Bringing in experts can happen at any 190dc925a36SThomas Gleixnertime of the development process and needs to be handled in a timely manner. 191dc925a36SThomas Gleixner 192dc925a36SThomas GleixnerIf an expert is employed by or member of an entity on the disclosure list 193dc925a36SThomas Gleixnerprovided by the disclosing party, then participation will be requested from 194dc925a36SThomas Gleixnerthe relevant entity. 195dc925a36SThomas Gleixner 196dc925a36SThomas GleixnerIf not, then the disclosing party will be informed about the experts 197dc925a36SThomas Gleixnerparticipation. The experts are covered by the Memorandum of Understanding 198dc925a36SThomas Gleixnerand the disclosing party is requested to acknowledge the participation. In 199dc925a36SThomas Gleixnercase that the disclosing party has a compelling reason to object, then this 200dc925a36SThomas Gleixnerobjection has to be raised within five work days and resolved with the 201dc925a36SThomas Gleixnerincident team immediately. If the disclosing party does not react within 202dc925a36SThomas Gleixnerfive work days this is taken as silent acknowledgement. 203dc925a36SThomas Gleixner 204dc925a36SThomas GleixnerAfter acknowledgement or resolution of an objection the expert is disclosed 205dc925a36SThomas Gleixnerby the incident team and brought into the development process. 206dc925a36SThomas Gleixner 207ddaedbbeSThomas Gleixner 208ddaedbbeSThomas GleixnerCoordinated release 209ddaedbbeSThomas Gleixner""""""""""""""""""" 210ddaedbbeSThomas Gleixner 211ddaedbbeSThomas GleixnerThe involved parties will negotiate the date and time where the embargo 212ddaedbbeSThomas Gleixnerends. At that point the prepared mitigations are integrated into the 213ddaedbbeSThomas Gleixnerrelevant kernel trees and published. 214ddaedbbeSThomas Gleixner 215ddaedbbeSThomas GleixnerWhile we understand that hardware security issues need coordinated embargo 216ddaedbbeSThomas Gleixnertime, the embargo time should be constrained to the minimum time which is 217ddaedbbeSThomas Gleixnerrequired for all involved parties to develop, test and prepare the 218ddaedbbeSThomas Gleixnermitigations. Extending embargo time artificially to meet conference talk 219ddaedbbeSThomas Gleixnerdates or other non-technical reasons is creating more work and burden for 220ddaedbbeSThomas Gleixnerthe involved developers and response teams as the patches need to be kept 221ddaedbbeSThomas Gleixnerup to date in order to follow the ongoing upstream kernel development, 222ddaedbbeSThomas Gleixnerwhich might create conflicting changes. 223ddaedbbeSThomas Gleixner 224ddaedbbeSThomas GleixnerCVE assignment 225ddaedbbeSThomas Gleixner"""""""""""""" 226ddaedbbeSThomas Gleixner 227ddaedbbeSThomas GleixnerNeither the hardware security team nor the initial response team assign 228ddaedbbeSThomas GleixnerCVEs, nor are CVEs required for the development process. If CVEs are 229ddaedbbeSThomas Gleixnerprovided by the disclosing party they can be used for documentation 230ddaedbbeSThomas Gleixnerpurposes. 231ddaedbbeSThomas Gleixner 232ddaedbbeSThomas GleixnerProcess ambassadors 233ddaedbbeSThomas Gleixner------------------- 234ddaedbbeSThomas Gleixner 235ddaedbbeSThomas GleixnerFor assistance with this process we have established ambassadors in various 236ddaedbbeSThomas Gleixnerorganizations, who can answer questions about or provide guidance on the 237ddaedbbeSThomas Gleixnerreporting process and further handling. Ambassadors are not involved in the 238ddaedbbeSThomas Gleixnerdisclosure of a particular issue, unless requested by a response team or by 239ddaedbbeSThomas Gleixneran involved disclosed party. The current ambassadors list: 240ddaedbbeSThomas Gleixner 241ddaedbbeSThomas Gleixner ============= ======================================================== 242ddaedbbeSThomas Gleixner ARM 243*4a9acb6dSTom Lendacky AMD Tom Lendacky <tom.lendacky@amd.com> 244ddaedbbeSThomas Gleixner IBM 24538c7a30aSTony Luck Intel Tony Luck <tony.luck@intel.com> 246a8e0abaeSTrilok Soni Qualcomm Trilok Soni <tsoni@codeaurora.org> 247ddaedbbeSThomas Gleixner 2481f493162SSasha Levin Microsoft Sasha Levin <sashal@kernel.org> 249ddaedbbeSThomas Gleixner VMware 25002e740aeSAndrew Cooper Xen Andrew Cooper <andrew.cooper3@citrix.com> 251ddaedbbeSThomas Gleixner 252ddaedbbeSThomas Gleixner Canonical Tyler Hicks <tyhicks@canonical.com> 253ddaedbbeSThomas Gleixner Debian Ben Hutchings <ben@decadent.org.uk> 254ddaedbbeSThomas Gleixner Oracle Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> 255ddaedbbeSThomas Gleixner Red Hat Josh Poimboeuf <jpoimboe@redhat.com> 256ddaedbbeSThomas Gleixner SUSE Jiri Kosina <jkosina@suse.cz> 257ddaedbbeSThomas Gleixner 258ddaedbbeSThomas Gleixner Amazon 259f56f791fSKees Cook Google Kees Cook <keescook@chromium.org> 260f56f791fSKees Cook ============= ======================================================== 261ddaedbbeSThomas Gleixner 262ddaedbbeSThomas GleixnerIf you want your organization to be added to the ambassadors list, please 263ddaedbbeSThomas Gleixnercontact the hardware security team. The nominated ambassador has to 264ddaedbbeSThomas Gleixnerunderstand and support our process fully and is ideally well connected in 265ddaedbbeSThomas Gleixnerthe Linux kernel community. 266ddaedbbeSThomas Gleixner 267ddaedbbeSThomas GleixnerEncrypted mailing-lists 268ddaedbbeSThomas Gleixner----------------------- 269ddaedbbeSThomas Gleixner 270ddaedbbeSThomas GleixnerWe use encrypted mailing-lists for communication. The operating principle 271ddaedbbeSThomas Gleixnerof these lists is that email sent to the list is encrypted either with the 272ddaedbbeSThomas Gleixnerlist's PGP key or with the list's S/MIME certificate. The mailing-list 273ddaedbbeSThomas Gleixnersoftware decrypts the email and re-encrypts it individually for each 274ddaedbbeSThomas Gleixnersubscriber with the subscriber's PGP key or S/MIME certificate. Details 275ddaedbbeSThomas Gleixnerabout the mailing-list software and the setup which is used to ensure the 276ddaedbbeSThomas Gleixnersecurity of the lists and protection of the data can be found here: 277ddaedbbeSThomas Gleixnerhttps://www.kernel.org/.... 278ddaedbbeSThomas Gleixner 279ddaedbbeSThomas GleixnerList keys 280ddaedbbeSThomas Gleixner^^^^^^^^^ 281ddaedbbeSThomas Gleixner 282ddaedbbeSThomas GleixnerFor initial contact see :ref:`Contact`. For incident specific mailing-lists 283ddaedbbeSThomas Gleixnerthe key and S/MIME certificate are conveyed to the subscribers by email 284ddaedbbeSThomas Gleixnersent from the specific list. 285ddaedbbeSThomas Gleixner 286ddaedbbeSThomas GleixnerSubscription to incident specific lists 287ddaedbbeSThomas Gleixner^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 288ddaedbbeSThomas Gleixner 289ddaedbbeSThomas GleixnerSubscription is handled by the response teams. Disclosed parties who want 290ddaedbbeSThomas Gleixnerto participate in the communication send a list of potential subscribers to 291ddaedbbeSThomas Gleixnerthe response team so the response team can validate subscription requests. 292ddaedbbeSThomas Gleixner 293ddaedbbeSThomas GleixnerEach subscriber needs to send a subscription request to the response team 294ddaedbbeSThomas Gleixnerby email. The email must be signed with the subscriber's PGP key or S/MIME 295ddaedbbeSThomas Gleixnercertificate. If a PGP key is used, it must be available from a public key 296ddaedbbeSThomas Gleixnerserver and is ideally connected to the Linux kernel's PGP web of trust. See 297ddaedbbeSThomas Gleixneralso: https://www.kernel.org/signature.html. 298ddaedbbeSThomas Gleixner 299ddaedbbeSThomas GleixnerThe response team verifies that the subscriber request is valid and adds 300ddaedbbeSThomas Gleixnerthe subscriber to the list. After subscription the subscriber will receive 301ddaedbbeSThomas Gleixneremail from the mailing-list which is signed either with the list's PGP key 302ddaedbbeSThomas Gleixneror the list's S/MIME certificate. The subscriber's email client can extract 303ddaedbbeSThomas Gleixnerthe PGP key or the S/MIME certificate from the signature so the subscriber 304ddaedbbeSThomas Gleixnercan send encrypted email to the list. 305ddaedbbeSThomas Gleixner 306