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)
CORDIS klassifiziert Projekte mit EuroSciVoc, einer mehrsprachigen Taxonomie der Wissenschaftsbereiche, durch einen halbautomatischen Prozess, der auf Verfahren der Verarbeitung natürlicher Sprache beruht. Siehe: Das European Science Vocabulary.
CORDIS klassifiziert Projekte mit EuroSciVoc, einer mehrsprachigen Taxonomie der Wissenschaftsbereiche, durch einen halbautomatischen Prozess, der auf Verfahren der Verarbeitung natürlicher Sprache beruht. Siehe: Das European Science Vocabulary.
Sie müssen sich anmelden oder registrieren, um diese Funktion zu nutzen
Schlüsselbegriffe
Schlüsselbegriffe des Projekts, wie vom Projektkoordinator angegeben. Nicht zu verwechseln mit der EuroSciVoc-Taxonomie (Wissenschaftliches Gebiet).
Schlüsselbegriffe des Projekts, wie vom Projektkoordinator angegeben. Nicht zu verwechseln mit der EuroSciVoc-Taxonomie (Wissenschaftliches Gebiet).
- binary lifting from machine code to compiler IR
- binary to binary cross-compilation between instruction set architectures
- security retrofitting of binary executables
- legacy code revitalization
- differential testing of binaries directly against each other with deep state introspection using multivariant execution
Programm/Programme
Mehrjährige Finanzierungsprogramme, in denen die Prioritäten der EU für Forschung und Innovation festgelegt sind.
Mehrjährige Finanzierungsprogramme, in denen die Prioritäten der EU für Forschung und Innovation festgelegt sind.
-
HORIZON.1.1 - European Research Council (ERC)
HAUPTPROGRAMM
Alle im Rahmen dieses Programms finanzierten Projekte anzeigen
Thema/Themen
Aufforderungen zur Einreichung von Vorschlägen sind nach Themen gegliedert. Ein Thema definiert einen bestimmten Bereich oder ein Gebiet, zu dem Vorschläge eingereicht werden können. Die Beschreibung eines Themas umfasst seinen spezifischen Umfang und die erwarteten Auswirkungen des finanzierten Projekts.
Aufforderungen zur Einreichung von Vorschlägen sind nach Themen gegliedert. Ein Thema definiert einen bestimmten Bereich oder ein Gebiet, zu dem Vorschläge eingereicht werden können. Die Beschreibung eines Themas umfasst seinen spezifischen Umfang und die erwarteten Auswirkungen des finanzierten Projekts.
Finanzierungsplan
Finanzierungsregelung (oder „Art der Maßnahme“) innerhalb eines Programms mit gemeinsamen Merkmalen. Sieht folgendes vor: den Umfang der finanzierten Maßnahmen, den Erstattungssatz, spezifische Bewertungskriterien für die Finanzierung und die Verwendung vereinfachter Kostenformen wie Pauschalbeträge.
Finanzierungsregelung (oder „Art der Maßnahme“) innerhalb eines Programms mit gemeinsamen Merkmalen. Sieht folgendes vor: den Umfang der finanzierten Maßnahmen, den Erstattungssatz, spezifische Bewertungskriterien für die Finanzierung und die Verwendung vereinfachter Kostenformen wie Pauschalbeträge.
HORIZON-ERC - HORIZON ERC Grants
Alle im Rahmen dieses Finanzierungsinstruments finanzierten Projekte anzeigen
Aufforderung zur Vorschlagseinreichung
Verfahren zur Aufforderung zur Einreichung von Projektvorschlägen mit dem Ziel, eine EU-Finanzierung zu erhalten.
Verfahren zur Aufforderung zur Einreichung von Projektvorschlägen mit dem Ziel, eine EU-Finanzierung zu erhalten.
(öffnet in neuem Fenster) ERC-2024-ADG
Alle im Rahmen dieser Aufforderung zur Einreichung von Vorschlägen finanzierten Projekte anzeigenGastgebende Einrichtung
Finanzieller Nettobeitrag der EU. Der Geldbetrag, den der Beteiligte erhält, abzüglich des EU-Beitrags an mit ihm verbundene Dritte. Berücksichtigt die Aufteilung des EU-Finanzbeitrags zwischen den direkten Begünstigten des Projekts und anderen Arten von Beteiligten, wie z. B. Dritten.
10623 Berlin
Deutschland
Die Gesamtkosten, die dieser Organisation durch die Beteiligung am Projekt entstanden sind, einschließlich der direkten und indirekten Kosten. Dieser Betrag ist Teil des Gesamtbudgets des Projekts.