Homebrew 7.0.0 gets built-in GUI, better security controls

Homebrew パッケージマネージャーのバージョン 7.0.0 がリリースされました。このバージョンには、脆弱性スキャナーが組み込まれ、セキュリティ制御が強化され、ネイティブのグラフィカルインターフェース「BrewUI」が正式にリリースされています。

このオープンソースのパッケージマネージャーは主に macOS で使用されており、パッケージを自動的にダウンロードし、依存関係を解決してインストールすることで、Linux のパッケージマネージャーと同様の方法でソフトウェアをインストールすることができます。

このプロジェクトの人気は、GitHub での 4.9 万個のスターと 1.1 万件のフォークから明らかであり、また、クローンサイトやClickFix を使った誘導などを通じて、情報窃取型マルウェアを拡散させるために、攻撃者から頻繁に標的とされていることからもうかがえます。

最新バージョンでは、macOS 26「Tahoe」以降で利用可能な公式ネイティブGUI「BrewUI」により、パッケージの閲覧や検索、依存関係の確認や管理が容易に行えるようになりました。

The new BrewUI interface
新しいBrewUIインターフェース
出典:Homebrew

ユーザーは、新しいコマンド(brew vulns)を通じて脆弱性スキャナーを利用できるようになりました。また、Homebrewが配布するフォーミュラのバージョンやリビジョンに影響を与える脆弱性を追跡する、Homebrew専用のアドバイザリデータベースも含まれています。

Homebrewは、グラフィカルアプリケーション、フォント、プラグイン、その他のmacOSソフトウェアをインストールするために使用される「cask」と、Homebrewに対してファイルのダウンロード、ビルドコマンドの実行、依存関係のインストールを指示できるRubyベースのパッケージ定義である「formula」を管理しています。

Homebrew 7.0.0 では、インストール済みのフォーミュラ、特定のフォーミュラ、または Brewfile で宣言されたフォーミュラとその依存関係をチェックできるスキャンコマンドが追加されました。

各フォーミュラについて、Homebrewはアップストリームのソフトウェアリポジトリとそのバージョン/タグを特定します。一方、インストール済みのパッケージについては、利用可能なSBOMからの情報を使用するか、フォーミュラ定義からソースを導出します。

このコマンドは、アップストリームリポジトリとバージョン/タグをバッチクエリとして OSV.dev に送信し、脆弱性レコードを取得して潜在的な一致を確認し、オプションの重大度フィルターを適用した上で、最終的に Homebrew がこのフォーミュラに対してすでにセキュリティパッチを適用しているかどうかを検証します。

これとは別に、Homebrewの新しいアドバイザリデータベースは、Homebrewのフォーミュラのバージョンやリビジョンに影響を与える脆弱性を記録したOSV形式のレコードを公開しており、これにはアップストリームソフトウェアのバージョンを変更せずにバックポートされた修正も含まれます。

「Homebrewは、フォーミュラAPIおよびダウンロード可能なアドバイザリインデックスを通じてアドバイザリの結果を公開しており、他のツールが未修正の脆弱性とすでに提供済みの修正を区別するのに役立っています」とプロジェクトチームは説明しています。

「このデータベースのOSV形式のレコードはCC0の下で自由に再利用可能であり、セキュリティチームにHomebrew固有の脆弱性データの共有ソースを提供します。」

また、Homebrew 7.0.0 では、ユーザーのホームディレクトリへのアクセスがデフォルトでブロックされ、ネットワーク経由の依存関係のダウンロードがオフラインインストールから分離されるようになったため、ユーザーはより優れたサンドボックス環境を利用できるようになりました。

またHomebrewは、パッケージのダウンロード、準備、インストールを並行して行う新機能により、この新リリースではインストールとアップグレードが高速化されていると述べています。