Im OpenSSH-Server, der Bestandteil von FreeBSD ist, wurde eine Schwachstelle (CVE-2024-7589) entdeckt, die Remote-Code-Ausführung mit Root-Rechten ohne Authentifizierung erlaubt. Diese Schwachstelle ist eine Variante des im Juli entdeckten Problems in OpenSSH (CVE-2024-6387) und wird ebenfalls durch einen Race Condition verursacht, die aus der Ausführung von Funktionen im Signal-Handler resultiert, die nicht für asynchrone Aufrufe vorgesehen sind.
Die Entwickler von FreeBSD haben die ursprüngliche Schwachstelle im Juli sofort nach der Ankündigung behoben, aber das Fixing deckte nicht alle möglichen Angriffsvektoren ab. Die Behebung bestand darin, den Aufruf der Funktion sshlogv, die dynamisch Speicher allokiert, zu deaktivieren, was bei asynchroner Ausführung zu einer Beschädigung interner malloc-Strukturen führen könnte, wenn der SIGALRM-Signal-Handler während der Ausführung bestimmter Codes ausgelöst wird. Es stellte sich heraus, dass ein ähnliches Problem in einem für FreeBSD spezifischen Aufruf der Funktion blacklist_notify auftrat, die die Integration mit dem Hintergrundprozess blacklistd ermöglicht.
Neben der Anwendung des Patches kann die Schwachstelle durch das Setzen des Parameters „LoginGraceTime=0“ in /etc/ssh/sshd_config blockiert werden. Allerdings erleichtert das Deaktivieren des Timeouts die Einleitung eines Denial-of-Service-Angriffs, wenn eine große Anzahl von Verbindungen, die die über den Parameter MaxStartups festgelegten Grenzen überschreiten, hergestellt wird.
Darüber hinaus wurden drei weitere Schwachstellen in FreeBSD behoben:
- CVE-2024-6760 – Möglichkeit, den Schutz gegen die Anwendung von ktrace für die Verfolgung von suid-Prozessen zu umgehen, was es einem unprivilegierten Benutzer erlaubt, auf den Inhalt von Dateien zuzugreifen, für deren Lesung er keine Berechtigung hat, beispielsweise kann der Inhalt einer Datei mit Benutzerpassworthashes gelesen werden.
- CVE-2024-6759 – Im NFS-Client wurde die Möglichkeit entdeckt, die Trennzeichen „..“ und „/“ in Dateinamen zu verwenden;
- CVE-2024-6640 – Schwachstelle im Paketfilter PF, durch die ICMPv6-Pakete mit der Null-ID nicht unter die Firewall-Regeln fielen, die dafür ausgelegt waren, dass eingehende Pakete in der Status-Tabelle (state table) reflektiert werden.
Quelle: opennet.ru
