1 .. _embargoed_hardware_issues: 1 .. _embargoed_hardware_issues: 2 2 3 Embargoed hardware issues 3 Embargoed hardware issues 4 ========================= 4 ========================= 5 5 6 Scope 6 Scope 7 ----- 7 ----- 8 8 9 Hardware issues which result in security probl 9 Hardware issues which result in security problems are a different category 10 of security bugs than pure software bugs which 10 of security bugs than pure software bugs which only affect the Linux 11 kernel. 11 kernel. 12 12 13 Hardware issues like Meltdown, Spectre, L1TF e 13 Hardware issues like Meltdown, Spectre, L1TF etc. must be treated 14 differently because they usually affect all Op 14 differently because they usually affect all Operating Systems ("OS") and 15 therefore need coordination across different O 15 therefore need coordination across different OS vendors, distributions, 16 silicon vendors, hardware integrators, and oth !! 16 hardware vendors and other parties. For some of the issues, software 17 issues, software mitigations can depend on mic !! 17 mitigations can depend on microcode or firmware updates, which need further 18 which need further coordination. !! 18 coordination. 19 19 20 .. _Contact: 20 .. _Contact: 21 21 22 Contact 22 Contact 23 ------- 23 ------- 24 24 25 The Linux kernel hardware security team is sep 25 The Linux kernel hardware security team is separate from the regular Linux 26 kernel security team. 26 kernel security team. 27 27 28 The team only handles developing fixes for emb 28 The team only handles developing fixes for embargoed hardware security 29 issues. Reports of pure software security bugs 29 issues. Reports of pure software security bugs in the Linux kernel are not 30 handled by this team and the reporter will be 30 handled by this team and the reporter will be guided to contact the regular 31 Linux kernel security team (:ref:`Documentatio 31 Linux kernel security team (:ref:`Documentation/admin-guide/ 32 <securitybugs>`) instead. 32 <securitybugs>`) instead. 33 33 34 The team can be contacted by email at <hardware 34 The team can be contacted by email at <hardware-security@kernel.org>. This 35 is a private list of security officers who wil !! 35 is a private list of security officers who will help you to coordinate a 36 according to our documented process. !! 36 fix according to our documented process. 37 37 38 The list is encrypted and email to the list ca 38 The list is encrypted and email to the list can be sent by either PGP or 39 S/MIME encrypted and must be signed with the r 39 S/MIME encrypted and must be signed with the reporter's PGP key or S/MIME 40 certificate. The list's PGP key and S/MIME cer 40 certificate. The list's PGP key and S/MIME certificate are available from 41 the following URLs: 41 the following URLs: 42 42 43 - PGP: https://www.kernel.org/static/files/h 43 - PGP: https://www.kernel.org/static/files/hardware-security.asc 44 - S/MIME: https://www.kernel.org/static/file 44 - S/MIME: https://www.kernel.org/static/files/hardware-security.crt 45 45 46 While hardware security issues are often handl !! 46 While hardware security issues are often handled by the affected hardware 47 vendor, we welcome contact from researchers or 47 vendor, we welcome contact from researchers or individuals who have 48 identified a potential hardware flaw. 48 identified a potential hardware flaw. 49 49 50 Hardware security officers 50 Hardware security officers 51 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 51 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 52 52 53 The current team of hardware security officers 53 The current team of hardware security officers: 54 54 55 - Linus Torvalds (Linux Foundation Fellow) 55 - Linus Torvalds (Linux Foundation Fellow) 56 - Greg Kroah-Hartman (Linux Foundation Fello 56 - Greg Kroah-Hartman (Linux Foundation Fellow) 57 - Thomas Gleixner (Linux Foundation Fellow) 57 - Thomas Gleixner (Linux Foundation Fellow) 58 58 59 Operation of mailing-lists 59 Operation of mailing-lists 60 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 60 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 61 61 62 The encrypted mailing-lists which are used in 62 The encrypted mailing-lists which are used in our process are hosted on 63 Linux Foundation's IT infrastructure. By provi 63 Linux Foundation's IT infrastructure. By providing this service, members 64 of Linux Foundation's IT operations personnel 64 of Linux Foundation's IT operations personnel technically have the 65 ability to access the embargoed information, b 65 ability to access the embargoed information, but are obliged to 66 confidentiality by their employment contract. 66 confidentiality by their employment contract. Linux Foundation IT 67 personnel are also responsible for operating a 67 personnel are also responsible for operating and managing the rest of 68 kernel.org's infrastructure. !! 68 kernel.org infrastructure. 69 69 70 The Linux Foundation's current director of IT 70 The Linux Foundation's current director of IT Project infrastructure is 71 Konstantin Ryabitsev. 71 Konstantin Ryabitsev. 72 72 73 73 74 Non-disclosure agreements 74 Non-disclosure agreements 75 ------------------------- 75 ------------------------- 76 76 77 The Linux kernel hardware security team is not 77 The Linux kernel hardware security team is not a formal body and therefore 78 unable to enter into any non-disclosure agreem 78 unable to enter into any non-disclosure agreements. The kernel community 79 is aware of the sensitive nature of such issue 79 is aware of the sensitive nature of such issues and offers a Memorandum of 80 Understanding instead. 80 Understanding instead. 81 81 82 82 83 Memorandum of Understanding 83 Memorandum of Understanding 84 --------------------------- 84 --------------------------- 85 85 86 The Linux kernel community has a deep understa 86 The Linux kernel community has a deep understanding of the requirement to 87 keep hardware security issues under embargo fo 87 keep hardware security issues under embargo for coordination between 88 different OS vendors, distributors, silicon ve !! 88 different OS vendors, distributors, hardware vendors and other parties. 89 89 90 The Linux kernel community has successfully ha 90 The Linux kernel community has successfully handled hardware security 91 issues in the past and has the necessary mecha 91 issues in the past and has the necessary mechanisms in place to allow 92 community compliant development under embargo 92 community compliant development under embargo restrictions. 93 93 94 The Linux kernel community has a dedicated har 94 The Linux kernel community has a dedicated hardware security team for 95 initial contact, which oversees the process of 95 initial contact, which oversees the process of handling such issues under 96 embargo rules. 96 embargo rules. 97 97 98 The hardware security team identifies the deve 98 The hardware security team identifies the developers (domain experts) who 99 will form the initial response team for a part 99 will form the initial response team for a particular issue. The initial 100 response team can bring in further developers 100 response team can bring in further developers (domain experts) to address 101 the issue in the best technical way. 101 the issue in the best technical way. 102 102 103 All involved developers pledge to adhere to th 103 All involved developers pledge to adhere to the embargo rules and to keep 104 the received information confidential. Violati 104 the received information confidential. Violation of the pledge will lead to 105 immediate exclusion from the current issue and 105 immediate exclusion from the current issue and removal from all related 106 mailing lists. In addition, the hardware secur !! 106 mailing-lists. In addition, the hardware security team will also exclude 107 the offender from future issues. The impact of 107 the offender from future issues. The impact of this consequence is a highly 108 effective deterrent in our community. In case 108 effective deterrent in our community. In case a violation happens the 109 hardware security team will inform the involve 109 hardware security team will inform the involved parties immediately. If you 110 or anyone else becomes aware of a potential vi !! 110 or anyone becomes aware of a potential violation, please report it 111 immediately to the Hardware security officers. 111 immediately to the Hardware security officers. 112 112 113 113 114 Process 114 Process 115 ^^^^^^^ 115 ^^^^^^^ 116 116 117 Due to the globally distributed nature of Linu 117 Due to the globally distributed nature of Linux kernel development, 118 face-to-face meetings are almost impossible to 118 face-to-face meetings are almost impossible to address hardware security 119 issues. Phone conferences are hard to coordin 119 issues. Phone conferences are hard to coordinate due to time zones and 120 other factors and should be only used when abs 120 other factors and should be only used when absolutely necessary. Encrypted 121 email has been proven to be the most effective 121 email has been proven to be the most effective and secure communication 122 method for these types of issues. 122 method for these types of issues. 123 123 124 Start of Disclosure 124 Start of Disclosure 125 """"""""""""""""""" 125 """"""""""""""""""" 126 126 127 Disclosure starts by emailing the Linux kernel !! 127 Disclosure starts by contacting the Linux kernel hardware security team by 128 the Contact section above. This initial conta !! 128 email. This initial contact should contain a description of the problem and 129 description of the problem and a list of any k !! 129 a list of any known affected hardware. If your organization builds or 130 your organization builds or distributes the af !! 130 distributes the affected hardware, we encourage you to also consider what 131 you to also consider what other hardware could !! 131 other hardware could be affected. 132 party is responsible for contacting the affect << 133 timely manner. << 134 132 135 The hardware security team will provide an inc 133 The hardware security team will provide an incident-specific encrypted 136 mailing list which will be used for initial di !! 134 mailing-list which will be used for initial discussion with the reporter, 137 further disclosure, and coordination of fixes. 135 further disclosure, and coordination of fixes. 138 136 139 The hardware security team will provide the di 137 The hardware security team will provide the disclosing party a list of 140 developers (domain experts) who should be info 138 developers (domain experts) who should be informed initially about the 141 issue after confirming with the developers tha 139 issue after confirming with the developers that they will adhere to this 142 Memorandum of Understanding and the documented 140 Memorandum of Understanding and the documented process. These developers 143 form the initial response team and will be res 141 form the initial response team and will be responsible for handling the 144 issue after initial contact. The hardware secu 142 issue after initial contact. The hardware security team is supporting the 145 response team, but is not necessarily involved 143 response team, but is not necessarily involved in the mitigation 146 development process. 144 development process. 147 145 148 While individual developers might be covered b 146 While individual developers might be covered by a non-disclosure agreement 149 via their employer, they cannot enter individu 147 via their employer, they cannot enter individual non-disclosure agreements 150 in their role as Linux kernel developers. They 148 in their role as Linux kernel developers. They will, however, agree to 151 adhere to this documented process and the Memo 149 adhere to this documented process and the Memorandum of Understanding. 152 150 153 The disclosing party should provide a list of 151 The disclosing party should provide a list of contacts for all other 154 entities who have already been, or should be, 152 entities who have already been, or should be, informed about the issue. 155 This serves several purposes: 153 This serves several purposes: 156 154 157 - The list of disclosed entities allows commu 155 - The list of disclosed entities allows communication across the 158 industry, e.g. other OS vendors, HW vendors 156 industry, e.g. other OS vendors, HW vendors, etc. 159 157 160 - The disclosed entities can be contacted to 158 - The disclosed entities can be contacted to name experts who should 161 participate in the mitigation development. 159 participate in the mitigation development. 162 160 163 - If an expert who is required to handle an i !! 161 - If an expert which is required to handle an issue is employed by an 164 entity or member of an listed entity, then !! 162 listed entity or member of an listed entity, then the response teams can 165 request the disclosure of that expert from 163 request the disclosure of that expert from that entity. This ensures 166 that the expert is also part of the entity' 164 that the expert is also part of the entity's response team. 167 165 168 Disclosure 166 Disclosure 169 """""""""" 167 """""""""" 170 168 171 The disclosing party provides detailed informa 169 The disclosing party provides detailed information to the initial response 172 team via the specific encrypted mailing-list. 170 team via the specific encrypted mailing-list. 173 171 174 From our experience, the technical documentati !! 172 From our experience the technical documentation of these issues is usually 175 a sufficient starting point, and further techn !! 173 a sufficient starting point and further technical clarification is best 176 done via email. 174 done via email. 177 175 178 Mitigation development 176 Mitigation development 179 """""""""""""""""""""" 177 """""""""""""""""""""" 180 178 181 The initial response team sets up an encrypted 179 The initial response team sets up an encrypted mailing-list or repurposes 182 an existing one if appropriate. 180 an existing one if appropriate. 183 181 184 Using a mailing list is close to the normal Li !! 182 Using a mailing-list is close to the normal Linux development process and 185 has been successfully used to develop mitigati !! 183 has been successfully used in developing mitigations for various hardware 186 security issues in the past. 184 security issues in the past. 187 185 188 The mailing list operates in the same way as n !! 186 The mailing-list operates in the same way as normal Linux development. 189 Patches are posted, discussed, and reviewed an !! 187 Patches are posted, discussed and reviewed and if agreed on applied to a 190 a non-public git repository which is only acce !! 188 non-public git repository which is only accessible to the participating 191 developers via a secure connection. The reposi 189 developers via a secure connection. The repository contains the main 192 development branch against the mainline kernel 190 development branch against the mainline kernel and backport branches for 193 stable kernel versions as necessary. 191 stable kernel versions as necessary. 194 192 195 The initial response team will identify furthe 193 The initial response team will identify further experts from the Linux 196 kernel developer community as needed. Any inv !! 194 kernel developer community as needed. Bringing in experts can happen at any 197 further experts to be included, each of which !! 195 time of the development process and needs to be handled in a timely manner. 198 requirements outlined above. << 199 196 200 Bringing in experts can happen at any time in !! 197 If an expert is employed by or member of an entity on the disclosure list 201 needs to be handled in a timely manner. << 202 << 203 If an expert is employed by or a member of an << 204 provided by the disclosing party, then partici 198 provided by the disclosing party, then participation will be requested from 205 the relevant entity. 199 the relevant entity. 206 200 207 If not, then the disclosing party will be info !! 201 If not, then the disclosing party will be informed about the experts 208 participation. The experts are covered by the 202 participation. The experts are covered by the Memorandum of Understanding 209 and the disclosing party is requested to ackno !! 203 and the disclosing party is requested to acknowledge the participation. In 210 In the case where the disclosing party has a c !! 204 case that the disclosing party has a compelling reason to object, then this 211 any objection must to be raised within five wo !! 205 objection has to be raised within five work days and resolved with the 212 the incident team immediately. If the disclosi !! 206 incident team immediately. If the disclosing party does not react within 213 within five working days this is taken as sile !! 207 five work days this is taken as silent acknowledgement. 214 208 215 After the incident team acknowledges or resolv !! 209 After acknowledgement or resolution of an objection the expert is disclosed 216 is disclosed and brought into the development !! 210 by the incident team and brought into the development process. 217 211 218 List participants may not communicate about th 212 List participants may not communicate about the issue outside of the 219 private mailing list. List participants may no 213 private mailing list. List participants may not use any shared resources 220 (e.g. employer build farms, CI systems, etc) w 214 (e.g. employer build farms, CI systems, etc) when working on patches. 221 215 222 Early access << 223 """""""""""" << 224 << 225 The patches discussed and developed on the lis << 226 to any individual who is not a member of the r << 227 organization. << 228 << 229 To allow the affected silicon vendors to work << 230 industry partners on testing, validation, and << 231 exception is provided: << 232 << 233 Designated representatives of the affe << 234 allowed to hand over the patches at an << 235 vendor’s response team. The represen << 236 response team about the handover. The << 237 have and maintain their own documented << 238 patches shared with their response tea << 239 this policy. << 240 << 241 The silicon vendor’s response team c << 242 their industry partners and to their i << 243 silicon vendor’s documented security << 244 industry partners goes back to the sil << 245 communicated by the silicon vendor to << 246 << 247 The handover to the silicon vendor’s << 248 responsibility or liability from the k << 249 premature disclosure, which happens du << 250 silicon vendor’s internal teams or i << 251 vendor guarantees this release of liab << 252 process. << 253 216 254 Coordinated release 217 Coordinated release 255 """"""""""""""""""" 218 """"""""""""""""""" 256 219 257 The involved parties will negotiate the date a !! 220 The involved parties will negotiate the date and time where the embargo 258 ends. At that point, the prepared mitigations !! 221 ends. At that point the prepared mitigations are integrated into the 259 relevant kernel trees. There is no pre-notifi !! 222 relevant kernel trees and published. There is no pre-notification process: 260 mitigations are published in public and availa !! 223 fixes are published in public and available to everyone at the same time. 261 time. << 262 224 263 While we understand that hardware security iss 225 While we understand that hardware security issues need coordinated embargo 264 time, the embargo time should be constrained t !! 226 time, the embargo time should be constrained to the minimum time which is 265 required for all involved parties to develop, !! 227 required for all involved parties to develop, test and prepare the 266 mitigations. Extending embargo time artificial 228 mitigations. Extending embargo time artificially to meet conference talk 267 dates or other non-technical reasons creates m !! 229 dates or other non-technical reasons is creating more work and burden for 268 involved developers and response teams as the !! 230 the involved developers and response teams as the patches need to be kept 269 date in order to follow the ongoing upstream k !! 231 up to date in order to follow the ongoing upstream kernel development, 270 might create conflicting changes. !! 232 which might create conflicting changes. 271 233 272 CVE assignment 234 CVE assignment 273 """""""""""""" 235 """""""""""""" 274 236 275 Neither the hardware security team nor the ini 237 Neither the hardware security team nor the initial response team assign 276 CVEs, nor are CVEs required for the developmen 238 CVEs, nor are CVEs required for the development process. If CVEs are 277 provided by the disclosing party they can be u 239 provided by the disclosing party they can be used for documentation 278 purposes. 240 purposes. 279 241 280 Process ambassadors 242 Process ambassadors 281 ------------------- 243 ------------------- 282 244 283 For assistance with this process we have estab 245 For assistance with this process we have established ambassadors in various 284 organizations, who can answer questions about 246 organizations, who can answer questions about or provide guidance on the 285 reporting process and further handling. Ambass 247 reporting process and further handling. Ambassadors are not involved in the 286 disclosure of a particular issue, unless reque 248 disclosure of a particular issue, unless requested by a response team or by 287 an involved disclosed party. The current ambas 249 an involved disclosed party. The current ambassadors list: 288 250 289 ============= ============================== 251 ============= ======================================================== 290 AMD Tom Lendacky <thomas.lendacky@a 252 AMD Tom Lendacky <thomas.lendacky@amd.com> 291 Ampere Darren Hart <darren@os.ampereco 253 Ampere Darren Hart <darren@os.amperecomputing.com> 292 ARM Catalin Marinas <catalin.marina 254 ARM Catalin Marinas <catalin.marinas@arm.com> 293 IBM Power Michael Ellerman <ellerman@au.i 255 IBM Power Michael Ellerman <ellerman@au.ibm.com> 294 IBM Z Christian Borntraeger <borntrae 256 IBM Z Christian Borntraeger <borntraeger@de.ibm.com> 295 Intel Tony Luck <tony.luck@intel.com> 257 Intel Tony Luck <tony.luck@intel.com> 296 Qualcomm Trilok Soni <quic_tsoni@quicinc 258 Qualcomm Trilok Soni <quic_tsoni@quicinc.com> 297 RISC-V Palmer Dabbelt <palmer@dabbelt. 259 RISC-V Palmer Dabbelt <palmer@dabbelt.com> 298 Samsung Javier González <javier.gonz@s 260 Samsung Javier González <javier.gonz@samsung.com> 299 261 300 Microsoft James Morris <jamorris@linux.mi 262 Microsoft James Morris <jamorris@linux.microsoft.com> 301 Xen Andrew Cooper <andrew.cooper3@c 263 Xen Andrew Cooper <andrew.cooper3@citrix.com> 302 264 303 Canonical John Johansen <john.johansen@ca 265 Canonical John Johansen <john.johansen@canonical.com> 304 Debian Ben Hutchings <ben@decadent.org 266 Debian Ben Hutchings <ben@decadent.org.uk> 305 Oracle Konrad Rzeszutek Wilk <konrad.w 267 Oracle Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> 306 Red Hat Josh Poimboeuf <jpoimboe@redhat 268 Red Hat Josh Poimboeuf <jpoimboe@redhat.com> 307 SUSE Jiri Kosina <jkosina@suse.cz> 269 SUSE Jiri Kosina <jkosina@suse.cz> 308 270 309 Google Kees Cook <keescook@chromium.or 271 Google Kees Cook <keescook@chromium.org> 310 272 311 LLVM Nick Desaulniers <ndesaulniers@ 273 LLVM Nick Desaulniers <ndesaulniers@google.com> 312 ============= ============================== 274 ============= ======================================================== 313 275 314 If you want your organization to be added to t 276 If you want your organization to be added to the ambassadors list, please 315 contact the hardware security team. The nomina 277 contact the hardware security team. The nominated ambassador has to 316 understand and support our process fully and i !! 278 understand and support our process fully and is ideally well connected in 317 the Linux kernel community. 279 the Linux kernel community. 318 280 319 Encrypted mailing-lists 281 Encrypted mailing-lists 320 ----------------------- 282 ----------------------- 321 283 322 We use encrypted mailing lists for communicati !! 284 We use encrypted mailing-lists for communication. The operating principle 323 of these lists is that email sent to the list 285 of these lists is that email sent to the list is encrypted either with the 324 list's PGP key or with the list's S/MIME certi !! 286 list's PGP key or with the list's S/MIME certificate. The mailing-list 325 software decrypts the email and re-encrypts it 287 software decrypts the email and re-encrypts it individually for each 326 subscriber with the subscriber's PGP key or S/ 288 subscriber with the subscriber's PGP key or S/MIME certificate. Details 327 about the mailing list software and the setup !! 289 about the mailing-list software and the setup which is used to ensure the 328 security of the lists and protection of the da 290 security of the lists and protection of the data can be found here: 329 https://korg.wiki.kernel.org/userdoc/remail. 291 https://korg.wiki.kernel.org/userdoc/remail. 330 292 331 List keys 293 List keys 332 ^^^^^^^^^ 294 ^^^^^^^^^ 333 295 334 For initial contact see the :ref:`Contact` sec !! 296 For initial contact see :ref:`Contact`. For incident specific mailing-lists 335 specific mailing lists, the key and S/MIME cer !! 297 the key and S/MIME certificate are conveyed to the subscribers by email 336 subscribers by email sent from the specific li !! 298 sent from the specific list. 337 299 338 Subscription to incident-specific lists !! 300 Subscription to incident specific lists 339 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 301 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 340 302 341 Subscription to incident-specific lists is han !! 303 Subscription is handled by the response teams. Disclosed parties who want 342 Disclosed parties who want to participate in t !! 304 to participate in the communication send a list of potential subscribers to 343 of potential experts to the response team so t !! 305 the response team so the response team can validate subscription requests. 344 subscription requests. << 345 306 346 Each subscriber needs to send a subscription r 307 Each subscriber needs to send a subscription request to the response team 347 by email. The email must be signed with the su 308 by email. The email must be signed with the subscriber's PGP key or S/MIME 348 certificate. If a PGP key is used, it must be 309 certificate. If a PGP key is used, it must be available from a public key 349 server and is ideally connected to the Linux k 310 server and is ideally connected to the Linux kernel's PGP web of trust. See 350 also: https://www.kernel.org/signature.html. 311 also: https://www.kernel.org/signature.html. 351 312 352 The response team verifies that the subscriber 313 The response team verifies that the subscriber request is valid and adds 353 the subscriber to the list. After subscription 314 the subscriber to the list. After subscription the subscriber will receive 354 email from the mailing-list which is signed ei 315 email from the mailing-list which is signed either with the list's PGP key 355 or the list's S/MIME certificate. The subscrib 316 or the list's S/MIME certificate. The subscriber's email client can extract 356 the PGP key or the S/MIME certificate from the 317 the PGP key or the S/MIME certificate from the signature so the subscriber 357 can send encrypted email to the list. 318 can send encrypted email to the list. 358 319
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.