Módulo “ashmem” não carrega com inicialização segura (mas “binder” carrega com inicialização segura)

Aug 17 2020

Resumo

Estou executando o Ubuntu 20.04.1 com kernel padrão 5.4.0-42-generic (instalado do Principal) em um sistema UEFI. Quero carregar dois módulos do kernel (" ashmem " e " binder ") com a inicialização segura habilitada. Pelo menos para mim, "binder" carrega bem com a inicialização segura habilitada, mas "ashmem" não carrega com a inicialização segura habilitada. Ambos os módulos são carregados com a inicialização segura desativada.

Detalhes

Pacotes de kernel (instalados a partir do principal)

  • linux-headers-5.4.0-42

  • linux-headers-5.4.0-42-generic

  • linux-image-5.4.0-42-generic

  • linux-modules-5.4.0-42-generic

  • linux-modules-extra-5.4.0-42-generic

Inicialização segura desativada

Com a inicialização segura desativada, posso carregar o módulo "ashmem" usando o seguinte:

sudo modprobe ashmem_linux

Além disso, com a inicialização segura desativada, posso carregar o módulo "fichário" usando o seguinte:

sudo modprobe binder_linux

Portanto, está tudo certo com a inicialização segura desativada .

Inicialização segura habilitada

Com o Secure Bota habilitado, posso não carregar o "ashmem" módulo usando o seguinte:

sudo modprobe ashmem_linux

Ao tentar fazer isso, obtenho o seguinte:

modprobe: ERROR: could not insert 'ashmem_linux': Operation not permitted

No entanto, mesmo com a inicialização segura ativada, ainda posso carregar o módulo "fichário" sem nenhum problema usando o seguinte:

sudo modprobe binder_linux

Portanto, estou intrigado por que "binder" carrega com a inicialização segura habilitada, mas "ashmem" não carrega com a inicialização segura habilitada.

E, vale a pena, não tive nenhum outro problema com a inicialização segura.

Questões

  1. Existe uma maneira de forçar o carregamento do "ashmem" com a inicialização segura ativada?

  2. A incapacidade de carregar o "ashmem" com a inicialização segura ativada é um recurso ou um bug?

  3. E se for um bug, onde no Launchpad seria o melhor lugar para relatar o bug?

Termo aditivo

Ao acima, acrescentarei que habilitei a inicialização segura (e inscrevi o MOK) durante a instalação limpa inicial do Ubuntu 20.04. Mesmo assim, seguindo a excelente sugestão dahttps://askubuntu.com/users/15811/rinzwind, Executei o seguinte após a instalação inicial:

sudo kmodsign sha512 /var/lib/shim-signed/mok/MOK.priv /var/lib/shim-signed/mok/MOK.der /lib/modules/`uname -r`/kernel/drivers/staging/android/ashmem_linux.ko

E depois de executar o acima, eu executei novamente:

sudo modprobe ashmem_linux

sudo modprobe binder_linux

lsmod | grep -e ashmem_linux -e binder_linux

SUCESSO! Ambos “ashmem” e “fichário” carregados! obrigadohttps://askubuntu.com/users/15811/rinzwind!!

O que mais, https://anbox.io/começa para mim agora com a inicialização segura ativada, que era meu objetivo final. :)

Visto que “ashmem” e “fichário” agora carregam para mim com a inicialização segura ativada, estou marcando esta pergunta como RESPONDIDA. Porém, percebi outro erro em relação ao módulo “fichário”. Para os interessados, postei uma pergunta relacionada a esse errohttps://askubuntu.com/questions/1267990/ls-1-dev-ashmem-binder-yields-anticipated-result-for-dev-ashmem-but-an-err.

Respostas

5 Rinzwind Aug 17 2020 at 07:40

Você precisa assinar o módulo. Parece que isso pode ser feito com:

kmodsign sha512 /var/lib/shim-signed/mok/MOK.priv /var/lib/shim-signed/mok/MOK.der /lib/modules/`uname -r`/kernel/drivers/staging/android/ashmem_linux.ko