Die Spezifikation ist nicht das Artefakt
Compiler, handgeschriebener Assemblercode und Closed-Source-Anbieter stehen zwischen einem verifizierten Entwurf und dem Code, der tatsächlich ausgeliefert wird.
Binäranalyse-Plattform
Die formale Verifikation kryptografischer Protokolle endet meist beim symbolischen Modell — kompilierter Code und die zugrunde liegende Mikroarchitektur werden wegabstrahiert. CryptoBAP schließt diese Lücke: Die Plattform extrahiert protokollrelevante Modelle direkt aus realen Binärdateien und analysiert sie unter expliziten Leakage-Contracts.
Begutachtet auf der ACM CCS und der IEEE CSF. Open Source unter AGPL-3.0.
Das Problem
Symbolische Modelle beschreiben, was ein Protokoll tun soll. Ausgelieferte Programme tun mehr: Sie verzweigen abhängig von Geheimnissen, adressieren damit den Speicher und spekulieren über ihre eigenen Grenzen hinaus. Diese Verhaltensweisen tauchen in der Spezifikation nie auf — ein Beweis über die Spezifikation sagt daher nichts über sie aus.
Compiler, handgeschriebener Assemblercode und Closed-Source-Anbieter stehen zwischen einem verifizierten Entwurf und dem Code, der tatsächlich ausgeliefert wird.
Cache-Zustände und spekulative Ausführung machen geheimnisabhängigen Kontrollfluss beobachtbar — vollständig außerhalb des symbolischen Modells.
Reale Protokollstacks umfassen Tausende Instruktionen über mehrere Sprachen hinweg. Leckagen von Hand zu suchen ist weder vollständig noch reproduzierbar.
Der Ansatz
Ausgehend von einem ausgewählten Bereich der Binärdatei durchläuft CryptoBAP eine sechsstufige Werkzeugkette, an deren Ende ein etablierter Protokollverifizierer steht — ohne dass an irgendeiner Stelle ein Modell von Hand geschrieben wird.
Ghidra
HolBA
Scam-V
Krypto-bewusste Engine
Sapic+
Tamarin · ProVerif · DeepSec
Fähigkeiten
Maschinencode wird mit dem auf HOL4 aufbauenden HolBA-Framework nach BIR übersetzt — einer verifizierten binären Zwischendarstellung.
Programme werden über die Scam-V-Plattform mit expliziten Angreifer-Beobachtungsmodellen instrumentiert: Constant-Time sowie Spekulation nach Spectre-PHT.
Die Ausführung löst indirekte Sprünge auf und behandelt beschränkte Schleifen durch automatische Schleifen-Summarisierung — über sämtliche Pfade des untersuchten Bereichs.
Ereignis- und Beobachtungsspuren werden nach Sapic+ übersetzt und sind ohne handgeschriebenes Protokollmodell analysierbar.
Das extrahierte Modell speist Tamarin, ProVerif und DeepSec — damit sind sowohl Spur- als auch Äquivalenzeigenschaften erreichbar.
Die Übersetzung von der Binärdatei zum symbolischen Modell ist von einem Korrektheitsbeweis begleitet: Aussagen über das Modell übertragen sich zurück auf den Code.
Ergebnisse
Die Werkzeugkette wurde auf Closed-Source-Desktopsoftware, moderne VPN- und SSH-Implementierungen sowie standardisierte Reisepass-Protokolle angewendet.
WhatsApp Desktop
Modelle der Sitzungsverwaltung und der Double-Ratchet-Komponenten wurden direkt aus der Binärdatei extrahiert. Unter dem Beobachtungsmodell unterscheidet das Verhalten des Instruktions-Caches, ob bereits eine Konversation mit einem bestimmten Kontakt besteht.
BAC · Elektronische Reisepässe
Das Protokoll Basic Access Control wurde mit aktivierten Leakage-Contracts analysiert. Dabei traten Verletzungen der Unverkettbarkeit zutage, die eine rein symbolische Analyse der Spezifikation nicht sichtbar macht.
Protokolleigenschaften
Anhand der extrahierten Modelle wurde Forward Secrecy verifiziert und ein bekannter Klon-Angriff auf die Post-Compromise Security unter einem State-Cloning-Kompromiss identifiziert.
Mit CryptoBAP verifiziert oder analysiert:
Eine geführte Demonstration analysiert das Protokoll Basic Access Control — vom Bereich der Binärdatei bis zum Urteil des Verifizierers.