O enraizamento explora uma fraqueza na segurança?

7

De acordo com a página da Wikipedia para fazer root no Android ,

O processo de enraizamento varia muito de acordo com o dispositivo, mas geralmente inclui a exploração de uma fraqueza de segurança no firmware do dispositivo e a cópia do subinário em um local no PATH do processo atual (por exemplo /system/xbin/su) e a concessão de permissões executáveis ​​com o chmodcomando Um aplicativo supervisor como SuperUser ou SuperSU pode regular e registrar solicitações de permissão elevadas de outros aplicativos. Existem muitos guias, tutoriais e processos automáticos para dispositivos Android populares, facilitando um processo de root rápido e fácil.

Agora, eu queria saber quais explorações estão sendo usadas nesse processo, então comecei a olhar em volta. Eu encontrei algumas referências a explorações do Android (principalmente o RageAgainstTheCode ), mas algumas perguntas aqui ( esta e Como o regulamenta as permissões de aplicativos? ) Me dão a impressão de que nenhuma exploração real está sendo executada.

Pelo que eu coletei, o processo funciona assim:

  1. Desbloquear o carregador de inicialização ( limpa o dispositivo por questões de segurança )
  2. Instale a recuperação personalizada (permitirá que arquivos ZIP arbitrários piscem)
  3. Arquivo zip Flash SuperUser ou SuperSU na recuperação personalizada.

Pelo que entendi, a recuperação personalizada é capaz de atualizar o arquivo ZIP porque ele existe em um nível mais baixo (por assim dizer) do que a ROM e, como tal, pode modificar a ROM para instalar o suaplicativo binário e o SuperUser. Ou seja, nenhuma exploração real está sendo usada para obter raiz.

Estou perdendo alguma coisa aqui? Alguma exploração está sendo realizada implicitamente durante uma dessas etapas?

Como observação, estou falando de um usuário fazendo root em um telefone, não de um código malicioso que obtém acesso root.

CatShoes
fonte

Respostas:

6

Em primeiro lugar, não há nada como O processo de enraizamento. Você mesmo respondeu parcialmente à sua pergunta: fazer o root de um dispositivo pode ser feito de maneiras diferentes. Os dois métodos mais conhecidos incluem:

  • usando uma exploração (o SuperOneClick & Co faz isso: você instala um aplicativo, clica nele e fica enraizado)
  • por meio de uma recuperação personalizada (que é inicializável diretamente e, portanto, pode acessar diretamente o dispositivo, você pode instalar qualquer ROM - que, por sua vez, já pode estar enraizada)

Portanto, respondendo à sua pergunta: Sim e não - tudo depende de como você faz root no seu dispositivo. Listar todas as explorações possíveis pode ficar um pouco demorado, então é melhor pular essa parte. Você também pode verificar as perguntas na seção "relacionadas" desta página para obter mais detalhes (especialmente Quais são as etapas para fazer o root em um dispositivo Android, em geral? ).

Izzy
fonte