
Glass - eine schnelle und kostenlose IDA-Pro-Alternative
wie in durchsichtig und glatt
Ein schneller, nativer, mobile-app first interaktiver Disassembler. Geistiger Nachfolger von IDA Pro für den Android‑/iOS‑Reverse‑Engineering‑Workflow, aufgebaut um:
smali für APK / DEX / smali‑Handhabungarmv8-encode für AArch64 und ARMv7 (A32 / Thumb) — native .so, iOS Mach‑Ogpui (Zed) für GPU‑beschleunigte native UIredb für inhaltsadressierte Persistenzrquickjs für skriptbare Plugins (geplant)Lizenz: GPL-3.0-only (von smali übernommen).
Wir alle haben IDA Pro benutzt – es ist der Industriestandard für Reverse Engineering und hat jahrelange Plugin-Entwicklung hinter sich, aber es ist langsam, teuer und veraltet. Glass ist zu 100 % nativ in Rust mit einer GPU‑beschleunigten Oberfläche für flüssige Interaktion. Es ist außerdem zu 100 % kostenlos und Open Source – bitte trage bei.
arm64-v8a- als auch armeabi-v7a-Kopien einer Bibliothek in einer einzigen Abfrage durchsucht werden). Byte‑Muster‑Grammatik mit Maskierung + Lücken; getippte Assembly‑Grammatik für AArch64 und ARMv7 mit einem ISA‑bewussten Autovervollständigungs‑Dropdown.Ein Rundgang durch die Hauptansichten – klicke auf ein Vorschaubild, um es in voller Größe zu sehen.
Jede Analyse, die Glass in der GUI durchführt, wird auch als CLI‑Befehl bereitgestellt, der strukturiertes JSON ausgibt. Dieselbe glass-Binärdatei ist der Einstiegspunkt für Automatisierung – wähle einen Unterbefehl und du erhältst ein einmaliges, skriptbares Ergebnis, perfekt für jq-Pipelines und 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
Pass `--text` für eine menschenlesbare Darstellung, lassen Sie es für JSON weg.
Vollständige Referenz: **[docs/cli-api.md](https://github.com/azw413/glass/blob/main/docs/cli-api.md)**.
Damit können Sie gängige Operationen skripten und automatisieren.
## Fähigkeiten und MCP
Jedes CLI-Verb wird auch als Tool über einen integrierten MCP (Model Context Protocol)-Server bereitgestellt, sodass jeder MCP-fähige Host – Claude Desktop, Cursor, Zed, Ihr eigener Client – Glass direkt zur Unterstützung bei Reverse-Engineering-Aufgaben steuern kann.```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
Um sich bei Claude Desktop zu registrieren, fügen Sie Glass zu ~/Library/Application Support/Claude/claude_desktop_config.json hinzu:```json
{
"mcpServers": {
"glass": { "command": "/usr/local/bin/glass", "args": ["mcp"] }
}
}
Das Modell kann dann `inspect`, `symbols`, `disasm`, `cfg-of`, `dex-callers`, `search` und jedes andere Verb auf jedem Bundle aufrufen, auf das Sie es richten. Die Ergebnisse der Tools kommen als dasselbe JSON-Envelope zurück, das Sie auch von der CLI erhalten würden.
## Suchen
Drei komplementäre Suchmaschinen, alle verfügbar aus derselben ⌘F-Palette in der GUI und als CLI/MCP-Verben.
### Volltextsuche