Date | Day | Time | Duration |
21 Aug | Monday | 0900-17:00 ICT/GMT+7 | 8 Hours |
22 Aug | Tuesday | 0900-17:00 ICT/GMT+7 | 8 Hours |
23 Aug | Wednesday | 0900-17:00 ICT/GMT+7 | 8 Hours |
24 Aug | Thursday | 0900-17:00 ICT/GMT+7 | 8 Hours |
Because we give you all the lecture and lab materials and videos after class, what you’re really paying for is support from the instructor! So you’ll be entitled to keep asking up to 20 questions after class, with 1-2 hour turnaround answers (after accounting for time-zone differences.) This lets you keep productively working through the material if you run out of time at the conference. If you’d like to learn more about the benefits of this style of class delivery, please read this blog post.
Introduction
Stack Buffer Overflows
* CVE-2021-21574 🥷 “BIOS Disconnect”
* CVE-2022-0435
* CVE-2018-9312
* CVE-2018-9318
* CVE-2020-10005
* CVE-2021-20294
* CVE-2021-43579
* 2021-CVE-None-BaseBand#1
* CVE-2022-0435
– Writing good sanity checks, by example
– Safer C runtime API options
– FORTIFY_SOURCE
– Piecemeal type-safe language usage
– FORTIFY_SOURCE
– Manual code auditing guidance
– Commercial static analysis tools
– Fuzzing
– Address Sanitizer
– Stack Canaries
– Address Space Layout Randomization (ASLR)
– Non-Executable Memory
– Control Flow Integrity (CFI)
– Tagged Memory
Heap Buffer Overflows
* CVE-2020-0917🥷
* CVE-2019-7287🌚
* CVE-2020-11901 (Part of “Ripple20”)
* CVE-2020-25111 (Part of “Amnesia:33”)
* CVE-2020-27009 (Part of “NAME:WRECK”)
* CVE-2021-21555
* CVE-2021-42739
Non-linear Out-of-bounds Writes (OOB-W)
* CVE-2019-10540🥷
* CVE-2020-0938🌚
* CVE-2020-1020🌚
* CVE-2020-13995
* CVE-2020-27930🌚
* CVE-2021-26675 “T-BONE”
* CVE-2021-28216
* CVE-2022-25636
Integer Overflows/Underflows
* CVE-2020-0796🥷 “SMBGhost”
* CVE-2019-5105
* CVE-2019-3568🌚
* CVE-2019-14192
* CVE-2020-11901 (Part of “Ripple20”)
* CVE-2020-16225
* CVE-2020-17443 (Part of “Amnesia:33”)
* CVE-2021-30860🌚
* CVE-2021-22636
Other Integer Issues
* CVE-2019-15948🥷
* CVE-2019-14196
* CVE-2019-20561
* CVE-2020-15999🌚
* CVE-2020-17087🌚
* CVE-2021-33909 “Sequoia”
Uninitialized Data Access
* CVE-2019-1458🌚🥷
* CVE-2022-26721
* CVE-2022-1809
* CVE-2021-3608
* CVE-2022-29968
* CVE-2021-27080
Race Conditions
* CVE-2019-11098🥷
* CVE-2021-4207
* CVE-2021-34514
* 2022-CVE-None-MSMu
* CVE-2020-7460
* 2019-CVE-None-QualcommWiFiSB
Use-After-Free (UAF)
* CVE-2020-29661🥷
* CVE-2021-28460
* CVE-2020-2674
* CVE-2020-2758
* CVE-2021-36955
* CVE-2020-9715
Type Confusion
* CVE-2021-1732🌚🥷 & CVE-2022-21882🌚
* CVE-2020-3853
* CVE-2021-30857
* CVE-2020-27932🌚 & CVE-2021-30869🌚
* CVE-2021-41073
* CVE-2022-1786
Information Disclosure
* CVE-2021-1969🥷
* CVE-2021-3947
* CVE-2022-21877
* CVE-2021-1758
* CVE-2019-12265
* CVE-2021-3592
Conclusion for Part 2
Xeno began leading Windows kernel-mode rootkit detection and defense research projects at MITRE in 2009, before moving into research on BIOS security in 2011. His team’s first public talks started appearing in 2013, which led to a flurry of presentations on BIOS-level vulnerabilities up through 2014. In 2015 he co-founded LegbaCore.
And after presenting a firmware worm that could spread between Macs via Apple’s EFI-based BIOS and Thunderbolt Ethernet adapters, he ended up working for Apple. There he worked on securing all the lesser-known firmwares on Macs and peripherals – everything from 3rd party GPUs to SecureBoot for monitors! He also worked on the x86-side of the T2 SecureBoot architecture, and his final project was leading the M1 SecureBoot architecture – being directly responsible for designing a system that could provide iOS-level security, while still allowing customer choice to trust arbitrary non-Apple code such as Linux bootloaders. He left Apple in Dec 2020 after the M1 Macs shipped, so he could work full time on OpenSecurityTraining2