Skip to main content
Weiter zur Homepage der Europäischen Kommission (öffnet in neuem Fenster)
Deutsch de
CORDIS - Forschungsergebnisse der EU
CORDIS

Assured Recompilation of Vintage Executables via Binary Lifting: Unfreezing Legacy Software from Obsolete Toolchain Dependence

Projektbeschreibung

Ältere Software durch die Optimierung von Binärdateien modernisieren

Ältere Software, die in der Infrastruktur Verwendung findet, basiert auf veralteten Toolchains, was wiederum den Zugriff auf die Vorteile moderner Compiler eingeschränkt und überholte Hardware erforderlich macht. Die Modernisierung wird durch undokumentierte Abhängigkeiten und den diffizilen Abgleich des Quellcodes mit Binärdateien erschwert. Das ERC-finanzierte Projekt REVITALIZE wird eine innovative Methode anwenden, die von einer maßgeblichen Binärdatei ausgeht und diese für die Zwischenrepräsentation der LLVM-Compiler-Infrastruktur optimiert. Dadurch kann die bestehende Software verschiedene Zuverlässigkeitswerkzeuge und Optimierungsdurchläufe nutzen, die in der LLVM verfügbar sind. Das Projekt wird ältere x86-Binärdateien in sicherheitsgehärtete Ersatzdateien für die RISC-V-Architektur umwandeln, sowohl mit als auch ohne CHERI-Sicherheitserweiterungen. Um sicherzustellen, dass die revitalisierte Software als präziser Drop-in-Ersatz funktioniert, greift das Projekt Ideen auf, die ursprünglich im Zusammenhang mit multivariaten Ausführungsumgebungen (MVEEs) entwickelt wurden.

Ziel

A lot of everyday infrastructure is powered by legacy software that depends on obsolete toolchains. Such software is literally “stuck in time” and cannot benefit from innovations in modern compilers such as automated security mitigations applied during compilation. There are often other undesirable consequences, such as a need to use outdated hardware platforms.

Unfortunately, modernizing such legacy software isn’t as simple as taking the ancient source code (if it exists) and re-running it through a modern compiler. In practice, hidden undocumented dependencies on specific compiler versions, build systems, and other parts of older toolchains often make it infeasible to recreate legacy programs from old source code. There is also the related problem of identifying which of several surviving source code versions might be the one that corresponds to an existing authoritative binary.

In this project, the PI proposes an ambitious approach that bypasses these concerns by starting at the existing authoritative binary and then “lifting” it to the intermediate representation of the LLVM compiler infrastructure. Once “lifted,” the existing software can immediately take advantage of the vast array of software reliability tools and optimization passes that already exist for LLVM. Our project will take existing x86 legacy binaries and automatically translate them to security-hardened replacement binaries for the open standard RISC-V architecture, both with and without CHERI security extensions.

In order to provide assurance that replacement software revitalized via “lifting” actually performs exactly as a functional drop-in replacement of the original (but lacking security vulnerabilities lurking in the original), the PI proposes a novel use of Multivariant Execution Environments (MVEEs) for the fine-grained differential testing of replacement against original. This can also be used to confirm that existing legacy source code truly matches the authoritative binary.

Wissenschaftliches Gebiet (EuroSciVoc)

Programm/Programme

Thema/Themen

Finanzierungsplan

HORIZON-ERC - HORIZON ERC Grants

Alle im Rahmen dieses Finanzierungsinstruments finanzierten Projekte anzeigen

Aufforderung zur Vorschlagseinreichung

(öffnet in neuem Fenster) ERC-2024-ADG

Alle im Rahmen dieser Aufforderung zur Einreichung von Vorschlägen finanzierten Projekte anzeigen

Gastgebende Einrichtung

TECHNISCHE UNIVERSITAT BERLIN
Netto-EU-Beitrag
€ 2 500 000,00
Adresse
STRASSE DES 17 JUNI 135
10623 Berlin
Deutschland
Region
Berlin Berlin Berlin
Aktivitätstyp
Higher or Secondary Education Establishments
Links
Gesamtkosten
Keine Daten

Begünstigte (1)