
strumento di reverse engineering con un server MCP integrato: un'IA può fare il debug del tuo binario, non solo leggerlo — breakpoint, stepping, memoria, chiamata di funzioni. disassembler + decompilatore + debugger in stile x64dbg in uno solo. GUI per Windows, CLI per Linux.
un disassembler, decompilatore e debugger in uno — per windows e linux
listing in stile ida, un decompilatore, un grafo delle funzioni, un debugger in stile x64dbg, plugin lua e un server MCP integrato per poter puntare un'AI su un binario — un piccolo programma, tutto incluso, niente da installare per compilare.

ceasta mostra lo stesso codice dai byte grezzi fino a c leggibile, così puoi scendere al livello che ti serve:
; assembly - the real instructions // pseudocode (f5) - reconstructed c
checksum proc int checksum(int rdi)
movzx edx, byte ptr [rdi] {
test dl, dl rdx = *(char*)rdi;
je loc_1191 if (rdx == 0) {
mov eax, 0x1505 return 0x1505;
loc_1179: }
mov ecx, eax rax = 0x1505;
shl ecx, 5 do {
add eax, ecx rax = rax + (rax << 5) + rdx;
add rdi, 1 rdi = rdi + 1;
movzx edx, dl rdx = *(char*)rdi;
add eax, edx } while (rdx != 0);
movzx edx, byte ptr [rdi] return rax;
test dl, dl }
jne loc_1179
ret
loc_1191:
mov eax, 0x1505
ret
questo è djb2 (5381 è 0x1505, e (h << 5) + h è h * 33). il decompilatore è best-effort: ancora niente tipi o struct, quindi leggi registri e cast — ottimo per capire rapidamente una routine, mentre il listing resta la fonte di verità.
scaricalo dalla pagina delle release:
| file | piattaforma | cosa ottieni |
|---|---|---|
ceasta-x.y.z-setup.exe | windows 10/11 x64 | l'app completa, si installa per il tuo utente (senza admin), menu start + opzionale "apri con ceasta" |
ceasta-x.y.z-windows-x64.zip | windows x64 | l'app completa, portatile — scompatta ed esegui ceasta.exe |
ceasta-cli-x.y.z-linux-x64.tar.gz | linux x64 | ceasta-cli + plugin: analisi, disassemblaggio, decompilatore, scripting, debugger da terminale (su linux) |
ceasta-cli dbg) — breakpoint, stepping, registri, memoria. basilare ma reale; meglio su target single-threadedcall decrypt "..."), registra i target delle chiamate indirette come xref (trace)sigmake / sigapply)<binary>.ceasta committabile accanto ad essoceasta-cli per script e ciuna finestra, niente che fluttua in giro:

il decompilatore (f5):

| tasto | cosa | tasto | cosa |
|---|---|---|---|
| ctrl+o | apri un file | spazio | listing / grafo |
| g | salta a indirizzo o nome | f5 | pseudocodice (decompilatore) |
| invio / doppio click | segui l'operando | alt+b | cerca byte |
| esc / ctrl+invio | indietro / avanti | f9 | avvia debug / continua |
| n | rinomina | f7 / f8 | step into / over |
| ; | commento | f4 | esegui fino al cursore |
| x | riferimenti a qui | f2 | attiva/disattiva breakpoint |
| ctrl+s | salva nomi e commenti | f1 | tutte le scorciatoie |
i plugin sono file lua in plugins/ (accanto al programma) o in %APPDATA%\ceasta\plugins. aggiungono comandi al menu plugins. cinque sono inclusi: riepilogo file, crypto finder, wrapper namer, report stringhe, call tracer (debugger).
ceasta.register_command("Count calls", function()
local n = 0
for _, fn in ipairs(ceasta.functions()) do
n = n + #ceasta.xrefs_to(fn.addr)
end
ceasta.log(n .. " references to functions")
end)
l'intera api è nella guida allo scripting lua. il pannello output ha anche un prompt lua — prova ceasta.name(ceasta.here()).
ceasta-cli info file.exe format, entry, segments
ceasta-cli funcs file.exe functions
ceasta-cli disasm file.exe main 40 listing from a name or address
ceasta-cli graph file.exe start basic blocks of a function
ceasta-cli decompile file.exe main pseudocode for a function
ceasta-cli xrefs file.exe CreateFileW
ceasta-cli find file.exe "48 8b ?? 05"
ceasta-cli run file.exe script.lua run a plugin / script
ceasta-cli dbg ./program [args] interactive debugger (linux + windows)
ceasta-cli diff old.exe new.exe match functions, show what changed
ceasta-cli sigmake libc.a lib.sig make signatures from a file with symbols
ceasta-cli sigapply stripped lib.sig name matching functions
ceasta-cli mcp file.exe serve the file to an AI over MCP
punta un'AI (Claude Code, Claude Desktop, Cursor, ...) al binario tramite il server MCP integrato di ceasta:
claude mcp add ceasta -- ceasta-cli mcp /path/to/target.exe
può decompilare, leggere xref, rinominare funzioni, fare il diff tra build e — con --allow-debug — impostare
breakpoint, fare step, leggere la memoria e persino chiamare una funzione nel programma in esecuzione. la guida completa,
inclusi gli strumenti del debugger e le note di sicurezza, è in collega un'AI.
la gui è solo per windows, ma lo strumento da riga di comando fa analisi, disassemblaggio, decompilatore, scripting e un debugger da terminale. scarica ceasta-cli-x.y.z-linux-x64.tar.gz, scompatta ed esegui — nient'altro da installare:
tar xzf ceasta-cli-*-linux-x64.tar.gz
cd ceasta-cli-*-linux-x64
./ceasta-cli info /bin/ls format, entry, function / import / string counts
./ceasta-cli decompile /bin/ls start pseudocode for the entry point
./ceasta-cli run /bin/ls plugins/hello.lua run a lua plugin
./ceasta-cli dbg ./program debug it (break, step, registers, memory)
legge sia file elf (x86 / x64) che pe di windows, quindi puoi esaminare un exe di windows anche da linux.
il debugger da terminale (dbg) è un debugger ptrace con i nomi, il disassemblaggio e il decompilatore di ceasta integrati:
(ceasta) b main break at a name or address
(ceasta) c continue
(ceasta) ni / si step over / into until <addr> run to
(ceasta) r registers k stack x <addr> memory
(ceasta) u disassemble here (with names)
(ceasta) dec decompile the function you're stopped in
(ceasta) lua ... run lua against the live process
tutto il necessario è nel repo — solo un compilatore, niente da scaricare.
windows
ceasta.sln, scegli Release | x64, compila → build\msvc\Releasecmake -S . -B build poi cmake --build build --config Releasepowershell -ExecutionPolicy Bypass -File installer\package.ps1linux (core + cli, la gui è solo per windows)
cmake -S . -B build && cmake --build build -j
src/app.* — stato, azioni e layout principalesrc/ui/ — un file per pannello (top_bar, left_panel, ida_view, graph_view, pseudo_view, right_panel, cpu_panel, bottom_panel, status_bar, dialogs)src/widgets/ — piccoli elementi condivisi (nav_band, splitter)src/core/ — senza ui: loader (binary, pe, elf), disasm (capstone), analysis, database, decompiler, lua_host, debugger (win32) + debugger_linux (ptrace), ossrc/cli/ — ceasta-cli e il debugger da terminale dbgplugins/ — plugin lua inclusidocs/ — la guida lua, il changelog, licenze di terze parti, screenshotinstaller/ — script inno setup e packagingthird_party/ — imgui, capstone (solo x86), lua 5.4ceasta è GPLv3. le librerie incluse mantengono le proprie licenze (permissive) — dear imgui e lua sono MIT, capstone è BSD; dettagli in docs/THIRD_PARTY_NOTICES.md.