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