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