Quase todo produto de segurança que fala em inteligência artificial deixa uma pergunta sem resposta: o que exatamente o modelo decide? Em análise de malware essa pergunta pesa mais do que em qualquer outra área, porque um veredito precisa ser defensável. O analista que bloqueia um aplicativo, escala um incidente ou aprova a revisão de um fornecedor precisa apontar evidência, não um parágrafo escrito por um modelo.
O Droidwatch usa um modelo de linguagem em exatamente dois lugares, e nenhum deles produz o veredito:
- O assistente do relatório («Pergunte à IA»). Um painel de chat dentro de cada relatório que responde, em linguagem simples, perguntas sobre aquele relatório: o que o app faz, por que recebeu aquele veredito, o que bloquear e o que fazer em seguida.
- A skill para assistentes de IA. Um cliente leve que permite a um assistente como o Claude Code enviar um APK ao Droidwatch, aguardar a análise e devolver o veredito, a infraestrutura de comando e controle (C2) e os achados principais, sem sair do chat.
Os dois resolvem problemas diferentes. A skill responde este APK é malicioso? O assistente responde por quê, e o que faço agora? Este artigo documenta ambos: o que cada um lê, o que devolve, o que chega ao modelo, quais planos o incluem e onde fica a fronteira entre a saída da IA e a evidência da análise.
De onde vem o veredito
O veredito é produzido pela cadeia de análise, e nada do que este artigo descreve o altera.
Um único envio executa uma cadeia de 28 etapas que produz mais de 25 análises independentes: parsing do manifesto e do certificado, comparação com o Google Play, análise do bytecode DEX, código nativo e detecção de packers, detecção de família com regras YARA, cadeia de suprimentos e extração de C2. Em paralelo roda um classificador de aprendizado de máquina, medido em F1 macro 0,9873 sobre um holdout de 1.661 amostras, treinado com 6.642 amostras do CICMalDroid 2020. O classificador contribui com um sinal para a pontuação; não a decide.
O resultado é uma pontuação de risco de 0 a 100, em que mais alto é pior, com cortes fixos: 65 ou mais é Malicious, 40-64 High Risk, 20-39 Suspicious e abaixo de 20 Benign.
Os campos em prosa do relatório, narrative e behavior_summary, também não são escritos por um modelo de linguagem. Eles vêm de um motor de regras: uma fase da cadeia de ataque só aparece quando há achados que a sustentem. Essa decisão de projeto é anterior ao assistente e é o motivo pelo qual o assistente pôde ser adicionado sem risco para a evidência. A camada de evidência continua determinística, e o modelo de linguagem fica por cima dela como leitor.
A estrutura completa de um relatório está em o que o relatório revela ao analisar um APK online.
O assistente do relatório
O que é
Todo relatório tem um botão flutuante no canto inferior direito com o texto Pergunte à IA. Ele abre um painel de chat (em tela cheia no celular) vinculado àquele relatório, com o título «Pergunte ao relatório». O painel sugere perguntas iniciais, e elas mostram para que serve:
- O que este app realmente faz?
- Por que recebeu este veredicto?
- O que devo bloquear no firewall?
- Explique para alguém não técnico.
O assistente leu o relatório inteiro. Ele responde citando os achados do próprio relatório e, quando a pergunta exige mais detalhe, lê as seções correspondentes: permissões, componentes, URLs, indicadores de C2 e o restante de sections[]. Ele responde no idioma da pergunta, de modo que um analista em São Paulo e um diretor em Bogotá podem trabalhar sobre o mesmo relatório.
O que ele não faz
O assistente nunca muda o veredito. A pontuação e o veredito vêm da cadeia de análise. O assistente é um leitor do relatório, não um segundo motor, e não tem como repontuar uma amostra, acrescentar um achado ou removê-lo.
Isso define como a resposta deve ser usada. O que o assistente diz é uma explicação de evidência que já existe no relatório. Se a resposta vai para o registro de um incidente, o que se cita é o achado que o assistente apontou, não a frase do assistente.
Para quem é
Relatórios são escritos para analistas. Muitas das pessoas que precisam agir sobre um relatório não são: o responsável por prevenção a fraudes que decide se avisa os clientes, o dono de produto cujo app compartilha um achado de cadeia de suprimentos, o responsável por compliance que precisa registrar uma nota. O caminho habitual é um analista reescrever o relatório à mão para cada público. O assistente troca esse passo por uma pergunta: explique para alguém não técnico, o que a central de atendimento deve dizer a um cliente que instalou isto, quais destes achados se aplicam ao nosso próprio app.
Ele também encurta o trabalho do próprio analista em terreno pouco familiar. Um engenheiro reverso que conhece bem o Android pode não saber o que uma técnica específica do ATT&CK Mobile implica operacionalmente, ou por que uma anomalia de certificado importa. Perguntar ao relatório é mais rápido do que cruzar três abas.
Em bancos e fintechs brasileiros, onde um mesmo trojan bancário obriga a coordenar fraude, segurança e atendimento — e onde o Pix encurta o tempo de reação —, essa tradução costuma ser o gargalo real depois da análise.
Planos e cotas
O assistente está incluído nos planos Pro, Team e Enterprise. No Free e sem conta, o painel aparece, mas bloqueado.
| Plano | Perguntas por mês | Perguntas por relatório |
|---|---|---|
| Pro | 40 | até 20 |
| Team | 120 | até 20 |
| Enterprise | 200 | até 20 |
A conversa fica salva com o relatório, então continua lá quando ele é reaberto, e é apagada quando o relatório é apagado.
O que chega ao modelo
O modelo por trás do assistente é o Claude, da Anthropic, listado como suboperador na política de privacidade.
O que é enviado, e quando, é restrito:
- Nada é enviado até que uma pergunta seja feita. Abrir um relatório não envia nada ao modelo.
- Quando uma pergunta é feita, o modelo recebe a pergunta, o resumo do relatório e as partes do relatório que ele lê para responder.
- O APK nunca é enviado. Nem a identidade da conta, nem o e-mail.
O modelo recebe o relatório, não a amostra. Para organizações que analisam aplicativos enviados por clientes — e que respondem à LGPD —, essa é a fronteira relevante: o binário fica nos servidores do Droidwatch e o assistente só vê o resultado da análise.
A skill para assistentes de IA
O que é
A skill cobre a outra ponta do fluxo: o momento em que alguém pergunta este APK é malicioso? e quer a resposta onde já está trabalhando. É um único arquivo Python sem dependências, empacotado como skill para assistentes de IA. O assistente envia o arquivo ao Droidwatch, consulta o status até o trabalho terminar e devolve um resultado compacto de cerca de 8 KB. A análise roda nos servidores do Droidwatch, com a mesma cadeia de um envio pelo navegador.
O resultado contém:
- o veredito e a pontuação;
- os achados críticos e altos, priorizados;
- os indicadores de C2 descriptografados, quando a extração dá certo;
- as técnicas do MITRE ATT&CK Mobile;
- um boletim de postura de segurança MASVS;
- se a amostra resiste à instrumentação;
- as etapas que não terminaram;
- as seções que o plano não inclui.
Dois desses campos existem para que o assistente não exagere o resultado. «Etapas que não terminaram» e a distinção entre não foi possível verificar e nada encontrado impedem que um resumo sugira um resultado limpo quando houve verificações que não foram feitas.
Instalação
A skill é baixada como zip em https://droidwatch.app/ci/claude-skill/droidwatch-skill.zip e descompactada na pasta de skills do assistente; no Claude Code é ~/.claude/skills/. O único requisito é Python 3. Não há repositório público para clonar. O passo a passo está na documentação da skill, disponível em inglês.
Planos e limites
A skill não depende do plano e funciona sem chave de API, em modo anônimo. A chave aumenta os limites; não libera o acesso. As chaves são criadas no aplicativo web, em Meu perfil → Chaves de API, com o escopo read + analyze.
| Modo | Análises por dia | Tamanho máximo |
|---|---|---|
| Anônimo (sem chave) | 3 | 150 MB |
| Conta Free | 5 | 200 MB |
| Pro | 100 | 500 MB |
| Team | 500 | 750 MB |
| Enterprise | Sem limite diário | 1 GB |
O tempo de análise depende do tamanho: um APK de 50 MB leva de dois a cinco minutos, e pacotes acima de 100 MB levam em média de oito a dez.
Escopo
A skill foi feita para identificar apps maliciosos e a infraestrutura por trás deles. Não é uma ferramenta para auditar vulnerabilidades do próprio aplicativo; esse trabalho cabe ao relatório completo ou a uma varredura no CI/CD. E só deve ser usada em software que o usuário tenha direito de analisar.
Qual usar em cada caso
| Skill para assistentes de IA | Assistente do relatório | |
|---|---|---|
| Pergunta que responde | Este APK é malicioso? | Por que este veredito, e o que faço agora? |
| Onde funciona | No assistente de IA do usuário | Dentro do relatório do Droidwatch |
| Entrada | Um arquivo APK | Um relatório pronto |
| O que chega a um modelo | O resultado compacto, no próprio assistente do usuário | A pergunta e o conteúdo do relatório de que ela precisa; nunca o APK |
| Plano | Qualquer um, inclusive sem conta | Pro, Team e Enterprise |
| Usuário típico | Analista ou desenvolvedor fazendo a primeira triagem | Analista, responsável por fraude, gestor ou auditor que age sobre um resultado |
Na prática, os dois se encadeiam. Um APK suspeito chega num chamado; o analista roda a skill no chat e recebe um veredito High Risk com um domínio de C2. Abre o relatório completo no Droidwatch e pergunta ao assistente o que esses indicadores significam para a equipe de rede e como explicar o achado para a área de negócio. A triagem custou uma mensagem; a explicação, duas perguntas.
Os princípios por trás do projeto
As decisões acima seguem algumas regras que valem para toda função de IA do produto:
- A evidência é determinística. Os achados, a pontuação e o veredito vêm da cadeia de análise e do motor de regras. Um modelo de linguagem os lê; não os produz.
- O modelo vê o mínimo. O conteúdo do relatório de que a pergunta precisa; nunca o binário nem a identidade da conta.
- Os limites são declarados. Verificações não feitas são informadas como tal, as cotas por plano são públicas e o papel do assistente é descrito como explicação, não detecção.
Numa ferramenta de segurança, o valor da IA não está em encontrar malware que a cadeia de análise não encontra. Está em permitir que as pessoas que precisam agir sobre esse resultado o entendam sem esperar que um analista o traduza.
Perguntas frequentes
A IA detecta o malware no Droidwatch? Não. A detecção é feita pela cadeia de análise de 28 etapas, que inclui um classificador de aprendizado de máquina que contribui com um sinal para a pontuação. O assistente de IA lê o relatório pronto e o explica. Ele não pode mudar o veredito.
O APK é enviado ao modelo de linguagem? Não. Quando uma pergunta é feita, o modelo recebe a pergunta, o resumo do relatório e as seções de que precisa. O APK, a identidade da conta e o e-mail não são enviados.
Qual modelo o assistente usa? O Claude, da Anthropic, listado como suboperador na política de privacidade.
Dá para usar o assistente no plano Free? Não. Ele está incluído no Pro, Team e Enterprise. No Free e sem conta, o painel aparece, mas bloqueado.
A skill exige plano pago ou chave de API? Não. Funciona em modo anônimo com três análises por dia. Uma chave de qualquer plano aumenta os limites.
Com quais assistentes a skill funciona? Ela é instalada onde o assistente lê suas skills; a documentação cobre o Claude Code.
Onde ficam as conversas? Com o relatório. São apagadas quando o relatório é apagado.
Analise um APK ou consulte a documentação da skill.