Don't Believe The Hype(rvisor)

Daniel Komaromy & Laszlo Szapula | Day 2, 3:50pm - 4:35pm

Abstract

A security tale as old as time: if we added one more layer of mitigation, the OS would finally be safe from exploit attempts. Like other concepts before, hypervisors have been heralded as the key to kernel integrity protection. As we know from past research, various vendor implementations have come up short under scrutiny, however. Nonetheless, Huawei introduced a Hypervisor layer in their Kirin chipsets in order to make kernel security stronger as well. As Tobias Fünke would say: though it didn't work for those people, it might just work for them! Our curiosity led us to put that to the test and see if we can blow past Huawei's HKIP implementation and the custom Hypervisor architecture underpinning it.

This talk will discuss the details of this Hypervisor, introducing the relevant details of the ARM architecture's Hypervisor support and Huawei's implementation of the concept, focusing on the mitigations it is meant to add against Linux kernel exploitation. We will explain how we went beyond manual reverse engineering and built an emulator for the Hypervisor firmware, which allowed us to learn its inner workings better, as well as build an efficient fuzzing harness for it. Finally, we'll discuss the vulnerability we have found and exploited in order to bypass its security guarantees.

The Speaker(s)

Daniel Komaromy

Daniel Komaromy

Daniel Komaromy (kutyacica) has worked in the mobile security field his entire career, going on 15+ years of vulnerability research experience playing both defense and offense. He has won Pwn2Own, presented his research at industry leading conferences like Black Hat, REcon, and CanSecWest, and disclosed scores of critical vulnerabilities in leading mobile vendors' products. Daniel is the founder of TASZK Security Labs, a vulnerability research oriented security consultancy outfit, and he still follows the motto: there's no crying in baseband!

Laszlo Szapula

Laszlo Szapula

Laszlo Szapula (LaTsa99) started as an intern at TASZK Security Labs and is now a full time member of the vulnerability research team, where he converts Ghidra projects and Club Mates into reverse engineered code. He is focused on the low-level security of Android based smartphones, including the Android kernel, hypervisors, trustzones and basebands. As presenter, his experience includes delivering mobile exploitation trainings at conferences like OffensiveCon and Hardwear.io.