toplogo
Sign In

Neue Timing-Sicherheitslücken in fortschrittlichen RISC-V-Prozessoren entdeckt und lokalisiert


Core Concepts
WhisperFuzz, ein weißer Fuzzer mit statischer Analyse, entdeckt 12 neue Timing-Sicherheitslücken in fortschrittlichen RISC-V-Prozessoren und lokalisiert deren Ursachen. Acht dieser Lücken werden als schwerwiegende Sicherheitsverletzungen eingestuft.
Abstract
WhisperFuzz ist ein neuartiger weißer Fuzzer mit statischer Analyse, der darauf abzielt, Timing-Sicherheitslücken in Prozessoren zu erkennen und zu lokalisieren sowie die Abdeckung des mikroarchitektonischen Zeitverhaltens zu bewerten. WhisperFuzz verwendet die grundlegende Natur des Zeitverhaltens von Prozessoren, nämlich den Übergang von mikroarchitektonischen Zuständen, um Timing-Sicherheitslücken zu lokalisieren. WhisperFuzz extrahiert automatisch die Übergänge von mikroarchitektonischen Zuständen aus einem Prozessor-Design auf Registertransferebene (RTL) und instrumentiert das Design, um den Zustandsübergang als Abdeckung zu überwachen. Darüber hinaus misst WhisperFuzz die Zeit, die ein zu testendes Design (DUT) zum Verarbeiten von Tests benötigt, und identifiziert alle geringfügigen, abnormalen Abweichungen, die auf eine Timing-Sicherheitslücke hinweisen könnten. WhisperFuzz entdeckt 12 neue Timing-Sicherheitslücken in den fortschrittlichen Open-Source-RISC-V-Prozessoren BOOM, Rocket Core und CVA6. Acht davon verletzen die Null-Latenz-Anforderungen der Zkt-Erweiterung und gelten als schwerwiegende Sicherheitslücken. Darüber hinaus lokalisiert WhisperFuzz auch die Ursachen der neuen und bestehenden Sicherheitslücken.
Stats
Der DIVUWund REM-Befehl in BOOM zeigt eine mediane Abweichung von 48 Zyklen, 35 Zyklen und 83 Zyklen zwischen den Verteilungen des Divisors gleich 0, 1 und größer als 1, mit einer maximalen Abweichung von 101 Zyklen. Der DIVUWBefehl in CVA6 zeigt eine mediane Abweichung von 14 Zyklen, 39 Zyklen und 54 Zyklen zwischen den Verteilungen des Divisors gleich 0, 1 und größer als 1, mit einer maximalen Abweichung von 56 Zyklen. Der REMWBefehl in CVA6 zeigt eine mediane Abweichung von 54 Zyklen zwischen den Verteilungen des Divisors gleich 0 und größer als 0, mit einer maximalen Abweichung von 56 Zyklen. Die komprimierten RISC-V-Befehle C.ADD[W], C.SUB[W], C.AND, C.OR, C.XOR und [C.]MV in CVA6 zeigen eine mediane Abweichung von 12 Zyklen zwischen dem zweiten Operanden gleich 0 und größer als 0.
Quotes
"WhisperFuzz entdeckt 12 neue Timing-Sicherheitslücken in fortschrittlichen Open-Source-RISC-V-Prozessoren: BOOM, Rocket Core und CVA6. Acht davon verletzen die Null-Latenz-Anforderungen der Zkt-Erweiterung und gelten als schwerwiegende Sicherheitslücken." "WhisperFuzz lokalisiert auch die Ursachen der neuen und bestehenden Sicherheitslücken."

Key Insights Distilled From

by Pallavi Bork... at arxiv.org 03-18-2024

https://arxiv.org/pdf/2402.03704.pdf
WhisperFuzz

Deeper Inquiries

Wie können die entdeckten Timing-Sicherheitslücken in RISC-V-Prozessoren in der Praxis ausgenutzt werden, um sensible Informationen abzugreifen?

Die entdeckten Timing-Sicherheitslücken in RISC-V-Prozessoren können in der Praxis ausgenutzt werden, um sensible Informationen abzugreifen, indem Angreifer gezielt Operandenwerte wählen, die die Timing-Unterschiede in den Prozessoren maximieren. Durch die gezielte Auswahl von Operanden können Angreifer die Ausführungszeiten von Anweisungen beeinflussen und somit Informationen über den internen Zustand des Prozessors ableiten. Diese Timing-Side-Channels können genutzt werden, um vertrauliche Daten wie Passwörter, Schlüssel oder andere sensible Informationen zu stehlen. Durch die Analyse der Timing-Unterschiede können Angreifer auf verdeckte Informationen zugreifen, die normalerweise nicht zugänglich wären.

Welche Gegenmaßnahmen können Prozessorhersteller implementieren, um solche Timing-Sicherheitslücken in Zukunft zu verhindern?

Prozessorhersteller können verschiedene Gegenmaßnahmen implementieren, um solche Timing-Sicherheitslücken in Zukunft zu verhindern. Dazu gehören: Implementierung von sicheren Standardoperationen: Prozessorhersteller sollten sicherstellen, dass Standardoperationen wie Division, Addition und Subtraktion keine Timing-Side-Channels aufweisen, unabhängig von den Operandenwerten. Verwendung von konstanten Ausführungszeiten: Durch die Implementierung von konstanten Ausführungszeiten für alle Operationen unabhängig von den Eingaben können Timing-Side-Channels eliminiert werden. Regelmäßige Sicherheitsüberprüfungen: Prozessorhersteller sollten regelmäßige Sicherheitsüberprüfungen durchführen, um potenzielle Timing-Side-Channels zu identifizieren und zu beheben, bevor sie ausgenutzt werden können. Verwendung von sicheren Entwurfspraktiken: Durch die Einhaltung sicherer Entwurfspraktiken und die Implementierung von Sicherheitsrichtlinien können Prozessorhersteller das Risiko von Timing-Side-Channels minimieren.

Welche Auswirkungen haben die entdeckten Timing-Sicherheitslücken auf die Sicherheit von Anwendungen, die auf diesen RISC-V-Prozessoren laufen?

Die entdeckten Timing-Sicherheitslücken haben erhebliche Auswirkungen auf die Sicherheit von Anwendungen, die auf diesen RISC-V-Prozessoren laufen. Durch die Ausnutzung dieser Lücken können Angreifer sensible Informationen aus den Anwendungen extrahieren, was zu Datenschutzverletzungen, Identitätsdiebstahl und anderen Sicherheitsproblemen führen kann. Anwendungen, die auf anfälligen Prozessoren ausgeführt werden, sind anfällig für Angriffe, die auf die Offenlegung vertraulicher Daten abzielen. Dies kann das Vertrauen der Benutzer in die Sicherheit der Anwendungen und der zugrunde liegenden Hardware beeinträchtigen. Es ist daher entscheidend, dass Prozessorhersteller und Anwendungsentwickler Maßnahmen ergreifen, um diese Sicherheitslücken zu beheben und die Sicherheit der Anwendungen zu gewährleisten.
0