
Aplicação Django que realiza SAST e Malware Analysis para APKs Android.
Análise de segurança para APKs Android, do upload a descobertas acionáveis.
Mobile Audit é uma aplicação Django para testes de segurança de aplicações estáticas e inspeção de malware. Ela extrai metadados de APK, detecta padrões de implementação de risco, organiza descobertas por severidade e fornece um espaço de trabalho focado para revisão e relatórios.

O Docker Compose executa a pilha local completa: Django, PostgreSQL, RabbitMQ, Celery e Nginx.
docker compose build
docker compose up
Abra http://localhost:8888 quando os serviços estiverem prontos.
Para executar em segundo plano ou parar a pilha:
docker compose up -d
docker compose down
Antes de usar o Mobile Audit fora de um ambiente local, substitua o segredo de exemplo, as credenciais do banco de dados e as credenciais do administrador em .env.example.
| Área | O que o Mobile Audit oferece |
|---|---|
| Inspeção de APK | Metadados da aplicação, componentes, permissões, certificados, strings, bancos de dados e arquivos |
| Análise estática | Regras SAST configuráveis com mapeamentos CWE e Mobile Top 10 |
| Verificações de malware | Verificações de domínio contra fontes MalwareDB e Maltrail |
| Gerenciamento de descobertas | Resumos de severidade, evidências detalhadas, edição e triagem de falsos positivos |
| Integrações | Inspeção opcional do VirusTotal e exportação para DefectDojo |
| Relatórios | Exportações em PDF mais uma API REST autenticada por token |
Revise o histórico de varredura de uma aplicação e compare como a contagem de descobertas muda entre versões de APK.

Passe do resumo de segurança para metadados da aplicação, permissões, componentes, descobertas, certificados, strings, arquivos e bancos de dados.

A interface usa Bootstrap 5 e JavaScript nativo. Navegação, filtragem de tabela ao vivo, ordenação, paginação, confirmações e atualizações de status de varredura não exigem jQuery.
As regras de análise podem ser ativadas ou desativadas na tela Patterns. Alguns padrões codificados são derivados do apkleaks.

| Serviço | Responsabilidade |
|---|---|
| Django 5.2 LTS | Aplicação web e API REST |
| PostgreSQL 16 | Dados persistentes da aplicação |
| Celery | Análise de APK em segundo plano |
| RabbitMQ 4.2 | Broker de tarefas |
| Nginx | Ponto de entrada HTTP ou TLS |
O runtime da aplicação usa Python 3.12. A descompilação de APK é fornecida pelo JADX.
Solicite um token:
POST /api/v1/auth-token/
Autentique solicitações subsequentes:
Authorization: Token <api-key>
| Documentação | Caminho |
|---|---|
| Swagger UI | /swagger/ |
| ReDoc | /redoc/ |
| OpenAPI JSON | /swagger.json |
| OpenAPI YAML | /swagger.yaml |
Os recursos a seguir estão desativados por padrão e são configurados através de .env.example:
Ative apenas os serviços para os quais você tem endpoints e credenciais válidos.
Coloque o certificado e a chave privada em nginx/ssl, depois inicie a configuração TLS:
docker compose -f docker-compose.prod.yaml up -d
A aplicação estará disponível em https://localhost.
Para testes locais, gere um certificado autoassinado de um dia:
openssl req -x509 -nodes -days 1 -newkey rsa:4096 \
-subj "/C=ES/ST=Madrid/L=Madrid/O=Example/OU=IT/CN=localhost" \
-keyout nginx/ssl/nginx.key \
-out nginx/ssl/nginx.crt