Zephyr RTOS の深刻な Bluetooth 脆弱性が FIX された

Zephyr RTOS fixes Bluetooth bugs that may lead to code execution

2021/06/22 BleepingComputer — 組込み機器向けの RTOS である Zephyr は、6月の初めにアップデートを行い、サービス拒否 (DoS) やリモート・コード実行を引き起こす可能性のある、複数の脆弱性を修正した。これらの問題は、Zephyr の Bluetooth LE Link Layer (LL) および Logical Link Control and Adaptation Protocol (L2CAP) の実装において発見されている。

Zephyr は、小さな OSS プロジェクトだが、Facebook / Google / Intel / Nordic Semiconductors / Adafruit などの業界の大物企業に支援されている。この OS は、さまざまな CPU アーキテクチャ (ARM / Cortex-M / Intel x86 / ARC / NIOS II / Tensilica Xtensa / SPARC V8 / RISC-V 32) を搭載した 200枚以上のボードをサポートしており、小型の組み込み機器 (補聴器 / スマートタグ / 遠距離トラッカー / スマート PPE用セーフティポッド / IoT ゲートウェイ / ポータブル・バックアップ・デバイス)のメーカーにとって、魅力的な選択肢となっている。

米国の電子設計自動化 (EDA : electronic design automation) 企業である Synopsys の senior software engineer である Matias Karhumaa は、Zephyr の Bluetooth LE スタックの最下層をテストした結果として、8つの脆弱性を発見した。見つかった脆弱性は、いずれも Bluetooth LE のリンク層と L2CAP の実装に存在している。これらの脆弱性の多くは、Zephyr のバージョン 2.5.0 および 2.4.0 に影響し、その一部はバージョン 1.14 にも影響する。Synopsys が発表したレポートによると、特定の状況下でデバイスをフリーズさせると、リモート・コードが実行される可能性があり、攻撃者は 1つのパケットを使って無線で脆弱なデバイスの状態を引き起こすことができるという。

Karhumaa が技術的な詳細についてポストしていると、この記事は指摘しています。このエンジニアは、2月初旬に Zephyr RTOS に Bluetooth 関連の脆弱性を発見し、開発者に対して非公開で報告したとのことです。そして、6月の初めには、前述の セキュリティ脆弱性修正を含む、新しい Zephyr 2.6.0がリリースされました。脆弱性 CVE-2021-3435 の場合、これを悪用すると、機密情報を含む情報漏えいが発生します。攻撃者は、不正な L2CAP_CREDIT_BASED_CONNECTION_REQ パケットを送信することで、最大 6 バイトの初期化されていないメモリの内容を読み取れます。脆弱性 CVE-2021-3455 は、システムに DoS 状態を引き起こしますが、Zephyr の L2CAP 実装における use-after-free の問題を悪用して、リモート・コードを実行する可能性もあるとのことです。