
CVE-2019-2215 poc para o kernel endurecido da Huawei
Root temporário para kernel endurecido da Huawei via CVE-2019-2215
Este código foi escrito para P20 Pro (CLT-AL00), e o offset do kernel foi obtido do firmware com build fingerprint: 'HUAWEI/CLT-AL00/HWCLT:8.1.0/HUAWEICLT-AL00/176(C00):user/release-keys'
Assim como o KNOX da Samsung, a Huawei adicionou muitos mecanismos para impedir exploração por hackers e melhorar a 'segurança'.
kti_offset (como KASLR)get_fs() retorna KERNEL_DS ou USER_DS; alterar current_thread_info()->addr_limit não funcionarácommit_creds()CONFIG_SECURITY_SELINUX_DEVELOP não está definido, o SeLinux não pode ser colocado em estado permissivo globalss_initialized, policydb->permissive_map, security_hook_headsEsses mecanismos dificultam a exploração de dispositivos Huawei antigos, mesmo se estiverem vulneráveis ao CVE-2019-2215.
Primeiro, compile e execute patch_system.c; isso anulará o selinux bagunçando o mapeamento do selinux e chamando avc_ss_reset().
Em seguida, compile e execute poc.c para obter shell root.
(Opcional) Compile o daemon su e inicie-o via poc para permitir que outros aplicativos usem root (veja scripts/termux-boot).
O daemon su foi retirado e modificado de https://github.com/corellium/sud