Rust gibt Auskunft zu Unsafe Rust

Die Programmiersprache Rust gilt als eine sichere Programmiersprache. Aber es gibt Unwägbarkeiten. Um eine Funktion oder ein Codesegment zu kennzeichnen, das potenziell unsicher ist, verwenden Programmierer das “unsafe”-Keyword. Laut der Rust Foundation steckt das Keyword in rund 20 Prozent der Rust-Pakete.

Rust ist standardmäßig eine speichersichere Sprache, die durch ein Konzept namens “Ownership” Regeln und Garantien für die Speicherverwaltung bietet und Sicherheit in den Mittelpunkt stellt, teilt die Foundation mit. Programme, die Rust verwenden, können nicht kompiliert werden, wenn die Regeln für die Speicherverwaltung verletzt werden, so dass die Möglichkeit eines Speicherproblems zur Laufzeit praktisch ausgeschlossen sei.

Dennoch lasse sich die Sicherheitsprüfung einschränken, indem Programmierer potenziell unsicheren Code ausführen können. In diesen Fällen verwenden Rust-Programmierer das “unsafe”-Schlüsselwort, um eine solche Funktion zu kennzeichnen.

Rust-Code werde klassischerweise als Paket (Crate) verteilt. Mit Stand vom Mai 2024 gibt es laut Rust Foundation etwa 145.000 Crates, von denen etwa 127.000 signifikanten Code enthalten. Von diesen 127.000 Crates wiederum verwenden 24.362 das “unsafe”-Schlüsselwort, das seien damit 19,11 Prozent aller Crates. Und 34,35 Prozent davon enthalten einen direkten Funktionsaufruf in ein anderes Paket mit dem “unsafe”-Schlüsselwort .

Die meisten dieser unsicheren Rust-Verwendungen sind Aufrufe in bestehenden Code oder Bibliotheken von Drittanbietern, die keine Rust-Sprache sind, wie etwa C oder C++. Tatsächlich sei die Crate mit den meisten Verwendungen des unsicheren Schlüsselworts die Windows-Crate, die es Rust-Entwicklern erlaubt, verschiedene Windows-APIs aufzurufen.

Die Foundation betont, dass das nicht bedeute, dass der Code in diesen “unsafe” Rust-Blöcken sich von Natur aus als Schwachstelle ausnutzen lässt, sondern dass bei der Verwendung von unsicherem Rust besondere Vorsicht geboten ist, um potenzielle Schwachstellen zu vermeiden.

E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben