T1#security#outage#regulation
モリスワーム ── インターネット史上初の大規模感染事件

メタデータ
- 日付
- 年代
- 1980s
- Tier
- T1
- 参照年表
- サイバーセキュリティの歴史
- 出典数
- 06
- 関連項目
- 01
- Tags
- #security#outage#regulation
1988年11月2日の夜(米東部時間20時30分ごろとされる)、 マサチューセッツ工科大学(MIT)の AI 研究所のマシン prep.ai.mit.edu から、 1本のプログラムがインターネットへ放たれた。 99 行の C で書かれたブートストラップと、 VAX / Sun-3 用にコンパイル済みの本体という二段構成のこのプログラムは、 数時間のうちに全米の大学・軍事施設・医療研究機関のホストを事実上停止させた。 GAO の報告書は、 最初の被害報告が同日21時(米東部標準時)に複数のサイトから上がったと記録している。 作者はコーネル大学のコンピュータサイエンス大学院生 Robert Tappan Morris、 当時23歳。 放出元に MIT を選んだのは、 発信元がコーネルの自分であることを隠すためだったと控訴審判決は認定している。
これが「Morris Worm(モリスワーム)」、 インターネット史上初の大規模ワーム感染事件である。
カーネルではなくユーティリティを突く
GAO 報告書と控訴審判決はいずれも、 ワームが4つの経路を使ったと整理している。 標的は BSD 系 UNIX が動く VAX と Sun-3 で、 OS のカーネルではなく周辺のユーティリティの欠陥を突いた。
- sendmail の DEBUG モード: 当時の sendmail(メール配送デーモン)はデバッグ用にリモートからのコマンド実行を許す DEBUG モードを持っていた。 多くのベンダー出荷時設定でこれが有効のまま残っていた。
- fingerd のバッファオーバーフロー:
fingerデーモンのgets()呼び出しに長さチェックがなく、 スタックを上書きして任意コードを実行できた ── 公開された初期のバッファオーバーフロー実用例の一つ。 - 信頼ホスト(trusted hosts):
.rhostsで互いを信頼するホスト間では、 パスワードなしでコマンドを実行できた。 これはバグではなく利便性のための機能であり、 だからこそ1台が陥落するとローカルネットワーク内へ一気に広がった。 - パスワード推測: 432語の内蔵辞書と
/etc/passwdから派生させた候補で総当たりを試み、 当たればその利用者になりすまして次のホストへ進んだ。
侵入に成功すると、 ワームは小さなブートストラップ(grappling hook)を送り込み、 続いて本体バイナリ(VAX 用と Sun-3 用の両方)をコピー、 実行を開始する。
設計ミスがもたらした「ネットワーク停止」
Morris の意図は、 ワームの規模をひそかに観測する小さな実験だったとされる。 ただし設計上、 同じホストにすでに自分が存在するかを確認し、 存在すれば停止するロジックが入っていた ── これだけだとセキュリティ研究者が偽の「存在」シグナルを返すだけで全停止できてしまう。 そこで Morris は 7 回に 1 回は確認を無視して感染を続行する という保険を入れた。
しかしこの「7 分の 1」が大きすぎた。 控訴審判決は、 Morris が質問の投げられる回数を過小評価しており、 その結果この比率が想定をはるかに超える複製を招いたと認定している。 結果として、 1台のホストに多数のワームプロセスが共存し、 CPU・メモリ・プロセステーブルを食いつぶした。 多くのサーバが応答不能になり、 ネットワークは事実上ダウンした。
数字はどれも推定である
感染台数にも被害額にも、 公式な集計は存在しない。 GAO(米国会計検査院)が1989年6月に出した報告書 IMTEC-89-57 は、 この点をはっきり書いている。
- 感染台数: 報道によれば約6,000台。 ただし GAO は、 この数字が、 自機の10%が感染したという MIT の見積もりを全体へ外挿したものであり、 すべてのサイトが MIT と同じ脆弱機比率を持つわけではないと留保を付けている。 インターネット上のユーザに照会をかけたハーバード大学の研究者は、 1,000〜3,000台がより正確だと反論した。
- 被害額: 同報告書はハーバード大学の同じ研究者による試算として 10万〜1,000万ドル を挙げる。 個別に金額を申告した政府サイトは少なく、 NASA エイムズ研究センターが72,500ドル、 エネルギー省ローレンス・リバモア国立研究所が10万ドルで、 いずれも人件費の逸失が主因だった。
- 控訴審判決は、 1施設あたりの対処費用が200ドルから53,000ドル超の範囲だったと述べている。
GAO はまた、 ワームが恒久的な損害を残さなかったこと ── ファイルの破壊も改竄も、 メールの傍受もパスワードの窃取も行っていないこと ── を明記している。 被害の実体は、 失われた計算時間と、 復旧に費やされた人の時間だった。
法的帰結 ── CFAA 初の有罪判決
Morris は1989年7月、 1986年に成立したばかりの Computer Fraud and Abuse Act(CFAA) 違反 ── 18 U.S.C. § 1030(a)(5)(A) ── で起訴された。 同法で有罪となった第一号である。 1990年1月に陪審が有罪を評決し、 同年5月4日に量刑が言い渡された。 保護観察3年、 社会奉仕400時間、 罰金10,050ドル、 および保護観察費用の負担。 検察は禁錮5年と25万ドルの罰金を求刑していたが、 収監はされなかった。
控訴審 United States v. Morris(928 F.2d 504, 2d Cir. 1991、 1990年12月4日弁論・1991年3月7日判決)でも有罪は維持された。 争点は「intentionally(故意に)」が「アクセス」だけに掛かるのか、 結果として生じた損害にも掛かるのかで、 第2巡回区は前者を採った。 CFAA の「権限なくアクセスした(accesses ... without authorization)」という文言の初期解釈を確定させた判例として、 現在も引用される。
Morris 自身は学界へ戻り、 後にスタートアップ Viaweb を共同創業(1998年に Yahoo! が約4900万ドルで買収、 Yahoo! Store となる)、 MIT 教授に就任、 Paul Graham と Y Combinator を共同創業した。
CERT/CC の誕生
事件直後の1988年11月、 DARPA は SEI(カーネギーメロン大学 ソフトウェア工学研究所) に CERT/CC(CERT Coordination Center) の設立を委託した。 目的は、 同種の事件で組織横断的に情報を集約・配布する公的な「窓口」を作ること。 SEI 自身は、 モリスワームを受けて DARPA が緊急対応チームの設置を要請した、 と経緯を説明している。
CERT/CC はその後、 脆弱性アドバイザリ(CERT Advisory)の発行と、 発見者・ベンダー・利用者のあいだを仲介する調整型脆弱性開示(coordinated vulnerability disclosure)の実務を確立し、 各国の national CSIRT 群のモデルになった。 なお CVE 番号制度は CERT/CC の産物ではなく、 1999年に MITRE が別途立ち上げたものである。
Morris ワームがなければ「インシデント対応」という職能そのものが今と違う姿になっていた、 と言える。
善意のネットワークが終わった夜
技術的には、 Morris ワームは複数の教訓を一度に与えた ── (1) バッファオーバーフローは現実の攻撃手段である、 (2) 「デバッグ用」の隠し機能は出荷時設定として残ってはならない、 (3) パスワードの辞書攻撃に対する防御は必須、 (4) 自己増殖プログラムは設計者の意図に反して暴走する。
社会的には、 これがインターネットを「研究者間の善意のネットワーク」から「悪意もまた流通するインフラ」へと不可逆に変えた事件である。 1988年以前のインターネットには、 ファイアウォール、 侵入検知、 セキュリティ監査、 CVE、 SOC ── 現代のセキュリティ業界を構成するほぼすべての概念が、 まだ存在していなかった。 1988年以後、 それらが必要になった。
サイバーセキュリティの歴史を書くなら、 第一章は 1988 年 11 月 2 日のこの夜から始まる。
よくある質問
- モリスワームが放たれたのはいつか
- 1988年11月2日の夜である。 放ったのはコーネル大学院生の Robert Tappan Morris で、 sendmail の DEBUG 機能・fingerd のバッファオーバーフロー・信頼ホスト関係・パスワード推測の4経路を連鎖させて自己複製した。
- 何台のコンピュータが感染したのか
- 公式の集計は存在しない。 広く引かれる約6,000台は当時の報道による数字で、 GAO の1989年報告書はこれを「MIT が自機の10%が感染したと見積もった値を全体へ外挿したもの」と説明し、 1,000〜3,000台が実態に近いとするハーバード大学研究者の反論も併記している。
- Robert Morris はどうなったのか
- 1989年7月に起訴され、 1986年制定の Computer Fraud and Abuse Act(CFAA)で有罪となった最初の人物になった。 1990年5月の量刑は保護観察3年・社会奉仕400時間・罰金10,050ドルで、 収監はされていない。
出典
最終更新: