HBGary事件の顛末

セキュリティベンダーの HBGaryが先日 Anonymousによってハックされ話題になった。HBGaryはセキュリティ研究者である Greg Hoglundがファウンダーである。彼は長年 rootkit.comを運営しているほか、Exploiting Softwareや rootkitsなどのすばらしい書籍も書いており、この業界ではかなりの有名人だ。

この事件は一体どのようにして起きたのか。きっかけは、HBGary Federalという会社が Anonymousについて調査した結果を公表しようとしたことに対する、Anonymousの報復攻撃ということのようだ。(Anonymousについてはこちらの解説が詳しい。)


さて、この事件についての詳細が Anonymousによって明らかにされたようなのだが、その経緯が非常におもしろい。
Anonymous speaks: the inside story of the HBGary hack | Ars Technica


ちょっと長い記事なので、こんなの読んでらんねーという人向けに、概要をまとめておく。

  1. HBGary Federalの Webサイトで利用されていた CMSSQL Injectionの脆弱性があり、パスワードハッシュが盗まれた。
  2. ハッシュは MD5を利用していたが、ソルトもストレッチングもなかった。そのため Rainbow Tableによる解析が可能だった。
  3. HBGary Federalの CEOと COOの2人とも、簡単なパスワードを設定していたので、解析されてしまった。(英字6文字+数字2文字)
  4. CEOとCOOの2人とも別の場所でも同じパスワードを使用していた。
  5. support.hbgary.com(Linuxサーバー)は社員が SSHアクセス(パスワード認証)に利用しており、このCOOも使っていた。(同じパスワードで)
  6. Linuxサーバーには昨年10月に発見された脆弱性が残っていた。これを利用して root権限を取得することができた。
  7. CEOは Google Appsのパスワードに同じものを使っていた。しかも彼は会社のメールシステムの管理者権限をもっていた。
  8. 上記権限を利用して、Greg Hoglundのメールにアクセスした。
  9. メールの中から rootkit.comにおける rootパスワードの候補が 2つ見つかった。また Nokiaの Chief Security Specialist (Jussi)が、Gregと同じく rootkit.comの root権限を持っていることがわかった。
  10. Gregからのメールを装い、Jussiに rootkit.comの自分のパスワードをリセットさせた。また rootkit.comへの sshアクセスもできるようにファイアウォールの設定を変えさせた。
  11. rootkit.comにログインして、ユーザーパスワードを含むデータを取得した。ここでも MD5ハッシュがソルトもストレッチングもなしに利用されていた。
  12. 再び Rainbow Tableを利用して、rootkit.comユーザーのパスワードを解析した。

ざっとこんな感じ。特にメールを使った Social Engineeringの部分が非常におもしろい。攻撃者は GregのユーザーIDもパスワードもどちらも知らなかったのだが、メールでうまく聞きだしてしまった。
(別エントリにメールのやりとりを追加)


この事件にはたくさんの教訓が含まれていると思う。

  • もし、SQL Injectionへの防御策があれば… (WAFとかね ^^)
  • もし、パスワードの使い回しをしていなければ… (ユーザー教育?)
  • もし、パスワードハッシュがもっと強固であれば… (ソルトとストレッチング)
  • もし、SSHのパスワード認証を許可せず、公開鍵認証を使っていれば… (これくらいやろう)
  • もし、Gregからのメールに何かおかしいと気がつくことができれば… (難しいかも)


これらの多層防御が一つでも有効であれば、事件は起きなかったかもしれない。もちろん別の穴を攻撃されていたかもしれない。それはわからないが、少なくとも攻撃はもっと難しかったはずだ。上記の事件の経緯が事実だとすると、この程度のペネトレーションはちょっと経験があれば誰にでもできるレベルだ。Anonymousは意外にもあっさり攻略できてしまったので、拍子抜けしたかもしれない。

あ、このネタ、講義で使えそうだな。(^^)