プロプライエタリ ファームウェアとは、製造者によって使用、私的な変更、コピー、または再公開が制限されているファームウェアのことです。 所有者は、ソース コードアクセスの制限、ファームウェアの置き換えの制限 (ファームウェアを再コンパイルして置き換えるために必要なツールの完全な提供を拒否する) などの技術的な手段、または著作権や特許などの法的手段によって制限を強制する場合があります。 プロプライエタリ ファームウェアの代替品は、無料 (libre)またはオープン ソースの場合があります。
分布
プロプライエタリなファームウェア(特にマイクロコード)は、プロプライエタリなソフトウェアやプロプライエタリなデバイスドライバーよりも回避がはるかに困難です。これは、ファームウェアが通常、各デバイスの製造元に非常に特化しており(モデルごとに固有であることが多い)、交換品を作成するために必要なプログラミングドキュメントや完全な仕様がハードウェア製造元によって公開されていないことが多いためです。[1]
多くのオープンソースオペレーティングシステムは、デバイスドライバを動作させるためだけに、独自のファームウェアファイルを配布物に含めることを渋々選択しています。 [2 ] これは、メーカーがフラッシュメモリやEEPROMをデバイスから削除してコストを節約しようとするためであり、デバイスが使用されるたびにオペレーティングシステムがファームウェアをアップロードする必要があります。[3] ただし、これを行うには、オペレーティングシステムがこの独自のマイクロコードの配布権を持っている必要があります。[3]
セキュリティ上の懸念
独自のファームウェアは、現代のコンピュータのダイレクト メモリ アクセス(DMA) アーキテクチャとDMA 攻撃の可能性があるため、ユーザーに重大なセキュリティ リスクをもたらします。[要出典] OpenBSDのTheo de Raadtは、ワイヤレス ファームウェアは設計品質の低さとファームウェアの欠陥のため、独自のままにしておくべきだと示唆しています。[4] [5] UbuntuのMark Shuttleworthは、「製造業者の最悪のレベルの無能と、非常に幅広いそのような機関の最高のレベルの能力のおかげで、すべてのファームウェアがセキュリティの汚水溜めであると想定するのは合理的です」と示唆しています。[6]
独自のマイクロコードがもたらすセキュリティと信頼性のリスクは、独自のデバイスドライバがもたらすリスクよりも低い可能性があります。これは、このコンテキストのマイクロコードがオペレーティングシステムにリンクされておらず、ホストのメインプロセッサ上で実行されないためです。[2]
代替案
特定の製品では、カスタム ファームウェアが引き続き利用できる場合があります。これは多くの場合、無料のオープン ソース ソフトウェアであり、ゲーム コンソール、ワイヤレス ルーター、Android フォンなど、 Linux、FreeBSD、NetBSDなどの完全な汎用オペレーティング システムを実行できるハードウェアの特定のセグメントで特に人気があります。これらのシステムは、メーカーが独自のファームウェアで使用しているシステムであることが多いです。
もう 1 つの潜在的な解決策は、オープンソース ハードウェアを使用することです。これは、ハードウェア自体を複製するための回路図も提供することで、さらに一歩進んでいます。
例
- アルコール検知器[7]
- IBM互換パーソナルコンピュータに搭載されているBIOSのほとんど[6]
- 最近のx86コンピュータに搭載されているUEFIのほとんど
- ARCS 、 Silicon Graphicsのコンピュータで使用
- IBMのコンピュータで使用されるランタイム抽象化サービス(RTAS)
- iPodのコントロールメニュー
- シスコ IOS
- ワイヤレス ネットワーク インターフェイス コントローラー、ビデオ カード、x86プロセッサーなどのマイクロコード。
参照
参考文献
- ^ Jeremy Andrews (2005-03-08). 「特集: OpenBSD の「すぐに使える」ワイヤレス サポート」KernelTrap。 2005-03-09 のオリジナルからアーカイブ。
- ^ ab Jeremy Andrews (2006-05-02). 「インタビュー: Theo de Raadt」KernelTrap。 2006-06-03時点のオリジナルよりアーカイブ。
- ^ ab Jeremy Andrews (2004-11-02). 「特集: OpenBSD がワイヤレス チップセットのオープン化に取り組む」KernelTrap。 2006-06-20 時点のオリジナルからアーカイブ。
- ^ Theo de Raadt (2016-12-03). 「ページ 13: ハードウェア: 802.11 ワイヤレス ネットワーク (詳細)」。Open Documentation for Hardware。OpenCON 2006、2006 年 12 月 2 ~ 3 日。Courtyard Venice Airport、Venice/Tessera、イタリア。
- ^ コンスタンティン・A・ムレーニン (2006-12-10)。 「Почему так важно иметь документацию по программированию железа」。Linux.org.ru (ロシア語)。
- ^ ab Mark Shuttleworth (2014-03-17). 「ACPI、ファームウェア、そしてセキュリティ」
- ^ 「飲酒運転者に飲酒検知器のソースコードへのアクセスを許可」 2005年11月3日。2008年9月30日時点のオリジナルよりアーカイブ。
