„`html
Zusammenfassung
FreeRDP vor Version 3.29.0 weist kritische Out-of-Bounds-Read-Anfälligkeit in der asynchronen Update-Nachrichtenproxy auf. Die Schwachstelle betrifft die primären Zeichnungsbefehle PolygonSC und PolygonCB. Ein bösartiger oder kompromittierter RDP-Server kann durch manipulierte Update-Meldungen Speicheroffenlegung oder Clientabsturz auslösen.
Betroffene Systeme
- FreeRDP-Versionen vor 3.29.0
- xfreerdp mit aktivierter AsyncUpdate-Funktion (/async-update Parameter)
- Linux-, Windows- und macOS-Systeme mit anfälligen FreeRDP-Bibliotheken
- RDP-basierte Anwendungen, die FreeRDP verwenden
Technische Details
Die Anfälligkeit liegt in den Funktionen update_message_PolygonSC() und update_message_PolygonCB(). Bei aktiviertem AsyncUpdate-Modus werden neue Point-Arrays allokiert, jedoch werden die Punktdaten nicht aus polygonSC->points bzw. polygonCB->points kopiert, sondern aus der Adresse der Order-Struktur selbst.
Dieser logische Fehler führt zu einem Out-of-Bounds-Read-Zugriff auf Speicherbereiche außerhalb des reservierten Buffers. Ein Angreifer mit Kontrolle über den RDP-Server kann speziell konstruierte PolygonSC/PolygonCB-Update-Befehle versenden, um:
- Speicherinhalte offenzulegen (Information Disclosure)
- Den RDP-Client zum Absturz zu bringen (Denial of Service)
Empfohlene Massnahmen
- Update durchführen: FreeRDP auf Version 3.29.0 oder höher aktualisieren
- AsyncUpdate deaktivieren: Temporary-Lösung durch Vermeidung des /async-update Parameters
- Netzwerk-Isolation: RDP-Verbindungen auf vertrauenswürdige Server beschränken
- Überwachung: Unerwartete Client-Abstürze und RDP-Anomalien monitoren
Bewertung
CVSS v3.1 Score: 7.5 (High)
Die Schwachstelle erfordert Netzwerkzugriff und Authentifizierung am RDP-Server. Das Risiko ist erheblich, besonders in Umgebungen mit untrusted RDP-Servern oder bei Szenarien mit erhöhtem Angriffspotenzial.
„`