パスワードを忘れた? アカウント作成
12019749 story
Windows

WindowsのHTTPプロトコルスタックにリモートでコードが実行される脆弱性 28

ストーリー by hylom
これはでかい 部門より
あるAnonymous Coward 曰く、

Microsoftは日本時間の15日、セキュリティ情報11件を公開した。最大深刻度が4段階中で最も高い「緊急」が4件ある。そのうちのMS15-034では、Windowsに対して特別に細工されたHTTP要求を攻撃者が送信した場合に、リモートでコードが実行される可能性があるというHTTP.sysの脆弱性を修正するものとなっている(Mattias Geniar氏BlogINTERNET WatchSlashdot)。

すでにこの脆弱性を悪用したエクスプロイト・コードは出回っているとのことで、IIS向けの回避策として出力キャッシュを無効にする方法(「カーネルキャッシュを有効にする」のチェックを外す)も提示されている。ただしパフォーマンスは落ちる(piyologで詳しい検証記事が掲載されている)。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • HTTP.sysを信用するな (スコア:5, すばらしい洞察)

    by Anonymous Coward on 2015年04月20日 8時59分 (#2800379)

    wget --header="Range: bytes=18-18446744073709551615" [target]/welcome.png

    で起こると言うことは、範囲チェックが甘くて変なメモリをアクセスするんだろうけど、HTTPをパースするなら物凄く変なリクエストが来て未知の不具合が顕在化する危険性はこれからも高いと思う。問題はカーネルモードでそれが起こると全体を巻き込んでフリーズする事だから、カーネルモードにサンドボックスを創れないのだろうか。

    通信がネットワークドライバで独立していると考えれば、HTTPをパースして結果を返すのはメモリ処理で完結してハードウェアの状態遷移を伴わないのだから、

    PAGE_FAULT_IN_NONPAGED_AREA

    が起こってもHTTP.sysを再起動するかパージする機構ができるのではないかと思ってしまう。

    とにかく、カーネルモードでHTTPを処理するのなら、基本的にHTTP.sysを信用しない構造にして欲しい。

    ※HTTP.sysだと直感的に機能が判りにくいのでHTTPD.sysとかにしてくれないかな。

    • Re:HTTP.sysを信用するな (スコア:3, おもしろおかしい)

      by Anonymous Coward on 2015年04月20日 9時02分 (#2800380)

      > カーネルモードにサンドボックスを創れないのだろうか。

      MS-DOSみたいなごく原始的なOSを除けばサンドボックスはすでに実装されているよ。ちなみにユーザーモードという名前がついている。

      親コメント
      • by Anonymous Coward on 2015年04月20日 10時30分 (#2800426)

        HTTP.sysの大きな目的の一つがカーネルモードとユーザーモードの切り替えコストを発生させずに処理を高速化することだから、ユーザーモードを使うならHTTP.sysの存在意義が薄れてしまいます。IIS 6.0の概要 [atmarkit.co.jp]
        なので

        > カーネルモードにサンドボックスを創れないのだろうか。

        という疑問になりました。

        今回の様なメモリ処理で完結している場合は、その様なモジュールの居場所としてリング1とかリング2が低コストで使えないのだろうか、とか、リング0のままでもメモリディスクリプタテーブルを必要最小限の物に切り替えて安全性を高められるのではないかと考えました。

        親コメント
typodupeerror

開いた括弧は必ず閉じる -- あるプログラマー

読み込み中...