Logo Passei Direto
Buscar

Inglês

ESTÁCIO
resumo fácil e explicativo, com tópicos e emojis Root Muitos usuários comuns encontram aplicativos que exigem o root em seus dispositivos. O que exatamente significa e como esse processo realmente funciona? Exemplo Se o usuário precisar de alguma funcionalidade não suportada por APIs de sistema padrão, por exemplo, remover certos aplicativos pré-instalados ou aplicativos de operadora, ou fazer aumentar o clock da CPU, ou substituir completamente o sistema operacional, a única opção que o permite realizar todas essas atividades é obtendo acesso root por meio de alguma vulnerabilidade conhecida. Como resultado, o usuário obtém privilégios elevados e controle total sobre o sistema. A legalidade desse processo varia dependendo do país; é aceitável para atividades não relacionadas a direitos autorais ou é regulamentada por algumas isenções específicas. Às vezes, o processo de root é usado alternadamente com o jailbreak1, geralmente aplicado a dispositivos iOS. No entanto, esses são procedimentos diferentes em termos de escopo. Ao contrário do iOS, no Android é possível habilitar oficialmente a instalação de aplicativos não oficiais, e muitos dispositivos são enviados com bootloaders desbloqueados, ou seja, com capacidade de modificar o sistema operacional, então apenas o root continua sendo um problema. O processo de obtenção do superusuário – root é acompanhado por riscos de segurança, já que, nesse caso, o processo remove a proteção por mecanismos e restrições de segurança incorporados ao sistema. Uma maneira comum de obter privilégios de root é colocar um utilitário Linux su padrão, que é capaz de conceder os privilégios necessários para arquivos personalizados e para um local acessível e usá-lo sob demanda. O malware pode verificar se essa ferramenta já está disponível no dispositivo comprometido e usá-la indevidamente a seu critério, sem que nenhum trabalho extra seja necessário. Muitas famílias de malware Android também vêm com ferramentas para elevar os privilégios por conta própria. Existem vários motivos pelos quais esse tipo de acesso é visado para os atacantes. Particularmente, permite-lhes obter o seguinte: Acesso a dados críticos. Capacidades de persistência aprimoradas. Capacidade de se esconder. Análise estática e dinâmica Já temos quase todos os conhecimentos suficientes para começar a analisar aplicações maliciosas. Para análise estática, o processo e as ferramentas usadas são basicamente os mesmos para diferentes versões do sistema operacional Android, as diferenças estão nas técnicas de análise dinâmica utilizada. Dalvik era uma máquina virtual de processo de código aberto, utilizado até o Android 4.4, que executava aplicativos escritos para Android. Os programas para Android são comumente escritos em Java ou em Kotlin e compilados em bytecode para a máquina virtual Java, depois traduzidos para bytecodeDalvik e armazenado em arquivos dex. O sucessor do Dalvik é o AndroidRuntime (ART), que utiliza os mesmos arquivos bytecode. Sua maior diferença é que, em vez de interpretar diretamente o bytecodedex, o ART o traduz em instruções de código de máquina para obter melhores resultados de desempenho. Análise estática Geralmente, a análise estática de um malware em bytearray envolve desmontá-lo, examinar suas instruções ou descompilar para linguagem originalmente escrita e explorar o código-fonte. Em muitos casos, a última abordagem é preferível sempre que possível, pois a leitura do código amigável reduz o tempo associado à análise. A primeira abordagem é frequentemente usada quando a descompilação não funciona por qualquer motivo, como a falta de ferramentas atualizadas ou por causa de técnicas de engenharia anti-reversa implementadas na amostra. Existem algumas ferramentas que visam restaurar as informações, a partir do bytecode compilado: 1 Baksmali Ferramenta que pode ser usada para restaurar o código de montagem Dalvik a partir de instruções de bytecode, bem como recuperar a estrutura de cabeçalho dex. 2 Apktool Fornece a funcionalidade para processar facilmente os arquivos APK e recuperar as instruções para uma linguagem de alto nível. Ferramenta bastante utilizada. 3 oat2dex Ferramenta muito útil para extrair bytecode DEX de arquivos ELF mais antigos, armazenando-os como parte de dados do tipo OAT para que possam ser analisados normalmente. 4 vdexExtractor Pode ser utilizada para extrair bytecode DEX de arquivos VDEX, pois os arquivos OAT modernos não os armazenam mais. ondemand_videoVídeo Embora a montagem de bytecode já possa ser utilizada para propósitos de análise estática, é melhor trabalhar com código descompilado para economizar tempo. Nesse caso, as ferramentas de descompilação são extremamente úteis. Em vez de restaurar as instruções de montagem, esse conjunto de ferramentas restaura o código-fonte: 1 JADX Essa ferramenta fornece linhas de comando e uma ferramenta GUI para obter um código próximo ao código-fonte original na linguagem Java – DEX para descompilador Java. Além disso, fornece funcionalidade básica de desofuscamento. 2 AndroChef Esse descompilador comercial oferece suporte a arquivos Java e Android e fornece uma GUI bastante simples. 3 JEB decompiler Outra solução comercial poderosa de desmontagem e descompilação, suporta tanto Dalvik quanto código de máquina. 4 dex2jar Embora não seja exatamente um descompilador, essa ferramenta permite que os analistas convertam arquivos DEX em JARs. Torna-se possível usar vários descompiladores Java para obter o código-fonte Java. Uma vez obtido o código-fonte, pode ser analisado em qualquer IDE ou editor de texto com destaque de sintaxe que o suporte.
User badge image
Leonardo Cardoso

há 3 semanas

Respostas

User badge image

Ed Verified user icon

há 3 semanas

Você precisa criar uma nova pergunta.

Essa resposta te ajudou?

0
Dislike0

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Mais conteúdos dessa disciplina