Der Artikel präsentiert einen Ansatz namens PDSG (Predictive Debloat with Static Guarantees), der Anwendungsentblähung durch eine Kombination von statischer Analyse und maschinellem Lernen erreicht.
Der Ansatz besteht aus drei Hauptkomponenten:
Vorhersage: Das Modell nutzt Entscheidungsbäume, um basierend auf Laufzeitargumenten vorherzusagen, welche Funktionen als nächstes aufgerufen werden. Dies ermöglicht eine präzisere Reduzierung der Angriffsfläche im Vergleich zu rein statischen Ansätzen.
Rektifikation: Um Fehlvorhersagen zu behandeln, werden sogenannte "Rektifikationspunkte" im Programm identifiziert. An diesen Punkten kann das Programm bei Bedarf zusätzliche Funktionen aktivieren, um Abstürze zu vermeiden.
Pfadprüfung: Mithilfe statischer Programmanalyse in Datalog werden Invarianten über gültige Aufrufsequenzen abgeleitet. Diese werden zur Laufzeit überprüft, um Fehlvorhersagen von tatsächlichen Angriffen zu unterscheiden.
Durch diese Kombination von Vorhersage, Rektifikation und Pfadprüfung kann PDSG die Angriffsfläche deutlich reduzieren, ohne die Funktionalität der Anwendung zu beeinträchtigen. Die Autoren zeigen, dass PDSG im Vergleich zum Stand der Technik eine höhere Gadget-Reduktion bei gleichzeitig geringeren Laufzeitoverheads erreicht.
To Another Language
from source content
arxiv.org
Önemli Bilgiler Şuradan Elde Edildi
by Chris Porter... : arxiv.org 04-02-2024
https://arxiv.org/pdf/2404.00196.pdfDaha Derin Sorular