Description du projet
Moderniser les logiciels existants grâce à un lifting binaire
Les logiciels hérités de l’infrastructure reposent sur des chaînes d’outils dépassées, ce qui limite l’accès aux avantages des compilateurs modernes et nécessite du matériel obsolète. Leur modernisation est compliquée par des dépendances non documentées et la difficulté de faire correspondre le code source aux binaires. Le projet REVITALIZE, financé par le CER, adoptera une méthode innovante qui part d’un binaire faisant autorité et le transforme en une représentation intermédiaire de l’infrastructure du compilateur LLVM, permettant ainsi au logiciel existant de tirer parti de divers outils de fiabilité et passes d’optimisation disponibles dans LLVM. Le projet convertira les anciens binaires x86 en remplaçants sécurisés pour l’architecture RISC-V, avec et sans les extensions de sécurité CHERI. Pour garantir que le logiciel revitalisé serve de remplacement direct et précis, le projet réutilisera des idées initialement développées dans le contexte des environnements d’exécution à variantes multiples (MVEE pour «multi-variant execution environments»).
Objectif
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.
Champ scientifique (EuroSciVoc)
CORDIS classe les projets avec EuroSciVoc, une taxonomie multilingue des domaines scientifiques, grâce à un processus semi-automatique basé sur des techniques TLN. Voir: Le vocabulaire scientifique européen.
CORDIS classe les projets avec EuroSciVoc, une taxonomie multilingue des domaines scientifiques, grâce à un processus semi-automatique basé sur des techniques TLN. Voir: Le vocabulaire scientifique européen.
Vous devez vous identifier ou vous inscrire pour utiliser cette fonction
Mots‑clés
Les mots-clés du projet tels qu’indiqués par le coordinateur du projet. À ne pas confondre avec la taxonomie EuroSciVoc (champ scientifique).
Les mots-clés du projet tels qu’indiqués par le coordinateur du projet. À ne pas confondre avec la taxonomie EuroSciVoc (champ scientifique).
- 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
Programme(s)
Programmes de financement pluriannuels qui définissent les priorités de l’UE en matière de recherche et d’innovation.
Programmes de financement pluriannuels qui définissent les priorités de l’UE en matière de recherche et d’innovation.
-
HORIZON.1.1 - European Research Council (ERC)
PROGRAMME PRINCIPAL
Voir tous les projets financés dans le cadre de ce programme
Thème(s)
Les appels à propositions sont divisés en thèmes. Un thème définit un sujet ou un domaine spécifique dans le cadre duquel les candidats peuvent soumettre des propositions. La description d’un thème comprend sa portée spécifique et l’impact attendu du projet financé.
Les appels à propositions sont divisés en thèmes. Un thème définit un sujet ou un domaine spécifique dans le cadre duquel les candidats peuvent soumettre des propositions. La description d’un thème comprend sa portée spécifique et l’impact attendu du projet financé.
Régime de financement
Régime de financement (ou «type d’action») à l’intérieur d’un programme présentant des caractéristiques communes. Le régime de financement précise le champ d’application de ce qui est financé, le taux de remboursement, les critères d’évaluation spécifiques pour bénéficier du financement et les formes simplifiées de couverture des coûts, telles que les montants forfaitaires.
Régime de financement (ou «type d’action») à l’intérieur d’un programme présentant des caractéristiques communes. Le régime de financement précise le champ d’application de ce qui est financé, le taux de remboursement, les critères d’évaluation spécifiques pour bénéficier du financement et les formes simplifiées de couverture des coûts, telles que les montants forfaitaires.
HORIZON-ERC - HORIZON ERC Grants
Voir tous les projets financés dans le cadre de ce programme de financement
Appel à propositions
Procédure par laquelle les candidats sont invités à soumettre des propositions de projet en vue de bénéficier d’un financement de l’UE.
Procédure par laquelle les candidats sont invités à soumettre des propositions de projet en vue de bénéficier d’un financement de l’UE.
(s’ouvre dans une nouvelle fenêtre) ERC-2024-ADG
Voir tous les projets financés au titre de cet appelInstitution d’accueil
La contribution financière nette de l’UE est la somme d’argent que le participant reçoit, déduite de la contribution de l’UE versée à son tiers lié. Elle prend en compte la répartition de la contribution financière de l’UE entre les bénéficiaires directs du projet et d’autres types de participants, tels que les participants tiers.
10623 Berlin
Allemagne
Les coûts totaux encourus par l’organisation concernée pour participer au projet, y compris les coûts directs et indirects. Ce montant est un sous-ensemble du budget global du projet.