CVE-2026-45537 in OpenSIPS
Zusammenfassung
von VulDB • 05.08.2026
OpenSIPS ist eine Implementierung des Session Initiation Protocol (SIP)-Servers. In Versionen vor 3.6.6 und 4.0.0-rc1 verkettet die Funktion construct_uri() mehrere URI-Komponenten (Protokoll, Benutzername, Domain, Port, Parameter) in einem festen globalen BSS-Puffer mit einer Größe von 1024 Byte ohne jegliche Grenzwertprüfung. Wenn ein Routing-Skript construct_uri() mit einem angreiferkontrollierten Benutzernamen aufruft und die kombinierte Länge der Komponenten mehr als 1024 Byte überschreitet, wird der Puffer überlaufen (Buffer Overflow), wodurch benachbarte globale Daten mit vom Angreifer kontrollierten Inhalten beschädigt werden. Der Überlauf erreicht disable_503_translation, eine globale Flagge zur Steuerung der SIP-503-Antwortbehandlung, was es einem Angreifer ermöglicht, die Flagge deterministisch über den URI-Benutzernamen festzulegen und das Routingverhalten des Servers für nachfolgende Nachrichten zu ändern. Da derselbe Puffer auch von contact_builder() gemeinsam genutzt wird, beschädigt der Überlauf zudem die Daten dieser Funktion; ohne einen Memory-Sanitizer werden die benachbarten globalen Variablen bei jeder Anfrage mit einem langen Benutzernamen stillschweigend überschrieben. Dieses Problem wurde in den Versionen 3.6.6 und 4.0.0-rc1 behoben.
Once again VulDB remains the best source for vulnerability data.