United States Brazil Russia France Germany China Korea Japan

Artificial Intelligence driven Marketing Communications

 
May 27, 2020 3:36 AM ET

Chrome: 70% aller Sicherheitsfehler sind Speichersicherheitsprobleme


iCrowd Newswire - May 27, 2020

Google-Software-Ingenieure suchen nach Möglichkeiten, Speicherverwaltungs-Fehler von Chrome zu beseitigen.

Ungefähr 70% aller schwerwiegenden Sicherheitsfehler in der Chrome-Codebasis sind Speicherverwaltungs- und Sicherheitsfehler, sagten Google-Ingenieure diese Woche.

Die Hälfte der 70 % sind nutzlose Sicherheitslücken, eine Art Sicherheitsproblem, das durch die falsche Verwaltung von Speicherzeigern (Adressen) entsteht und Angreifern Türen offen lässt, um die inneren Komponenten von Chrome anzugreifen.

Der Prozentsatz wurde zusammengestellt, nachdem Google-Ingenieure 912 Sicherheitsfehler analysiert haben, die seit 2015 in der Chrome-Stable-Niederlassung behoben wurden, Fehler mit einer “hohen” oder “kritischen” Schweregradbewertung.

Die Zahl ist identisch mit den von Microsoft gemeinsam genutzten Statistiken. Auf einer Sicherheitskonferenz im Februar 2019 sagten Microsoft-Ingenieure, dass in den letzten 12 Jahren rund 70 % aller Sicherheitsupdates für Microsoft-Produkte Sicherheitslücken behoben haben.

DAS NIE ENDENDE PROBLEM DER SPEICHERVERWALTUNG

Beide Unternehmen haben es im Grunde mit dem gleichen Problem zu tun, nämlich dass C und C++, die beiden vorherrschenden Programmiersprachen in ihren Codebasen, “unsichere” Sprachen sind.

Es sind alte Programmierwerkzeuge, die vor Jahrzehnten geschaffen wurden, als Sicherheitsausbeutung und Cyberangriffe kein relevantes Bedrohungsmodell waren und weit entfernt vom Verstand der meisten frühen Softwareentwickler entfernt waren.

Daher haben Programmierer sowohl C als auch C++ die volle Kontrolle darüber, wie sie die Speicherzeiger (Adressen) einer App verwalten, und verfügen nicht über Einschränkungen oder Warnungen, um Entwickler zu verhindern oder zu warnen, wenn sie grundlegende Speicherverwaltungsfehler machen.

Diese frühen Codierungsfehler führen dazu, dass Sicherheitslücken bei der Speicherverwaltung in Anwendungen eingeführt werden. Dazu gehören Schwachstellen wie use-after-free, Pufferüberlauf, Rennbedingungen, doppelt frei, wilde Zeiger und andere.

Diese Speicherverwaltungs-Schwachstellen sind die begehrtesten Fehler, die Angreifer zu finden und auszunutzen versuchen, da sie ihnen die Möglichkeit geben können, Code in den Speicher eines Geräts zu pflanzen und ihn von der Opferanwendung (Browser, Server, Betriebssystem usw.) ausführen zu lassen.

In einem Anfang des Jahres veröffentlichten Ranking stufte die MITRE Corporation, die Organisation, die die Verwundbarkeitsdatenbank der US-Regierung verwaltet, den Pufferüberlauf als die gefährlichste Schwachstelleein, wobei zwei weitere Probleme im Zusammenhang mit dem Speichermanagement ebenfalls in den Top 10 platziert wurden (Out-of-bounds lesen sie auf #5 und nutzungsfrei auf #7).

Da das Software-Engineering in den letzten Jahren weiterentwickelt wurde, haben Entwickler die meisten Sicherheitslücken besser ausmerzen und Sicherheitsschutz hinzugefügt.

Aber nicht für Speicherverwaltungsschwachstellen.

GOOGLE TO LOOK INTO ADDRESSING CHROME’S MEMORY BUGS

Google sagt, dass seit März 2019 125 der 130 Chrome-Schwachstellen mit einer “kritischen” Schweregradbewertung Probleme im Zusammenhang mit Speicherbeschädigungen waren, was zeigt, dass trotz Fortschritten bei der Behebung anderer Fehlerklassen die Speicherverwaltung immer noch ein Problem darstellt.

Das Problem der Speicherverwaltungsfehler war bei Google so groß, dass Chrome-Ingenieure nun“Die Regel von 2”befolgen müssen.

Gemäß dieser Regel darf ihr Code, wenn Ingenieure eine neue Chrome-Funktion schreiben, nicht mehr als zwei der folgenden Bedingungen unterbrechen:

rule-of-two.png

Während Software-Unternehmen zuvor versucht haben, C und C++-Speichermanagement-Probleme zu beheben, war Mozilla derjenige, der einen Durchbruch schaffte, indem es die Rust-Programmiersprache in Firefox sponserte, förderte und stark annahm.

Heute gilt Rust als eine der sichersten Programmiersprachen und ein idealer Ersatz für C und C++, vor allem aufgrund der frühen Bemühungen von Mozilla.

Aber Mozilla war nicht die einzige Organisation, die genug vom Umgang mit fehleranfälligem C- und C++-Code hatte.

Microsoft investiert auch stark in die Erforschung von C- und C++-Alternativen. Von seinem frühen Checked C-Projekt aus experimentiert das Unternehmen nun mit Rustund baut auch eine eigene Rust-ähnliche “sichere” Programmiersprache (Teil des geheimen Projekts Verona)auf.

In seiner Rede auf der virtuellen Build-Konferenz in dieser Woche sagte Microsoft, dass diese beiden Bemühungen erfolgreich waren, und das Unternehmen widmete sich erneut der Einführung einer sicheren Programmiersprache in der Zukunft.

Aber auch Google kündigte in dieser Woche ähnliche Pläne an. Das Unternehmen sagte, es plant auch zu prüfen, “die Bewältigung der Speicherunsicherheit Problem” für Chrome, heute der beliebteste Web-Browser, von fast 70% der Internet-Nutzer verwendet.

CHROME HAT PEAK SANDBOXING ERREICHT

Bis heute sind Google-Ingenieure glühende Befürworter des Sandkasten-Ansatzes in Chrome. Sie isolierten Dutzende von Prozessen in ihre eigene Sandbox und haben kürzlich Site Isolationeingeführt, eine Funktion, die die Ressourcen jeder Site auch in ihren eigenen Sandkastenprozess einfügt.

Google-Ingenieure sagen jedoch, dass ihr Ansatz beim Sandboxing der Chrome-Komponenten seinen maximalen Nutzen unter Berücksichtigung der Leistung erreicht hat und dass das Unternehmen nun nach neuen Ansätzen suchen muss.

In Zukunft plant Google, benutzerdefinierte C++-Bibliotheken zu entwickeln, die mit Chromes Codebasis verwendet werden können, Bibliotheken, die einen besseren Schutz vor speicherbezogenen Fehlern bieten.

Der Browser-Hersteller erforscht auch das MiraclePtr-Projekt, das darauf abzielt, “ausnutzbare nutzlose Fehler in nicht-Sicherheitsabstürze mit akzeptabler Leistung, Speicher, binärer Größe und minimaler Stabilitätsauswirkung” zu verwandeln.

Und nicht zuletzt sagte Google auch, dass es plant, mit “sicheren” Sprachen zu erkunden, wo möglich. Zu den Kandidaten gehören Rust, Swift, JavaScript, Kotlin und Java.

Contact Information:

Catalin Cimpanu



Tags:    German, United States, Wire