MateAndroid – Oficina de instalação de LineageOS

Nesse domingo, 2/12/18 – 15h, no Tarrafa Hacker Clube, teremos uma oficina de instalação do sistema operacional LineageOS.

A Distribuição Android Lineage OS, é um sistema operacional de código aberto para smartphones e tablets, baseado na plataforma móvel Android. Lançado em 26 de Dezembro de 2016, LineageOS é um projeto que dá sequência ao falecido CyanogenMod, abandonado por seus desenvolvedores, e dá suporte a diversos modelos de telemóveis. Os cinco países onde a ROM é mais popular são: Índia, China, Brasil, Rússia e Alemanha.  Em menos de 1 ano (2017) o sistema já tinha mais de 1,7 milhões de dispositivos rodando o LineageOS, suportando 180 modelos de 23 fabricantes diferentes, e continua mantendo atualizações constantes.  A cada 10 dispositivos Android, 7 são alimentados por uma ROM antiga e insegura e LineageOS permite manter esses aparelhos rodando de forma segura e atualizada.

Segue lista de modelos com suporte:  https://wiki.lineageos.org/devices/

Lembre-se sempre de fazer suas copias de segurança antes de qualquer instalação!

 

Instalando LineageOS em seu Android

Hoje em dia smartphones são ferramentas que acompanham a maioria de nós o tempo todo. Esses dispositivos se tornaram computadores de bolso que utilizamos para fazer muito mais do que apenas ligações. Com eles tiramos fotos e gravamos vídeos, acessamos a internet, checamos nossos emails, interagimos em redes sociais e principalmente trocamos mensagens instantâneas com nossos contatos. Porém, ao contrário de computadores comuns, smartphones são computadores sobre os quais temos muito pouco controle.

Atualmente apenas dois sistemas operacionais de dispositivos móveis dominam o mercado, iOS desenvolvido pela Apple e Android desenvolvido pela Google. Enquanto que o primeiro é um sistema operacional proprietário, ou seja, uma caixa preta de código fechado, o segundo é parcialmente livre. Parcialmente porque o Android é composto de uma base livre com código aberto chamada de Android Open Source Project (AOSP) mas também de uma base proprietária, ambas desenvolvidas pela Google. Apesar de ser muitas vezes considerado um software livre, essa porção proprietária afeta a confiança do sistema como um todo. É impossível saber com certeza quais dados estão sendo coletados pela Google ou se existe algum tipo de backdoor escondido no sistema. Além disso, na maioria das vezes os dispositivos vem com um número limitado de atualizações o que faz com que fiquemos trancados em versões ultrapassadas e vulneráveis do Android. Outro problema corriqueiro é a falta de espaço de armazenamento porque não é possível excluir apps instalados pelo fabricante e que não utilizamos. Isso tudo somado ao fato que os smartphones são localizadores de alta precisão, constantemente ligados à antenas das operadoras, à sistemas de GPS e todo o tipo de sensores torna esse tipo de dispositivo um pesadelo em termos de segurança.

No entanto existem alternativas de sistemas operacionais para dispositivos móveis totalmente livres. Esses sistemas permitem que xs usuárixs reganhem certo controle sobre seus dispositivos, reduzindo a coleta de dados pela Google e aumentando a vida útil de seu aparelho. Uma dessas alternativas mais bem desenvolvidas e documentadas se chama LineageOS, uma distribuição baseada na porção livre do Android.

>>> Leia mais sobre outras alternativas aos serviços da Google
>>> Leia mais sobre as intenções da Google em Foda-se o Google [PDF]

O processo todo de instalação de um novo sistema operacional (também conhecidos como ROMs) em seu dispositivo varia bastante dependendo da marca e do modelo do celular, e alguns dispositivos sequer possuem maneiras fáceis de fazer essa troca. Nessa postagem vamos fazer um passo-a-passo de como instalar o LineageOS em celulares Samsung.

Antes de começar o tutorial é importante que você tenha em mãos um computador GNU/Linux com adb e heimdall instalados, um celular compatível, uma ferramenta de recuperação (sugerimos TWRP) especifica para o modelo de seu celular, o ROM especifico para o modelo de seu celular e um cabo USB>MicroUSB.

IMPORTANTE: Consulte a lista de modelos compatíveis no site do LineagesOS, como cada ROM é específico para cada modelo, tentar instalar um ROM de outro modelo pode deixar o celular inoperável.

1. No seu celular, libere a depuração USB e ADB nas configurações de desenvolvedor do celular. As vezes as configurações de desenvolvedor estão escondidas. Para encontrá-las você deve entrar no menu “Sobre o Dispositivo”(About) e clicar repetidamente em “Número da Versão” (Build Number).
2. Desligue seu dispositivo, e ligue novamente em modo download segurando vol para baixo + home + power e só então conecte o celular ao computador através do cabo USB. Aceita a responsabilidade de alterar o conteúdo de seu celular navegando com as teclas de volume conforme indicado na tela.
3.  Verifique se a conexão entre o celular e o computadro estão funcionando corretamente. Abra um terminal no seu computador e digite:

heimdall print-pit

Vários dados serão impressos na sua tela e o celular vai reiniciar em modo normal.

4. Desconecte o celular do computador e ligue-o novamente em modo download. Conecte ao computador e instale o arquivo de recuperação que você baixou para o celular usando o seguinte comando:

heimdall flash --BOOT o_nome_do_arquivo_twrp.img --RECOVERY o_nome_do_arquivo_twrp.img

Uma barra de progresso vai indicar o andamento da instalação. Aguarde o término. Uma vez que o processo estiver concluído, o celular irá reinicializar em modo de recuperação.
5. Passe o arquivo do LineageOS que você baixou para o arquivo raiz do cartão de memória do celular usando o adb. Em um terminal dentro da pasta onde o arquivo se encontra digite:

adb push nomedoarquivoLineageOS.zip /sdcard/

6. Faça o backup do seu sistema operacional atual selecionando a opção backup do TWRP.
7. Limpe seu dispositivo com a ferramenta Wipe >Advanced Wipe e selecionando os ítens cache, system e data
8. Volte ao menu principal do TWRP e selecione instalar.

Pronto! Agora é só aproveitar um sistema operacional livre, com atualizações regulares e muitas opções de customizações. Alguns aplicativos populares dependem de serviços proprietários da Google e portanto podem não funcionar perfeitamente. Sempre que possível prefira apps livres. Sugerimos a “loja” de apps F-Droid que tem uma vasta seleção de aplicativos livres.

 

 

Beabá da Criptografia de Ponta-a-Ponta

Beabá da Criptografia de Ponta-a-Ponta

As Revelações do Vault 7 Significam que Criptografia é Inútil?

Se você usou a internet em algum momento desde maio de 2013, provavelmente ouviu falar que deveria usar comunicações encriptadas. As revelações de Edward Snowden de que a Agência de Segurança Nacional dos EUA registra todas as suas ligações, textos e e-mails impulsionou o desenvolvimento e uso de aplicativos e serviços criptografados. Apenas alguns anos mais tarde, a criptografia é usada em nossa comunicação diária. Se você usa alguma dessas ferramentas de criptografia, provavelmente ouviu a frase “criptografia de ponta-a-ponta”, ou “E2EE” (end-to-end encryption). O nome é direto o suficiente: ponta-a-ponta significa que o conteúdo é encriptado de um ponto final (geralmente seu celular ou computador) a outro ponto final (o celular ou computador do destinatário pretendido de sua mensagem). Mas que tipo de segurança isso promete para você, o usuário?

Desde o início da administração de Donald Trump nos EUA, a polícia alfandegária e de proteção de fronteiras dos EUA (CBP) tem ampliado as ações que invadem a privacidade de viajantes. A CBP tem ordenado tanto cidadãos dos EUA quanto visitantes a logar em seus telefones e notebooks e entregá-los para inspeção. Eles também têm ordenado que viajantes passem suas senhas ou loguem em suas redes sociais. Viajantes que não acatam com essas ordens podem ter seu ingresso no país negado.

No início de março, o Wikileaks publicou uma coleção de documentos vazados (Vault 7) da CIA, incluindo informação sobre vulnerabilidades e brechas de software (exploits) que a CIA pagou por e manteve em segredo do público em geral. Agora que essa informação vazou, já não é apenas a CIA que tem conhecimento sobre essas vulnerabilidades – é todo mundo. O jornal New York Times e outros erroneamente noticiaram que a CIA havia quebrado a criptografia em aplicativos como Signal e WhatsApp, quando de fato o que a CIA fez foi selecionar e comprometer dispositivos Android de pessoas específicas.

Resumindo, essa revelação confirma a importância do uso de comunicação criptografada de ponta-a-ponta, porque impede que adversários estatais realizem vigilância em massa de amplo espectro. A E2EE continua sendo importante.

Muitos relatos ao redor de Vault 7 tem deixado a impressão que apps encriptados como Signal foram comprometidos. Na verdade, o dispositivo (o smartphone) é que está comprometido – o ponto final. Não há motivo para pensarmos que a criptografia em si não funciona.

Limitações: Ponto final em Texto Simples

Primeiro, é importante entender que se você pode ler uma mensagem, ela está em texto simples – ou seja, não está mais encriptada. Na criptografia de ponta-a-ponta, os pontos fracos na cadeia de segurança são você e seu dispositivo e seu destinatário e o dispositivo delx. Se seu destinatário pode ler sua mensagem, qualquer pessoa com acesso ao dispositivo delx também pode ler. Um policial disfarçado poderia ler a mensagem espiando sobre o ombro do seu destinatário, ou a polícia poderia confiscar o dispositivo do seu destinatário e abri-lo a força. Se há qualquer risco de algumas dessas situações desagradáveis acontecerem, você deve pensar duas vezes antes de enviar qualquer coisa que não gostaria de compartilhar com as autoridades.

Essa limitação em particular é relevante também para as recentes revelações feitas no Vault 7, que demonstram como que apps como Signal, WhatsApp e Telegram podem não ser úteis se um adversário (como a CIA) ganha acesso físico ao seu dispositivo ou ao dispositivo de seu contato e é capaz de desbloqueá-lo. Muitos relatos sobre o Vault 7 foram um pouco enganosos, dando a impressão que os apps em si tinham sido comprometidos. Nesse caso, o comprometimento é no nível do dispositivo – no ponto final. A criptografia em si continua sendo boa.

Limitações: Vigilância Pontual

Considerando que você não pode controlar as condições de segurança no destinatário da sua mensagem, você deve considerar a possibilidade que qualquer mensagem que você enviar para essa pessoa poderá ser lida. Ainda que raros, existem casos em que poderes estatais usam vigilância pontual direcionada a alvos individuais. Nesses casos, alvos podem estar operando com dispositivos infectados por malware com a intenção de registrar todas as comunicações que entram e saem. Esse ataque funciona no nível do ponto final, tornando a E2EE inútil contra esses adversários específicos. Por ser difícil de saber se você (ou o destinatário da sua mensagem) são alvos desse tipo de ataque, é sempre melhor evitar por padrão enviar informações muito sensíveis por meios digitais. Atualmente, esse tipo de ataque parece ser raro, mas nunca se deve correr riscos desnecessários.

Limitações: Metadados

A terceira coisa que você precisa saber sobre E2EE é que ela não protege necessariamente seus metadados. Dependendo de como as comunicações são transmitidas, os registros podem ainda conter e mostrar o tamanho e horário da mensagem, assim como remetente e destinatárix. Registros podem também mostrar a localização tanto dx remetente quanto dx destinatárix no momento que a comunicação ocorreu. Apesar de tipicamente isso não ser suficiente para mandar alguém para a cadeia, pode ser útil para provar associações entre pessoas, estabelecer proximidade a cenas de crimes, e rastrear padrões de comunicações. Todos esses pedaços de informações são úteis para estabelecer padrões maiores de comportamento em casos de vigilância direta.

Então… Por quê?

Então, se criptografia de ponta-a-ponta não necessariamente protege o conteúdo de suas comunicações, e ainda assim deixa passar metadados úteis, qual o sentido em usá-la? Uma das coisas mais importantes que a E2EE faz é garantir que seus dados nunca atinjam os servidores de outra pessoa de forma legível. Como a criptografia de ponta-a-ponta inicia no momento que você pressiona “enviar” e persiste até atingir o dispositivo dx destinatárix, quando uma empresa – como o Facebook – é intimada a fornecer os registros de suas comunicações, ela não possui nenhum conteúdo em texto simples para dar. Isso coloca as autoridades em uma posição de que, se precisam conseguir o conteúdo de suas comunicações, serão forçadas a gastar muito tempo e recursos tentando quebrar a criptografia. Nos Estados Unidos, seu direito a um julgamento rápido pode tornar essa evidência inútil para xs promotorxs, que podem não ser capazes de desencriptar a tempo de agradar umx juízx.

Vigilância em Massa

Outro uso útil para a E2EE é dificultar muito a vigilância indiscriminada, feita de arrasto pela NSA e outras órgãos da repressão. Já que não existe um ponto no meio em que suas comunicações não criptografadas possam ser pegas, o que é capturado são os mesmos blocos de texto encriptado disponíveis através de intimação. Vigilância de arrasto é geralmente conduzida coletando quaisquer dados disponíveis e submetendo-os a uma classificação automatizada em vez de análise individual. O uso de criptografia impede que algoritmos peneirem conteúdos específicos, tornando o processo muito mais complicado e geralmente não vantajoso.

Torres de Celular falsas (Stingrays)

Além da coleta de dados que a NSA executa, as polícias estaduais e federal têm, e frequentemente usam, simuladores de torres celulares conhecidos como “capturadores de IMSI” ou “Stingrays”. Capturadores de IMSI fingem ser torres celulares para enganar seu telefone e fazer com que ele dê informações que possam servir para lhe identificar, incluindo sua localização. Simuladores de torres celulares também capturam e registram suas comunicações. Como com outros tipos de interceptação, a criptografia significa que o que é capturado é largamente inútil, a menos que os órgãos da repressão estejam dispostos ao dispendioso trabalho de desencriptá-lo.

Criptografia em Repouso

Em adição ao uso de criptografia de ponta-a-ponta para proteger o conteúdo de suas mensagens enquanto elas estão em trânsito, você também pode usar encriptação total de disco para proteger suas informações enquanto estão armazenadas em seu dispositivo. Criptografia de disco significa que todas as informações em seu dispositivo são indecifráveis sem sua chave de criptografia (geralmente uma palavra-chave), criando um ponto final reforçado que é muito mais difícil de comprometer. Ainda que criptografar seu ponto final não seja necessariamente uma proteção contra os métodos mais insidiosos de vigilância, como malware, a criptografia pode prevenir que adversários que tomam posse de seus dispositivos tirem qualquer informação útil deles.


Criptografia de ponta-a-ponta não é de forma alguma um escudo mágico contra a vigilância feita por adversários Estatais ou indivíduos maliciosos, mas como visibilizado no Vault 7, seu uso pode ajudar a forçar uma mudança de procedimento: ao invés de vigilância de arrasto em massa, ataques direcionados super dispendiosos. Quando aliados ao bom senso, a dispositivos criptografados, e demais práticas de segurança, a E2EE pode ser uma ferramenta poderosa para reduzir significativamente a área de ataque. O uso consistente e habitual de criptografia de ponta-a-ponta pode anular muitas das ameaças de nível inferior e podem até mesmo levar adversários de alto nível a decidir que lhe atacar simplesmente não vale o esforço.

Leitura Adicional

— Por Elle Armageddon

Traduzido do inglês da postagem original em Crimethinc.

Tecnota: Pequenas descobertas sobre smartphone 1

Esta é uma breve compilação das descobertas que fiz para smartphone e android. Até hoje tenho um pé atrás com smartphones. Não há dúvida de que são as ferramentas mais poderosas e pervasivas de vigilância jamais inventadas. Como lidar com isso é um dos problemas mais ignorados da tecnopolítica. As pessoas simplesmente foram engolidas e usam porque têm que usar.

Repositórios e APKs

A primeira pergunta que me veio quando pensei num espertofone foi “mas pra quê diabos um software obrigatoriamente (mesmo os gratuitos/free e/ou de código aberto) tem que passar por uma das stores das grandes corporações? Primeiro, rebatizar um software para “app” já me soou estranho. E é justamente essa a diferença: um app necessariamente gera receita. Obviamente, não pra mim, nem pra ti, mas para uma empresa que já ganha MUITO dinheiro.

Além disso, tu precisas estar devidamente cadastrado nessa corporação. Não só o teu nome e email, como sempre aconteceu na internet livre, mas hoje tens que colocar teu número telefone também. Isso significa ter seu nome real completo, RG, CPF e na maioria das vezes o teu endereço. De “eu só queria instalar um software e saber mais sobre tal assunto” a internet virou “aqui está a sua conta; e lembre-se que sabemos tudo sobre você”.

Na minha mentalidade primitiva de software, eu ficava pensando: “que coisa ridícula, cadê os instaladores? Quero só baixar anonimamente e instalar a parada”. Foi então que descobri que os apps para android são programas geralmente escritos em java e compactados em um arquivo .APK. Instalar um apk é basicamente criar uma pasta e um atalho na janelinha do “telefone”. Ou seja, muito mais simples que a instalação de um software em linux, por exemplo.

Foi aí que descobri o site www.apkpure.com , que contém apks de tudo quanto é repositório de android. Ali é possível baixar sem se cadastrar. Tem também o repositório f-droid com vários app de código aberto.

cropped-header-resp1

Mas e como fica a segurança? Como vou saber que o software, na verdade o app, está igual ao que o desenvolvedor lançou? Como vou saber se não colocaram uma backdoor ou outro tipo de código malicioso? Boa pergunta. Como você que usa g-play ou i-store pode garantir isso? Que garantia de privacidade você tem do gugou? Pois é, nenhuma. Prefiro tentar aprender mais sobre segurança e trazer esse poder pra mim do que confiar numa empresa que sabidamente negocia os dados de seus clientes.

Navegador Orfox

Ao instalar o orbot (pra usar a rede TOR no smartphone), descobri que o Guardian Project tinha lançado há pouco um novo navegador para telefone que substituiria o orweb. O orfox procura manter os mesmos objetivos de projeto do Tor Browser ao mesmo tempo que incorpora várias funcionalidades do firefox para android. Seu código é aberto e pode ser revisado aqui. As diferenças entre o orfox e o tor browser e o orweb estão descritas aqui.

orfox-feature-graphic

SSH Droid

Outra pergunta que me vinha era: “como posso acessar TODOS os arquivos que estão no meu espertofone?” Eu olhava aquela interface do android sobre meus apps e ficava totalmente insatisfeito. Não sou nenhum hacker e não entendo quase nada de programação, mas não saber o que tá ali era muito frustrante.

Foi então que descobri uma forma de acessar o diretório raiz do telefone!

O que fiz foi basicamente o seguinte: instalei o sshdroid, criei um ponto de acesso sem fio no meu notebook, rodei o sshdroid para criar um servidor SSH no telefone e me conectei a ele via file explorer no linux. Segue abaixo o tutorial.

  1. No celular, baixe o SSHDroid pelo repositório f-droid.
  2. No notebook com debian, ubuntu ou linux mint, vá nas suas configurações de rede e simplesmente aperto o botão “criar um ponto de acesso sem fio”. Isso faz com que outros computadores possam se conectar remotamente ao seu computador. Na janela seguinte aparecerá o nome da rede e a senha.
  3. no celular, habilite o adaptador de rede wi-fi e conecte-se a rede criada no notebook.
  4. no celular, rode o SSHdroid. Automaticamente ele criará um servidor ssh no seu celular. Seu endereço será algo como “root@192.168.1.101”. A senha padrão é “admin”.
  5. no notebook, vá no file explorer, arquivo->conectar-se a um servidor. Escolha o protocolo SSH e digite o endereço IP. Coloque “root” como usuário e “admin” como senha.

Pronto! Divirta-se explorando o sistema de arquivos do seu espertofone desde a raiz. O tutorial completo em inglês está aqui.

Mesmo assim, não me dei por satisfeito pois dependo do celular estar ligado e funcionando para poder fazer todo esse malabarismo. Gostaria mesmo de poder acessar a memória do telefone direto do meu notebook. Isso aprenderei assim que conseguir trocar o sistema operacional do telefone (de android para securegen ou replicant). (É bem desagradável não ter uma única boa opção de sistema operacional para telefone!)

Shashlik

Esse é um software que roda programas de android no ambiente linux. Infelizmente só tem para arquiteturas de 64bits. Site.