In einem kürzlich veröffentlichten Update für Go (Golang) wurde eine bedeutende Sicherheitslücke behoben, die Systeme unter Darwin (macOS) betrifft. Die Schwachstelle CVE-2024-24787, ermöglicht es Angreifern, potenziell schädlichen Code auszuführen, indem sie eine manipulierte LTO-Bibliothek während des Build-Prozesses eines Go-Moduls mit CGO einbinden. Das Problem wurde durch die Verwendung des -lto_library
-Flags in den CGO LDFLAGS ausgelöst, was vom Apple-Linker akzeptiert und ausgeführt wird.
Dieses Problem wurde erstmals von Juho Forsén von Mattermost gemeldet und betrifft die Go-Versionen vor go1.21.10 und von go1.22.0-0 vor go1.22.3. Der Missbrauch dieses Flags konnte dazu führen, dass während des Build-Prozesses von Go Code unbefugt ausgeführt wird, was ein erhebliches Sicherheitsrisiko darstellt. Insbesondere weil diese Schwachstelle es ermöglicht, dass der Linker während des Build-Prozesses willkürlich externen Code ausführt, wurde sie als kritisch eingestuft.
Um das Risiko zu mitigieren, wurde ein spezifischer Check für ausgeschlossene Flags implementiert, die sonst unsere bestehenden Sicherheitschecks passieren würden. Die Entwickler von Go empfehlen dringend, auf die neuesten gepatchten Versionen zu aktualisieren, um dieses Problem zu beheben.
Darüber hinaus hat das Go-Team darauf hingewiesen, dass keine Workarounds (wie die Deaktivierung bestimmter Compiler-Flags) existieren und dass die sicherste Maßnahme die Aktualisierung auf eine der neuesten Versionen ist.
Da uns noch kein CVSS Vektor bekannt ist, schätzen wir, dass es sich um eine Lücke vom Typ CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H handelt, was ungefähr einen CVS Score von 9.2 / 10 entspricht.
Professionelle Hilfe erwünscht?
Sentiguard ist spezialisiert auf Notfallhilfe nach Cyberattacken, IT Sicherheitsbeauftragte und IT Sicherheitskonzepte nach BSI Standard. Haben Sie Fragen und wünschen Sie unverbindliche Beratung, dann melden Sie sich gerne bei uns: