Normale Ansicht

Received before yesterday

glibc Version 2.42 veröffentlicht

31. Juli 2025 um 21:30

Kurz notiert: Die GNU C Library (glibc) wurde in Version 2.42 veröffentlicht. Der Fokus lag besonders auf Mathefunktionen aus neueren C-Standards, der Einführung von SFrame und der Entfernung des alten termio.h-Headers. Hier eine Auswahl neuer Features in aller Kürze:

  • Neue Mathefunktionen, darunter:
    • Einige Funktionen aus der neuen ISO C23 werden nun von math.h unterstützt. In dieser Version kommen konkret Funktion für Potenzen und absolute Werte hinzu.
    • unsigned Abstandfunktionen wie uabs() werden unterstützt.
    • Neue Funktionen wie tanpif() wurden aus dem CORE-MATH-Projekt eingeführt.
  • Die Unterstützung für die SFrame ist neu. Sofern mit den ebenfalls frisch veröffentlichten Binuntils 2.45 und dem Flag --enable-sframe gebaut wird, kann das neue Stack-Frame-Information-Format genutzt werden.
  • Auf Linux gibt es nun die Funktion pthread_gettid_np() zum Anzeigen der Kernel Thread ID für einen Thread, siehe auch Diskussion.
  • termios.h unterstützt nun beliebige Baud-Raten.
  • Der tcache von malloc() unterstützt nun das Caching großer Blöcke.
  • Die S390-Architektur erhält Unterstützung für die z17-Plattform.

Folgende Features werden entfernt oder betreffen die Kompatibilität:

  • termio.h, das seit POSIX.1 aus 1988 veraltet galt, wird entfernt. termios.h ist der Ersatz.
  • glibc.rtld.execstack unterstützt nun einen Kompatibilitätsmodus, mit dem Programme einen ausführbaren Stack mittels dynamisch geladener Bibliotheken anfordern können.
  • Unterstützung für die TX Lock Elision von pthread Mutexes ist veraltet und wird im nächsten Release entfernt.
  • Auf AArch64 Linux mit der Scalable Matrix Extension werden setjmp() und sigsetjmp() den ZA State von SME deaktivieren.

Darüber hinaus gab es einige Bugfixes, Ergänzungen in der Dokumentation sowie Verbesserungen in der Testsuite.

Alle weiteren Informationen und das vollständige Changelog können der Veröffentlichungsnachricht auf der Liste entnommen werden.

Neue Sicherheitslücken bei glibc: syslog und qsort

31. Januar 2024 um 21:40

Es gibt wieder neue Sicherheitslücken in glibc. Dabei betrifft eine die syslog()-Funktion, die andere qsort(). Letztere Lücke existiert dabei seit glibc 1.04 und somit seit 1992. Entdeckt und beschrieben wurden die Lücken von der Threat Research Unit bei Qualys.

Die syslog-Lücke ist ab Version 2.37 seit 2022 enthalten und betrifft somit die eher die neuen Versionen von Linux-Distributionen wie Debian ab Version 12 oder Fedora ab Version 37. Hierbei handelt es sich um einen "heap-based buffer overflow" in Verbindung mit argv[0]. Somit ist zwar der Anwendungsvektor schwieriger auszunutzen, weil in wenigen Szenarien dieses Argument (der Programmname) dem Nutzer direkt überlassen wird, die Auswirkungen sind jedoch umso schwerwiegender. Mit der Lücke wird eine lokale Privilegienausweitung möglich. Die Lücke wird unter den CVE-Nummern 2023-6246, 2023-6779 und 2023-6780 geführt.

Bei der qsort-Lücke ist eine Memory Corruption möglich, da Speichergrenzen an einer Stelle nicht überprüft werden. Hierfür sind allerdings bestimmte Voraussetzungen nötig: die Anwendung muss qsort() mit einer nicht-transitiven Vergleichsfunktion nutzen (die allerdings auch nicht POSIX- und ISO-C-konform wären) und über eine große Menge an zu sortierenden Elementen verfügen, die vom Angreifer bestimmt werden. Dabei kann ein malloc-Aufruf gestört werden, der dann zu weiteren Angriffen führen kann. Das Besondere an dieser Lücke ist ihr Alter, da sie bereits im September 1992 ihren Weg in eine der ersten glibc-Versionen fand.

Bei der GNU C-Bibliothek (glibc) handelt es sich um eine freie Implementierung der C-Standard-Bibliothek. Sie wird seit 1987 entwickelt und ist aktuell in Version 2.38 verfügbar. Morgen, am 1. Februar, erscheint Version 2.39.

Schwachstelle in Glibc ermöglicht Root-Rechte

04. Oktober 2023 um 08:49

Im dynamische Lader der GNU C-Bibliothek (Glibc) steckt eine Schwachstelle, die sich lokal ausnutzen lässt, um sich Root-Rechte zu verschaffen.

Aufgedeckt haben die Schwachstelle die Experten von Qualys. Deren Meldung zufolge besteht die Sicherheitslücke in einem Pufferüberlauf in der Verarbeitung der Umgebungsvariablen GLIBC_TUNABLES durch den dynamischen Lader. Diese Sicherheitslücke sei bereits im April 2021 (Glibc 2.34) durch Commit 2ed18c eingeführt worden, heißt es weiter.

Der dynamic Loader von Glibc finde und lade shared libraries, die von einem Programm benötigt werden, bereite das Programm zur Ausführung vor und führt es dann aus, berichten die Experten. Der dynamische Lader sei extrem sicherheitsrelevant, da sein Code mit erhöhten Rechten ausgeführt werde, wenn ein lokaler Benutzer etwa ein Programm mit gesetzter Benutzer-ID ausführe.

Den Forschern ist es gelungen, die Sicherheitslücke erfolgreich auszunutzen und volle Root-Rechte auf den Standardinstallationen von Fedora 37 und 38, Ubuntu 22.04 und 23.04, Debian 12 und 13 zu erlangen. Andere Distributionen seien wahrscheinlich auch anfällig. Eine Ausnahme stelle Alpine Linux dar, das Musl Libc verwende und nicht die Glibc.

Die Experten wollen laut der Meldung den Exploit vorerst nicht veröffentlichen. Die Distributionen haben begonnen, Updates bereitzustellen.

Der Beitrag Schwachstelle in Glibc ermöglicht Root-Rechte erschien zuerst auf Linux-Magazin.

Linux from Scratch in Version 12

05. September 2023 um 07:12

Die Linux From Scratch-Community gibt die Veröffentlichung der Version 12.0 des Linux-Bausatzsystems bekannt.

Zu den wichtigsten Änderungen von Linux from Scratch (LFS) in Version 12 gehören Aktualisierungen der Toolchain für Binutils-2.41, GCC-13.2.0 und Glibc-2.38. Insgesamt wurden 38 Pakete seit der letzten Veröffentlichung aktualisiert und es gab umfangreiche Aktualisierungen des Textes im gesamten Buch, um die Lesbarkeit zu verbessern, teilen die Entwickler mit. Der Linux-Kernel sei auf die Version 6.4.12 aktualisiert worden.

Weitere wichtige Änderungen sind laut den Machern das Hinzufügen von Libxcrypt als separates Paket. Zuvor war dieses in der Glibc enthalten. Für die sysV-Version des Buches wird Udev nun direkt aus dem Systemd-Tarball extrahiert, heißt es weiter. Diese Änderung erfordere auch die Erstellung der Python-Module jinja und markupsafe.

Insgesamt gab es 234 Änderungen an LFS seit der letzten stabilen Version des Buches. Die Anleitung lässt sich online lesen oder lokal herunterladen.

Der Beitrag Linux from Scratch in Version 12 erschien zuerst auf Linux-Magazin.

❌