私の目から見た PacSec 2010 (2)

時系列に並べずにアトランダムに記述するという方針変更。まぁ大まかには時系列どおりにいきたいところだけど。

トレンドの変化、時代の変化、参加者の変化

今年の PacSec は 1 日チケットが購入可能になったのと同時に、昨年は明確でなかったジャンルの区分が行われた印象がある。1日目は技術的な話題が少なめ、というより、一般向けのトレンドな話題について。2日目は技術的かつ若干深遠な応用も含むものについて。―といったように、両日の違いはかなり鮮明なものになった。ただ、それでこのカンファレンスの魅力が薄れたわけではない。今回の内容は、それぞれの内容についてより踏み込んだと考えている。
ただ、参加者の方は私が観る限り昨年より少なくなってしまっている。1〜2割ほど? ただその代わりに外国人の方をよく見かけた気がする。(気がするだけかもしれないけど。もし正しかったとしたら、日本人が相対的に減ってしまったことになる。) 両日には参加者の数にも違いが現れ、2日目の方が若干 (特に日本人の) 参加者が多かったように感じる。これについてはある程度合理的な説明が得られる。高い料金を支払ってまでセキュリティについて深い知識を得たいと考える人なら、やはり技術的議論メインの 2日目を目当てにするだろう。実はこのブログエントリを書く過程で各年の PacSec 参加者に関する主催者側資料に当たることができたが、「減った」といっても全体の参加者は明らかに 100 名程度いたように感じたし、まだまだ開催する余裕はあると言えばあるのかもしれない。
これは発表を終えてからの印象なのだが、参加者が少し減ってしまった以上に、今回の私の内容に「食いついてくれる」人は多かったように感じる。*1参加者の技術的なレベルは下がっていない上に、私の発表も応用範囲が広く、かなり興味を持ってもらえる内容で、発表そのものもなんとか安定して行えたのが影響しているのだと思う。

スライド

思いっきり typo あるし、果ては図の 1 個に関してはそのまま日本語になってしまっていた。やってしまった、がそこにツッコまれることはなかった。またスライド製作途中、徹夜のせいでテンションが若干上がってしまい、スライドに (無駄に) エルシャダイネタ*2を仕込んでしまった。今では反省しているが、そこに突っ込むにはベストだったということもまた言える。

PacSec Day 1 : 電源がないっ!

PacSec 2010 がはじまって…最初に気づいたこと。電源がない…。もしかして以前から電源は勝手に取り回すようになってた? かどうかはさておき、最初に座った場所 (最後尾、韓国人メンバーが同席) からの電源確保は無理そうだった。仕方なくスマートフォンで tsuda ることにした…が、タッチによる文字入力の遅さはさすがに否み難い。あまり有用なツイートをすることができなかった。
1日目の昼以降と2日目はなんとか電源確保に成功し、ある程度の量はツイートに変換できた。それでも昨年の PacSec 2009 で精力的に tsuda っていた方には遠く及ばず。あの人達のモチベーションはどこから来ているんだ、と不思議に思う一幕。

PacSec Day 0 Party : 買い物?

韓国人グループとの話の中で 「?」が頭の上に飛び出した*3のが、唐突な「ベビー用品」に関する質問。どうも家族のためにベビー用品を買いに行きたいらしい。(外国人の方が日本の電化製品などを購入していくというのはよく聞く話だが、この人達の場合も同様らしい。なんか Day 1 の終了後には秋葉原にも行ったっていうし。)

PacSec Day 0 Party : 翻訳 (続き)

AVTokyo でも話した [twitter:@security4all] はかなりの日本好きだ。そればかりか、なんとスライドの大部分を自分で日本語に訳してしまったらしい。ただしここには彼なりの秘訣がある。ほとんどのスライドの要素は「単語」だけで表現してしまい、あとはスピーチで補うのだ。*4同時通訳が大変そうだと他人なりに思った。

PacSec Day 1 : 体力の限界

今回、私は発表に関して秘密兵器を準備して来た。Android タブレットである。タブレットに発表用原稿をあらかじめ入れておき、詰まったときはこれを読み上げることでカバーするという作戦だ。発想は悪くない。しかし、原稿を作るのにもそれなりの時間を消費してしまい、PacSec Day 1 に最悪な体調を持ち越すハメになってしまった。なんとか全員の発表を聞けたものの、今考えればそのまま倒れこんでいてもおかしくなかったかもしれない。さて、この秘密兵器タブレットがどう活躍したかについては…次回以降。

PacSec Day 1 : 発表

今回は Tweet が少なめだったので、内容を多めに補完。ただしスライドが公開されていないものもあり、一部しか理解していないものもある。

POC 主催者 - Vangelis : "ある経験と日本のセキュリティコミュニティへのアドバイス" ([twitter:@vangelis_at_POC])

この前の日に話した (前回参照) Kancho もスタッフとして参加する POC の主催者である Vangelis による発表。実は Kancho もスピーカーだと勘違いしていたが、そうではなかったらしい。まぁそれは置いておこう。彼の話は、特に日本人、もっと言えば、日本のハッカーコミュニティに焦点を当てている。正直この発表は「技術的」ではないし、お世辞にもスムーズに進んだ発表でもなかった、しかし、私にとってはこのプレゼンは PacSec 2010 の中では最も記憶に残ったものと言えるだろう。
日本人から見ても日本の「ハッカーコミュニティ」と呼べるものはわずかしかない。Vangeris がはせがわようすけ ([twitter:@hasegawayosuke]) 氏の言葉を引用したように、ほとんどの「ハッカー」は個人でひっそりと活動しているようだ。スピーチからは少し外れるが、日本人グループがアンダーグラウンドハッカーをやっているという話もほとんど聞かない。*5日本人で活動している研究家ならそのままやり過ごしてしまいそうな話題だが、韓国から見ると、それ以上に見えてしまうらしい。
韓国にほぼ特有なハッカーコミュニティの特徴は、ハッカーの「正当な活動」が社会に十分に認知され、なおかつハッカーハッカーコミュニティに対して政府の厚い支援があるということだ。これは、韓国においてブロードバンドなどを含む IT が他国を上回るペースで普及していった*6のと同時に、他国からのサイバー攻撃も集中して受けることになり、政府や社会の情報セキュリティに対する関心が極めて高いことが理由として挙げられる。*7
そう、この話が昨日の「ひとりでやっているのか?」という質問につながるわけだ。もちろんグループにもデメリットはある。しかし個人だけ、なおかつ成り行きまかせでやっていた場合、れっきとした研究や成果が葬り去られてしまうリスクも極めて高くなってしまうのだ。*8
彼が訴えたかったことは簡単には「日本人による、日本の(ハッカー|ハッカーコミュニティ)の育成」とまとめることができる。まだやるべきことは多いらしい。あ、そういえば発表の中で面白かった一幕、「日本人が主催するハッカーカンファレンスを開催すべきだ。」という部分があった。PacSec はカナダ企業が主催するカンファレンスで、「彼らが去っちゃったら日本のハッカーカンファレンスがなくなっちゃうからね」と Vangelis が言ったら、「なくならないよ!」と PacSec 主催者の Dragos。Dragos も日本のセキュリティ業界における事情 (日本のエンジニアの事情が見えてこない etc.) から PacSec を主催することを決めた人でもあるし、ツッコまずにはいられなかったのだろう。
ただ―訴える内容というのは、やはり日本人からすれば現状難しい部分というのは多い。昼食中もこの発表に関しての話題に少し参加したが、若干ネガティブな印象も受けた。日本のセキュリティ業界は終わってると堂々と喋ってたメンバーの横で色々話を聞いていたけど、それも正論なんだよなぁ。

ベルギー,BruCON 主催者 - Benny Ketelslegers : "ハッキング-コミュニティ: ヨーロッパのセキュリティコミュニティの過去と現在" ([twitter:@security4all])

そう、AVTokyo でも喋っていたあの人だ。
この人の発表はヨーロッパにおけるハッカーシーンの紹介など。27C3 や自身の主催するカンファレンスである BruCON など、例を多めにわかりやすく紹介。
(*** すみません、後で追記します。***)

Microsoft Malware Protection Center - Jeff Williams : "Stuxの板挟み"

PacSec 2009 に来ていた方のような気がする。後で確認すると、昨年の飲み会でよく喋った方であった。名刺を交換していたのでアドレス帳に残っていた。
今回の話題は、最近ニュースでもよく出るようになった "Stuxnet" の全貌について。技術的な話題も多めだが、全体としてはニュース以上のものをより詳しく解説したもののようだ。
もちろん Stuxnet の特徴として挙げられることは、その複雑さだ。複数段階の攻撃を経て、Siemens 製ソフトウェアを乗っ取ろうとする。
もうひとつの特徴は、複数のゼロデイを使用したこと。Stuxnet が使用した脆弱性は幾つかあって、まだ未パッチのもの*9も含まれる。その中でも主要な役割を果たしているのが Windows に存在する 2 つの脆弱性だ。ひとつは一躍有名になった*10 Windows の LNK ファイルに関する脆弱性。もうひとつは、Windows のプリンタスプーラーサービスに存在する脆弱性。特定のファイル名で「印刷」を行うと、そのファイルが自動的に「実行」されてしまうという*11恐ろしいものだ。
Stuxnet の解析を阻むのは複雑さだけではない。このマルウェアは権限を慎重に (複数段階のチェックを加えながら) 昇格させ、最終的に WinCC ソフトウェアへの完全なコントロールを取得する。この過程でアンチウイルスソフト仮想マシンサンドボックスなどによる干渉を受けたと判断した場合、それ以上の行動は何一つせずに静かに終了する。
さらに Stuxnet がもつ rootkit は、「正当な」証明書によって署名されているということも問題になった。これはエフセキュアブログの記事が詳しいが、結論としてこれらの証明書は正当な会社*12から「窃盗」されたということがわかっている。証明書が窃盗されたのなら、それを無効化すれば良いではないかというのが大勢の意見で、事実私もそう考えていた。しかし実際にはあまり助けにならないこともあるらしい。というのも、Windows のバージョンによっては証明書の無効化が適切に行われていたとしても、警告なしにドライバをインストールできてしまうからだ。*13
そこから背景にあったものは…と話は続くのだが、意識が朦朧としていたせいかその部分の記憶がほとんどない。ここは大人しくスライドを待つことにする。

University of Luxembourg - Philipp Weinmann : "隠された復讐の女神: エンベッド・コントローラーにバックドアを仕込む" ([twitter:@esizkur])

なんというか一言で言わせてください。「良くも悪くも Thinkpad 最強説?」
Thinkpad の中にあるマイクロチップ、組み込みコントローラ*14は LAN 経由でコマンドを送ることができ、それによって BIOS の内容やコントローラ自身のファームウェアまで書き換えてしまうことが可能。この部分を悪意あるものに書き換えた Thinkpad は、タイプしたキーやその他の有益な情報を外部に送信することができる。
ただし、マルウェア自身が占有できる書き換え可能領域はそれほど多く無いが、情報を圧縮することで数時間分のキータイプ (?) を記録し、それを送信することが可能。
…などなど。

"パネルディスカッション"

当日もらった予定表でも TBA のままで何なのだと思っていたが、オンデマンドにパネラーを決めるという前代未聞のシステムだとのこと。
実はパネルディスカッションが開始される直前、私にパネルディスカッションに入ってくれないかと ([twitter:@gohsuket] 氏に) 頼まれたが、断っている。*15というわけで、なぜか [twitter:@tessy_jp] さんが連れて行かれた。ここでインタプリタ (同時通訳用) なしで聞いてたことがアダになる。これまでのセッションは「発表」ということから英語だけでも「聞きやすい」のでなんとか聞けていたが、早口気味のディスカッションは難しい。(英語の訛りが酷いわけではないのだが、速さでついていけない。) 話題については…「一般人にどうセキュリティの現在を教えるか」という部分からボットネットに関する話題、セキュリティ業界に関する話題 (?) に移っていったが、あまりよく聞けていない。ボットネットを「乗っ取って」クリーンにすることの是非についての話になったとき、誰かが "never" という言葉を口にしたのが少し印象的。どんな理由があろうと、コンピュータネットワークを乗っ取ることは良い考えではないという風に解釈。

PacSec Day 1 : 記者会見

記者会見に臨んだ記者は朝日新聞の方と [twitter:@sen_u] 氏を含む Hacker Japan 関連の人たち。私の分はそれなりに無難に話せた。が機転が利かず、ちょっとした喩え話とかで分かりやすく説明する計画がパァである。Dragos は日本「特有」の環境について質問を受けていて、日本はある部分ではものすごく進んでいるのに、一方ものすごく遅れている部分もある、というアンバランスな環境だという説明をしていたのが印象的か。

PacSec Day 1 : レセプションディナー

去年は 2 日を通して体調が悪かったため、レセプションディナーで話した人数もある程度限られていたが、今回は色々なところを回って話をしたりあるいはそれを聞いたりすることに成功。私の (PacSec でないそれ以前の、ブログでは旧アカウントに載せていた) 成果について見てくださっていた方もいて、本当に色々な話ができた。体調が悪いのはどこへやら。*16

  • ダイハード 4.0 がどうとか、
  • ソフトウェアの DRM や保護とか、
  • rootkit とか、
  • 愛奴さんの xxx についてとか、

思い出そうとするだけでも記憶がグルグルする。色々なコトが高エントロピーで記憶されていることで、少し混乱してしまうのかも。

PacSec Day 1 after

本当は原稿の完成度を少し上げようと思っていたのだが、疲労からして遅く寝ると発表当日に酷いことになることは分かりきっているので、意図的に早く切り上げた。相当の疲れが溜まっているだろうし、強めの栄養ドリンク、カロリーメイトレッドブルの基本三点セットを購入し、深い眠りについた。このことが今回功を奏したといってもいい。

*1:質疑応答の時間に質問してくれる方はいなかったのだが、その後に色々具体的な話について聞かれることが多かったのだ。これについては次回以降。

*2:JIT コンパイルしたコードについて、「そんなやり方で大丈夫か?」「問題ない。」さらに効率的なコード生成のために「一番良いエンコーディングを頼む。」までセットで。

*3:まるで MGS シリーズのように!

*4:AVTokyo で彼の発表を見ている方なら知っているとおり、もちろんトルーパーがスライドの至るところに登場する。

*5:本当にわずかしかいないのか、あるいは外国のハッカーチームと組んでいるか、のいずれかだろう。

*6:その大部分が Microsoft 製テクノロジである、というのはある意味笑えない話である。

*7:私はこれ以外にも、韓国の政治体制と経済規模が、急な政策の変更を行いやすい地盤となっていると推測した。もちろんこれは政情不安定というデメリットも産んでしまうが、情報セキュリティに関してだけ言えばプラスに働いたと言えるだろう。

*8:私がこの話題に関して (時には過剰に) アウトプットを重視し、未完成にも関わらず PacSec 2010 の発表に応募したのには、この理由もある。精神異常者一人きりに任せてこの話題を忘れさせてしまうより、マトモな公開資料の形で残しておきたかったのだ。

*9:私のノート PC にも見つかってしまった!

*10:Stuxnet が初出ではない! これについては Jeff が解説した。

*11:ここでは技術的概要を思いっきり省く。Jeff のプレゼンではもう少し詳しく解説された。

*12:ただしソフトウェアのための証明書は購入すらしていない。

*13:これは同じ例なのか定かではないが、x86 版においてはサービス操作系の API を使用することにより、任意の非署名ドライバを警告抜きにロードすることができる。x86 版においてドライバや rootkit 開発は、通常その手段を使うからね…。

*14:具体的な名前はメモするのを忘れた。

*15:流石に、日本と世界をつなぐセキュリティカンファレンスで、どっちも知らない (業界で働いてすらいないし、その事情さえ見えていない) 私が入ったらダメでしょ。

*16:もちろん体調がよくなっているわけではないことは分かっている。痩せ我慢では 2 日目はもちそうにない。