Ergebnisse der Sicherheitsüberprüfung der Boost-Bibliotheken

Der OSTIF (Open Source Technology Improvement Fund), gegründet zur Stärkung der Sicherheit offener Projekte, hat die Ergebnisse des Sicherheitsaudits der Boost-Bibliotheken veröffentlicht, die in vielen Projekten in der Programmiersprache C++ verwendet werden. Das Audit, das im Auftrag von OSTIF und Amazon Web Services von der italienischen Firma Shielder durchgeführt wurde, identifizierte 7 Probleme, von denen eines als mittelgefährlich und vier als gering gefährlich eingestuft wurden; zwei Probleme wurden als Informationshinweise veröffentlicht.

Die im Audit untersuchten Bibliotheken:

  • Boost.Beast
  • Boost.DLL
  • Boost.Date_Time
  • Boost.Filesystem
  • Boost.GIL
  • Boost.Graph
  • Boost.JSON
  • Boost.Program_Options
  • Boost.Regex
  • Boost.String_Algo
  • Boost.URL
  • Boost.UUID

Festgestellte Probleme:

  • Eine Schwachstelle in Boost.Beast, die die Einfügung von Carriage Return und Line Feed (CRLF) in HTTP-Header zulässt (kann zum Trennen von Headern verwendet werden). Dieses Problem wurde als mittelgefährlich eingestuft.
  • Stacküberlauf in der Boost.Regex-Bibliothek bei rekursiver Ausführung von Operationen mit mehreren end_line-Elementen im regulären Ausdruck.
  • Stacküberlauf in der Boost.Regex-Bibliothek bei rekursiver Ausführung von Operationen mit mehreren Capture-Gruppen und Zusammenführungen.
  • Stacküberlauf in der Boost.Regex-Bibliothek bei rekursiver Ausführung von Operationen mit mehreren offenen runden Klammern in der Formatierungszeichenfolge.
  • Stacküberlauf in der Boost.Graph-Bibliothek bei rekursiver Ausführung von Operationen mit mehreren verschachtelten Graphen.
  • Assert-Auslösung in der Funktion breadth_first_search der Boost.Graph-Bibliothek.
  • Nicht abgefangene Ausnahmen in Boost.DLL.

Basierend auf den Informationen aus dem Audit hat das Entwicklerteam von Boost bereits 4 Probleme behoben und 15 Verbesserungen zur Erweiterung der Codeabdeckung und Funktionen bei Fuzzing-Tests eingeführt. Das Problem mit der Header-Trennung in Boost.Beast ist noch nicht behoben, und die Informationshinweise wurden noch nicht berücksichtigt.

Quelle: opennet.ru

60GB SSD 8Gb DDR4