
Glass - uma alternativa rápida e gratuita ao IDA Pro
como em transparente e suave
Um desmontador interativo rápido, nativo e focado em aplicativos móveis. Sucessor espiritual do IDA Pro para o fluxo de trabalho de engenharia reversa em Android / iOS, construído em torno de:
smali para manipulação de APK / DEX / smaliarmv8-encode para AArch64 e ARMv7 (A32 / Thumb) — .so nativo, iOS Mach-Ogpui (Zed) para interface nativa acelerada por GPUredb para persistência endereçada por conteúdorquickjs para plugins com script (planejado)Licença: GPL-3.0-only (herdada do smali).
Todos nós já usamos o IDA Pro — é o padrão da indústria para engenharia reversa e tem anos de plugins, mas é lento, caro e desatualizado. O Glass é 100% nativo em Rust com uma interface acelerada por GPU para interação fluida. Também é 100% gratuito e de código aberto — contribua por favor.
arm64-v8a e armeabi-v7a de uma biblioteca são pesquisadas em uma única consulta). Gramática de padrão de bytes com máscara + lacunas; gramática de assembly tipada para AArch64 e ARMv7, com um menu suspenso de preenchimento automático ciente da ISA.Um passeio pelas principais visualizações — clique em qualquer miniatura para vê-la em tamanho real.
Cada análise que o Glass faz na GUI também é exposta como um verbo de CLI que emite JSON estruturado. O mesmo binário glass é o ponto de entrada de automação — escolha um subcomando e você obtém um resultado único e scriptável, perfeito para pipelines jq e CI.```sh
glass classes ./app.apk --package com.example. --text
glass callers ./libfoo.so --artifact libfoo.so --symbol "glass::main"
onCreate across DEX, machine-readable:glass search ./app.apk onCreate | jq '.data.hits[] | select(.kind=="method")'
glass types ./app.ipa --kind swift-class --text
glass type ./app.ipa --artifact app --name blackjack.ContentView
Passe `--text` para uma renderização legível por humanos, omita para JSON.
Referência completa: **[docs/cli-api.md](https://github.com/azw413/glass/blob/main/docs/cli-api.md)**.
Isso significa que você pode programar e automatizar operações comuns.
## Habilidades e MCP
Cada verbo da CLI também é exposto como uma ferramenta através de um servidor MCP (Model Context Protocol) embutido, então qualquer host compatível com MCP — Claude Desktop, Cursor, Zed, seu próprio cliente — pode controlar o Glass diretamente para ajudar em tarefas de engenharia reversa.```sh
# Print the machine-readable skill catalog (one JSON object listing
# every verb with its schema and an example invocation).
glass skills
# Run as an MCP stdio server. Plug into any MCP host's tool list.
glass mcp
Para se registar com Claude Desktop, adicione Glass a ~/Library/Application Support/Claude/claude_desktop_config.json:```json
{
"mcpServers": {
"glass": { "command": "/usr/local/bin/glass", "args": ["mcp"] }
}
}
O modelo pode então chamar `inspect`, `symbols`, `disasm`, `cfg-of`, `dex-callers`, `search` e todos os outros verbos em qualquer pacote para o qual você o apontar. Os resultados da ferramenta retornam no mesmo envelope JSON que você obteria da CLI.
## Pesquisa
Três mecanismos complementares, todos disponíveis na mesma paleta ⌘F na GUI e como verbos CLI / MCP.
### Pesquisa de texto completo