简要:Bypass Huawei P20 face id

Huawei P20 bypass face ID:

  1. 买一个unlock代码,解锁bootloader,刷入修改过的kernel.img
  2. kernel.img通过smc 调用firmware,
  3. 通过第一次smc,赋值一个全局变量,这个地址可以被kernel所在的EL1修改,也可被EL3使用,
  4. 第二次smc调用,这时候通过这个全局变量索引到函数地址,可以就控制函数地址和参数1
  5. 在firware层,也就是EL3层(特权级最高的地方)可以以上hijack的指针指向任意函数,实现memcpy,覆盖一个虚表指针,实现其他调用smc的时候执行任意读和任意写,
  6. 然后部署shellcode,修改El3层的face id逻辑

大致结合ppt理解就行了
https://speakerdeck.com/hhj4ck/el3-tour-get-the-ultimate-privilege-of-android-phone?slide=75

你可能感兴趣的:(简要:Bypass Huawei P20 face id)