Open Source im professionellen Einsatz

ASN1C Compiler: Angreifer kann Befehle ausführen

Eine Schwachstelle in dem ASN.1 Parsing-Code des ASN1C Compilers für C/C++ hat zur Folge, dass ein entfernter Angreifer Befehle mit den Rechten des Anwenders ausführen kann. Ursache ist eine Heap Overflow-Schwachstelle in der »rtxMemHeapAlloc()«-Funktion der »asn1rt_a.lib«-Bibliothek. Die Abstract Syntax Notation One (ASN.1) ist ein Standard zum Versand von Telekommunikationsdaten über Computernetzwerke. Er wird beispielsweise für X.509, SNMP oder H.323 verwendet. Die ASN.1 Syntax ist recht komplex, weshalb der Code zum Parsen von ASN.1 meist automatisch generiert wird. Hier kommen dann ASN.1 Compiler wie ASN1C zum Einsatz. Diese generieren automatisch den Code, der dann einfach in die Programme implementiert wird. Entsprechend vielfältig sind auch die Einsatzbereiche des ASN1C Compilers. Der nun entdeckte Heap Overflow entsteht durch zwei Integer-Overflow-Fehler im Programmcode der ASN1C Runtime-Bibliothek. Die Integer Overflows treten beim Verarbeiten des nbytes-Arguments auf. Hier kann es zu einem 32-Bit-Overflow kommen. Dieser Wert wird dann für eine Speicherallokation innerhalb der »rtxMemHeapAlloc()«-Funktion verwendet. Je nach Appliation kann ein Angreifer so Befehle mit höheren Rechten ausführen.

Betroffen sind die Versionen 7.0.0 und älter. 

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.