Repolode
Verlintas

Verlintas/NOIR

Uma ferramenta de auditoria para desktop que analisa um celular Android via adb, lista permissões de apps, identifica endpoints e fluxos de dados e aplica correções reversíveis.

Estrelas
2,740
Forks
257
Issues abertas
0
Último commit
há 10 horas

O que é?

NOIR é uma ferramenta de auditoria para desktop que analisa dispositivos Android conectados via adb. Ela lista os apps que têm permissões de rede e permissões sensíveis, extrai URLs dos arquivos dex de cada APK no dispositivo e classifica os apps por fornecedor e categoria. Em seguida, relaciona as permissões aos tipos de dados que elas podem acessar, como localização, contatos, SMS ou a lista de apps, e associa esses dados aos domínios para os quais cada app se comunica, para mostrar por onde eles podem estar sendo enviados.

A ferramenta avalia os riscos e recomenda ações, separando as alterações que podem ser automatizadas com segurança daquelas que exigem análise manual. As alterações automatizadas se limitam a ajustes de app-ops, cada um com um comando de reversão gerado; para desinstalar apps, é necessário usar uma flag explícita. O comando opcional deep baixa um único APK, descompila-o com jadx e procura chamadas de alto risco, como Runtime.exec ou DexClassLoader.

NOIR é executado localmente, sem telemetria nem conta, não precisa de root e gera relatórios em JSON e Markdown, além de uma lista de domínios que pode ser importada para Pi-hole ou AdGuard. É compatível com macOS, Windows e Debian/Ubuntu. Os resultados são evidências estáticas e não comprovam que uma transferência específica ocorreu.

Recursos principais

  • 01Lista os apps que têm permissões de rede e permissões sensíveis, indicando quais dados cada permissão pode acessar.
  • 02Extrai endpoints de comunicação no dispositivo e retorna ao computador apenas pequenos resultados de texto.
  • 03Avalia os riscos e classifica os apps por fornecedor e categoria, como telemetria ou publicidade.
  • 04Analisa o AndroidManifest em busca de componentes exportados, tráfego em texto não criptografado e flags de backup e debuggable.
  • 05Aplica alterações de app-ops somente com comandos de reversão; para desinstalar, é necessário usar uma flag explícita.
  • 06Exporta uma lista de domínios para Pi-hole ou AdGuard.

Casos de uso

  • Verificar quais apps pré-instalados no seu próprio celular Android enviam dados para domínios de terceiros.
  • Analisar o código descompilado de um app em busca de chamadas arriscadas antes de confiar nele.
  • Gerar uma lista de bloqueio de domínios para carregar em um filtro DNS doméstico.
  • Restringir de forma reversível as operações em segundo plano de apps em um dispositivo pessoal.

Início rápido

  1. 1

    Clone o repositório do GitHub

    git clone https://github.com/Verlintas/NOIR
  2. 2

    Compile a CLI na pasta do projeto

    ./gradlew :cli:installDist
  3. 3

    Execute NOIR para exibir as informações sobre o projeto

    ./cli/build/install/noir/bin/noir --about

Antes de usar

  • É compatível apenas com celulares Android; iOS não é compatível.
  • Para compilar a partir do código-fonte, é necessário ter o JDK 17 ou superior e o adb, além de ativar a depuração USB no celular.
  • Os resultados são evidências estáticas e não podem comprovar que uma transferência de dados específica ocorreu.
  • O comando deep também requer a instalação separada do jadx.

Em coleções

Tópicos

Perguntas frequentes

O que é NOIR?
Uma ferramenta de auditoria para desktop que analisa um celular Android via adb, lista permissões de apps, identifica endpoints e fluxos de dados e aplica correções reversíveis. NOIR é uma ferramenta de auditoria para desktop que analisa dispositivos Android conectados via adb. Ela lista os apps que têm permissões de rede e permissões sensíveis, extrai URLs dos arquivos dex de cada APK no dispositivo e classifica os apps por fornecedor e categoria. Em seguida, relaciona as permissões aos tipos de dados que elas podem acessar, como localização, contatos, SMS ou a lista de apps, e associa esses dados aos domínios para os quais cada app se comunica, para mostrar por onde eles podem estar sendo enviados.
NOIR é gratuito? Qual é a licença?
NOIR é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
NOIR ainda é mantido?
Manutenção ativa. O último commit de NOIR foi em 6 de nov. de 2026.
Para que posso usar NOIR?
Verificar quais apps pré-instalados no seu próprio celular Android enviam dados para domínios de terceiros. Analisar o código descompilado de um app em busca de chamadas arriscadas antes de confiar nele. Gerar uma lista de bloqueio de domínios para carregar em um filtro DNS doméstico. Restringir de forma reversível as operações em segundo plano de apps em um dispositivo pessoal.
Como instalar NOIR?
Clone o repositório do GitHub: git clone https://github.com/Verlintas/NOIR Compile a CLI na pasta do projeto: ./gradlew :cli:installDist Execute NOIR para exibir as informações sobre o projeto: ./cli/build/install/noir/bin/noir --about
Onde consigo NOIR?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/Verlintas/NOIR

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados