1997年から2010年までのIntel製CPUに脆弱性? 7
ストーリー by hylom
どんなものか 部門より
どんなものか 部門より
「1997年から2010年までのインテル製CPUに脆弱性、ルートキット埋め込み可能で対策はほとんどなし」という話が出ている。セキュリティ関連イベント「Black Hat」で発表されたものとのこと。
x86系CPUはSystem Management Mode(SMM)と呼ばれる動作モードを備えている。SMMにはシステム管理割り込み(SMI)を発生させることで遷移でき、SMM時にはCPU内のSMRAMと呼ばれる領域に記録されているコードが実行される。
OSや実行中アプリケーションからはSMMへの遷移は認識できないため、SMMを悪用して悪意のあるコードが実行された場合、ウイルス対策ソフトやOS側ではそのことを検知できず、対処も難しい。
ただし、SMRAMへのアクセス方法は限定されるうえ、SMIは基本的にはハードウェアによって生成される外部割り込みであるため、悪用は難しいと言われていた(日経ITproの解説記事)。
Engadget Japaneseの記事によると、今回発表されたのはこのSMMを利用して悪意のあるコードを実行できるという脆弱性のようだ。今年3月には、「複数のBIOS実装においてSMRAMの領域外を参照するSMM関数呼び出しが可能な問題(JVNVU#94580091)」が明らかになっているが、これが今回発表されたIntel CPUの脆弱性と関連するかは不明。
とりあえず (スコア:3)
CPU外なので。
Re: (スコア:0)
俺がCPUソケットに嵌めたアレはCPUとちゃうの?
IBN5100 (スコア:1)
1997年から2010年までのCPUに脆弱性がある。
Steins;Gateの舞台の2010年の最新PCでSERNにハッキングすると即人生終了。
1997年以前のPCでも何らかの脆弱性がある。よってSERNにハッキングするには
IBN5100が必要不可欠だったんだよ!!
ΩΩΩな、なんだってー!?
sandy bridge 以降は大丈夫? (スコア:0)
Re:sandy bridge 以降は大丈夫? (スコア:5, 参考になる)
sandy bridge 以降は,今のところ大丈夫です
blackhat.com に論文と発表スライドが,github.com に実証コードが upload されています
https://www.blackhat.com/us-15/speakers/Christopher-Domas.html [blackhat.com]
https://github.com/xoreaxeaxeax/sinkhole [github.com]
ざっと目を通した感じでは
このアタック方法の肝は,APICのレジスタをメモリマッピングする仕組みを悪用して
SMRAMに悪意のあるコードを流し込む点にあります.
しかし彼の方法でコードが流し込めるのはNehalemまでで,
sandy bridge 以降ではCPUの挙動が変わったのでコードが流し込めないとのことです.
Re:sandy bridge 以降は大丈夫? (スコア:3, 参考になる)
SMRAM に悪意のあるコードを流し込む概念は既出で、今回はそれの新しい方法っぽいな。
APIC に特別な割り込みがかかった場合に、 SMRAM として確保された領域のコードが実行される。この領域はBIOS実行時にROMから割り込みハンドラがコピーしてあって、ring -2 でのみアクセスできる。 ring -1(VMX root) ですら読み書きできないので、油断して色々と書いてある。しかし、x86_64 には様々なメモリのリマップ機能があって、何かをそのセキュア領域にマッピングした上で、ring 0 権限のみの操作に見せかけて、制限をスルーして書き込むことができる。一旦この割り込みハンドラに任意コードを書いておけば、実際に割り込みが発生した時にロングジャンプするなりして好きなコードを実行できる。この時 CPU が入っている ring -2 という超特権モードでは、CPU のセキュリティ機能の一部もスルーできる。
SMRAM は CPU から見えるメモリの一部を指定しているだけで、そういうメモリ素子があるわけではない。だから、電源を抜いてから信頼できる ROM から起動すれば、消える。
Re: (スコア:0)
突っ込んだら負け?
タレコミにリンクのあるengadgetの記事
> CPU そのものに仕込まれるため、ユーザーが OS をクリーンインストールしなおしても感染は取り除けず、
> UEFI/BIOS をすべてクリアしても何の意味もありません。
# 誰がどこにそのプログラムを仕込むんだよ