7/14(土)出版記念イベント
『BugハンターとめんどうくさいWebセキュリティ開催!詳細はこちら
日本を代表するバグハンターの新井悠さんです↓ 早速いろいろ聞いていきます。
―バグハンターってなんですか?
ソフトウェアの欠陥(脆弱性)を見つけることに楽しみや自己実現を見いだす人のことです。ただ近年は、そうした活動に対して報奨金を与える会社が増えています。
―ハッカーとは違うのでしょうか?
同じだと思います。ハッカーと呼ばれる人はたくさんいますが、そのうちの、脆弱性を見つけることに長けた人たちのことをいいます。
―バグハンターは、匿名ですか?実名ですか?
大半は実名ですが、恥ずかしがり屋もいます。
―バグハンターが通報してから、脆弱性が修正されるまでのプロセスを簡単に教えてください。
一般に、通知を受けたソフトウェア会社は、その脆弱性をまず確認して、間違いなくそれが脆弱性であるとバグハンターに伝えます。そして、修正のおよその目安をバグハンターに示しながら、修正作業を行うのが一般的です。
ソフトウェア会社側で修正作業が終わり、修正プログラムが公開されると、バグハンター側で脆弱性の詳細(アドバイザリと呼ばれます)を公開します。そのように詳細を示すことで、脆弱性について広く注意喚起します。
ただ、例外的にこのような一般的な手順が行われず、マルウェアなどによる悪用によって初めて脆弱性がわかるケースもあります。それがゼロデイ(0-day)と呼ばれるものです。
―バグっていうのは「よし、探すぞ!」と思って探さないと見つからないものなんですか?
大半はそうです。そして、最初はみんな探し方を知りません。私の場合は、会社に入って最初の上司がバグハンターだったので、そのやり方を盗みながら自分のやり方を見つけていったという、ある意味職人みたいなことをやっていましたね。ただそういう環境は本当に希有なので、『Bugハンター日記』にあるような、やり方を学習するというのは一般に開かれた道なのだと思います。
バグハンターはボランティア(無償)でバグハントをしているんですか?
無償でします。IPA への届け出は、みんなボランティアですね。
―無償にも関わらず、なぜ、バグハンターはバグをハントするのでしょうか。
そこにバグがあるから、でしょうか。師匠のバグハンターに言わせると「クールだから」ってことになりますね。
これは『Bugハンター日記』の執筆者も同じことを言っています。自分がハッカーだっていうことを証明するための手段として、バグハントできるっていうのは尊敬されることなんですね。
―なるほど。ただ、インターネットの黎明期に比べ、現在はそういった志というか、「クールさ」をモチベーションにしたバグハンターのような人は減っているのではないでしょうか。
減ってはいないと思います。ただ、いまは脆弱性に金銭的な価値が出ているために、プロと化している実態もあると思います。
―新井さんもバグハンターなんですよね?
そうですね。一時期、私の会社における評価基軸が「有名な某ソフトウェア会社のバグを見つけること」でしたからね。
というのも会社の中で「バグハンター求む!」みたいなメールを偉い人が社員全員宛に送ってたことがあって。正確には「求むExploit!」っていうんですけども。
で、やってやろうじゃないのって思って、過去に発見されたバグがどんな傾向で発見されたかを勝手に調べてたわけです。そうすると、漠然とですが、こんな感じで見つけられるでしょ、という筋道がわかってきて。最初にバグを報告したのはMicrosoftの製品でした。
すると「来年研究所作るから、おまえそこに来て、ミッションはバグ探しな!」って言われて(笑)、2007年に一旦研究所を離れるまでの間、有名な某ソフトウェア会社のバグを年間3~4件見つけていました。
―バグハンターからの通報を受ける側である、セキュリティレスポンスチームとの関係はどんなものでしょうか。
過去には大変苦労した経験がありますが、いまは淡々とやりとりする感じですね。それだけ情報セキュリティが一般化したんだな、マジョリティになったんだなという実感があります。
―バグハンター同士の交流ってあるんですか?
あります。わたしが最初にお会いしたのはEiji James Yoshidaという、おちゃめなお兄ちゃんでしたね(笑)。
上司のバグハンターが行けなくなった飲み会に代打で、恵比寿のビアガーデンに行ったのが出会いです。業界の飲み会に初参加でガクガクブルブルの私に、陽気な感じで話しかけてくださって。
―上司のバグハンター…
ただ最近はそういう交流の仕方も減ってる気もしますね。その代わりCTFの大会みたいなところに集まって、そこでコミュニティが生まれてるっていう新たな展開もありますから、おもしろいです。
―このたび、新井さんが監訳を務めた『Bugハンター日記』について、どんな本か簡単に説明をお願いします。
一般にその手法が伝えられることのなかった、「脆弱性の発見」ということのみに焦点をあてた本です。本書で解説するやりかたは「ソースコードを読んで脆弱性を発見する」「リバースエンジニアリングを行って脆弱性を発見する」「ファジングを行って脆弱性を発見する」という、やり方としては非常にメジャーですが、実際にやってみるとなると、その委細がわかっていないとできない手法をつまびらかにしています。
技術的な背景や、あるいは学びながら読む、なんてことを要するでしょうが、そういう観点では最近なかなかなかった、硬派な本だと思います。
―どんな人に読んでもらいたいですか?
そりゃもうハッカーになりたい人(笑)
あとどうしても、ソフトウェアのことってなると最近はLL言語とか、上のレイヤーに注目が集まっているので、そっちを目指したくなるでしょうが、そうじゃないところで自分の強みを獲得したい人ですかね。
―では最後に、この世からバグってなくならないのでしょうか。
なくならないでしょうね。だから、それを見つけられる技能を持った人には常に需要があると思いますよ。
―なるほど。ありがとうございました!
Tobias Klein (著), 新井 悠 (監修), 長尾 高弘 (翻訳)
価格:¥2,940
7つのBugを通してあなたのハック経験値を数段上げる!
「脆弱性の元となるBugの発見はいかにしてなされるのか」
――本書はその問いに正面から答えた書籍です。本書を読めば、Bugハンターたちが脆弱性を発見しベンダーに報告するまでの一連の行動を一望できます。すなわち、脆弱性を有すると思しき箇所の発見と、それをテストするための検証用コードの作成、そして報告。熟練したハッカーならではの、これらの行動を、実際に著者が発見したBugをベースに詳細に解き明かします。全ハッカー予備軍必読の1冊。