Lieferketten-Hygiene

Homebrew-Schwachstellenprüfung unter macOS

Ein Entwickler-Mac sammelt Software, wie eine Garage Werkzeug sammelt. Das meiste davon wurde vor Jahren für eine einzige Aufgabe installiert und seitdem nicht mehr angesehen. Homebrew ist sehr gut darin, diese Software auf Ihre Maschine zu bringen. Was danach mit ihr geschieht, dazu sagt es nichts — und für manches davon gibt es inzwischen veröffentlichte CVEs.

Was die brew-Kommandozeile abdeckt

brew outdated sagt Ihnen, wofür es eine neuere Version gibt. brew doctor sagt Ihnen, wenn die Installation selbst nicht gesund ist. Beides ist wirklich nützlich, und beides ist keine Sicherheitsprüfung — „es gibt etwas Neueres“ und „was Sie haben, ist angreifbar“ sind verschiedene Fragen mit verschiedener Dringlichkeit.

Was sie nicht abdeckt

brew audit ist der Befehl, zu dem alle greifen, und der am meisten in die Irre führt: Er prüft, ob eine Formula für die Einreichung bei Homebrew wohlgeformt ist. Das ist eine Prüfung des Rezepts, nicht der Software auf Ihrer Festplatte. Nichts in der Standard-Werkzeugkette vergleicht Ihre installierten Versionen mit einer Datenbank von Sicherheitsmeldungen.

So funktioniert es

Was EasyHomebrew beim Prüfen tatsächlich tut

01

Sammeln

Jede installierte Formula und jeder Cask wird mit Version erfasst — dieselbe Liste, die brew list --versions liefern würde, ohne Copy-and-paste.

02

Abgleichen

Diese Pakete werden gebündelt gegen OSV abgefragt. Die Abfrage läuft live, eine Prüfung bildet also die bis zu diesem Moment veröffentlichten Meldungen ab.

03

Einstufen

Jeder Treffer trägt den Schweregrad der Meldung selbst, sofern sie einen veröffentlicht, ersatzweise deren CVSS-Wert. In der Paketzeile steht der schwerwiegendste Treffer.

04

Handeln

Jeder Treffer verlinkt auf die offizielle Meldung, und die Liste der veralteten Pakete ist einen Klick entfernt — die Lösung ist meist schlicht die gepatchte Version.

Die Datenbank: OSV

Die Treffer stammen von OSV, der von Google gepflegten Open-Source-Schwachstellendatenbank, live abgefragt statt als Momentaufnahme in der App ausgeliefert. Genau darum geht es auf dieser Seite: Eine zum Erscheinungstermin eingebackene Datenbank ist schon veraltet, wenn Sie die App installieren — und diese Veraltung ist genau der Fehlerfall, um den es geht.

Einen Treffer lesen

Was die Schweregrade in der Praxis bedeuten

Kritisch

Aus der Ferne ausnutzbar, oder mit minimalem Aufwand. Heute angehen.

Hoch

Ernst, meist mit Bedingungen verknüpft. Diese Woche angehen.

Mittel / niedrig

Real, aber eng begrenzt — braucht oft lokalen Zugriff oder eine ungewöhnliche Konfiguration.

Der Schweregrad stammt aus der Meldung selbst, wo der Herausgeber einen angibt, ersatzweise aus deren CVSS-Wert. Ein Paket mit mehreren Treffern wird nach dem schwerwiegendsten eingestuft — die Zeile, die Sie in der Liste sehen, ist also die, nach der Sie es beurteilen sollten.

Und wenn das Problem die Installation selbst ist

Brew Doctor deckt die andere Hälfte der Maschinenhygiene ab — den Zustand von Homebrew statt der Pakete darin. Er unterscheidet zwei Arten von Warnung, und der Unterschied ist Absicht:

Ausführbar

Nicht verknüpfte Kegs, fehlende Abhängigkeiten, veraltete Formulae, ungültige Cask-Metadaten — dafür bietet brew einen Befehl an, also gibt Doctor Ihnen einen „Reparieren“-Knopf und wiederholt die Prüfung anschließend.

Nur kopieren

Ein sudo-Befehl, eine PATH-Änderung, ein Aufruf von xcode-select — das gehört in Ihre Shell, nicht in eine App, die Befehle in Ihrem Namen ausführt. Doctor zeigt sie als kopierbare Befehle und überlässt Ihnen die Entscheidung.

Eine Prüfung, an die Sie denken müssen, ist eine Prüfung, die Sie nicht durchführen

Hier entscheidet sich, ob das Ganze funktioniert. Eine Prüfung auf Zuruf beantwortet die Frage „bin ich gerade angreifbar“ — aber Meldungen erscheinen fortlaufend, und im Abstand zwischen Veröffentlichung und Entdeckung liegt die Gefährdung. Eine Schwachstelle, von der Sie drei Monate zu spät erfahren, unterscheidet sich kaum von einer, von der Sie nie erfahren haben.

Deshalb läuft die Prüfung standardmäßig beim Start, und ein Menüleisten-Agent prüft im von Ihnen gesetzten Takt nach und markiert sich, wenn etwas auftaucht. Sie müssen an nichts denken. Das ist der ganze Entwurf: Die Warnung findet Sie, statt darauf zu warten, dass Sie nach ihr suchen.

Erfordert macOS 14 (Sonoma) oder neuer, Apple Silicon oder Intel.

Fragen zu Homebrew und CVEs

Prüft brew audit auf Sicherheitslücken?
Nein. `brew audit` prüft, ob eine Formula für die Einreichung bei Homebrew wohlgeformt ist — Stil, Lizenzierung und Paketierungsregeln. Es ist eine Prüfung des Rezepts, nicht der von Ihnen installierten Software, und es wird Ihnen nicht sagen, dass die Version auf Ihrer Festplatte eine veröffentlichte CVE hat.
Wie finde ich heraus, welche installierten Homebrew-Pakete bekannte Schwachstellen haben?
Sie müssen das Installierte mit einer Schwachstellendatenbank vergleichen. EasyHomebrew erledigt das automatisch: Es erfasst Ihre installierten Formulae und Casks, fragt die OSV-Datenbank gebündelt ab und listet die Treffer nach Schweregrad. Von Hand hieße das, `brew list --versions` auszuführen und jedes Paket selbst nachzuschlagen.
Welche Schwachstellendatenbank nutzt EasyHomebrew?
OSV (osv.dev), die von Google gepflegte Open-Source-Schwachstellendatenbank. Sie führt Meldungen über Ökosysteme hinweg zusammen und wird live abgefragt, sodass eine Prüfung abbildet, was in diesem Moment veröffentlicht ist, statt einer zum Erscheinungstermin eingebackenen Liste.
Wie oft prüft es nach?
Standardmäßig läuft eine Prüfung beim Start der App, und der Menüleisten-Agent prüft im von Ihnen gewählten Takt nach und markiert das Symbol, wenn etwas auftaucht. Sie können jederzeit auch von Hand aus der Sicherheitsansicht prüfen.
Wird meine Paketliste an einen Server geschickt?
Paketnamen gehen an die OSV-API, um mit Meldungen abgeglichen zu werden — das verlangt eine Live-Abfrage. An Wizhut.tech geht nichts, es gibt kein Konto, und die Prüfung ist an kein Profil von Ihnen gebunden. Die Datenschutzerklärung nennt die Einzelheiten.

Finden Sie heraus, was bei Ihnen läuft

Eine Prüfung sagt Ihnen, ob auf Ihrem Mac etwas eine bekannte Schwachstelle hat — und der Menüleisten-Agent sagt es Ihnen von da an weiter. Ein einmaliger Kauf für 10 €.