文:斉藤 健一(日本ハッカー協会 監事)
ハッカーへのインタビューを通じて彼らの仕事の流儀を探る、シリーズ「ハッカーと仕事」の第2回。今回登場いただくのは、山本健太さん(28)。東京電機大学情報通信工学科修士課程修了後、2018年に三井物産セキュアディレクション(MBSD)に新卒で入社。現在はWeb診断の実務に就いている。同社広報部に取材協力を依頼し、紹介いただいた実力派若手社員だ(本人の希望により顔写真の掲載は差し控えた)。
●セキュリティとの出会いは大学の研究室
情報セキュリティ業界で活躍するエンジニアというと、幼い頃からPC漬けの日々を過ごしてきたのだろうと思いがちだが、山本さんの場合はそうではなかった。PCに初めて触れたのは小学3・4年生の時。インターネットの常時接続環境が普及し始めたころで、マシンのOSはWindows 98だった。当時は100円ショップでPCゲームソフトが販売されており、それらで遊んでいたという。その後、ゲームをプレイするだけでは飽き足らず、作ることにも関心を持ちはじめたといい、中高生時代には運動部に所属する一方で、ゲームの素材となるグラフィックや音楽を制作することが趣味となった。
大学は理系の学部に進学する。そこに明確な理由はなく「就職の時に理系の方が有利かもしれない」という漠然としたものだったそうだ。そんな山本さんに転機が来たのは学部3年生のとき。暗号や情報セキュリティの研究室に入ったことだった。各学生の研究テーマは自らが見つけることとなっていた。そこで、山本さんは、学部生時代にCMS(コンテンツ管理システム)の脆弱性を調査し、大学院生となってからは、メモリのデータ配線から放射される電磁波を測定・解析することでデータを抽出する「サイドチャネル攻撃」を研究していた。
山本さんが好きなのは、Webのセキュリティだ。「調査などで何かを入力すると目に見える形で結果が返ってくるのがゲーム感覚で楽しい」のだと言う。それならばと、CTFの参加経験を聞いてみたところ、何度かあると答えてくれたものの、あまり得意ではないという。「もちろん解けたときの面白さはあるが、ゲームのために作り込まれた作為的な脆弱性よりも現実のWebサイトにある脆弱性を探す方が性に合っている」というのがその理由だ。
●好きなことを職業にするということ
就職では「やっていて楽しいことを仕事にしたい」と、脆弱性診断の職を志望してMBSDに入社し、志望の部署に配属された。Web診断チームは総勢で二十数名。診断の対象はWebアプリケーションやスマートフォンのAPIなどだ。対象システムはリリース前のものであったり、すでに運用されているサービスの検証環境であったり、バックエンドで動くサーバーであったりと多岐にわたる。
学生時代からWebのセキュリティ調査を実践してきた山本さんだったが、入社後、仕事として脆弱性診断を行うことの難しさを実感する。「個人の活動ならば、自分の着眼点で調査すればよいが、仕事の場合は網羅的に行わなくてはならず、すべての検査項目に対して知識やスキルを身に付けていかなくてはならない。この基礎の部分が足りていないと気づかされた」というのだ。もちろん、基礎固めを終えた後も自分のスキルを磨き続けなくてはならない。これは新人・ベテランを問わず同じことだ。それ故、職場は自然と切磋琢磨できる環境になっているという。
チーム内には気軽にコミュニケーションできる雰囲気があり、例えば診断フレームワークの使い方に疑問があった場合でも、誰が詳しいかはわかっているので気軽に質問できるのだという。また、チームのスケジュールにはLT(ライトニング・トーク)の時間が定期的に設定されており、チームメンバーが診断で発見した新たなパターンや、自ら開発した診断ツールの紹介など、情報共有が活発に行われている。山本さん自身、新卒入社で他とは比較できないとしながらも「恵まれた職場環境にいることを実感する」と話してくれた。
●スキルを磨く上で大切なのは「手を動かすこと」
どのようにしてスキルを磨けばよいだろう。山本さんは「もっとも大切なのは手を動かすこと」だと答える。「自分自身はプログラミングの経験を経ずにこの業界に入った。その分、開発者がどのように考えているのか、想像が及ばない部分もある。だからこそ手を動かし、さまざまなシステムを診断することで経験を重ね、想像力を養っている」のだ。
「実際のサイトを再現するようなモックのシステムを作り、さまざまな入力とそれに応じた出力を調べて試行錯誤を続ける中で、新たな攻撃のヒントが見つかることもある」という。そして、こうした積み重ねが診断での発想力につながると山本さんは話す。診断では時に大きな脆弱性を発見することもある。「例えばコマンドインジェクションが成功したら、それを利用してどこまで奥深くまで攻撃できるか想像するのが仕事の醍醐味」だという。むろん業務ということで深追いできる範囲にも限界がある。「仕事ではクライアントがいて、その背後にはシステムの開発者や保守・管理する人たちがいる。彼らがシステムをよりセキュアに運用したり、改修したりできるよう安全な診断や報告を心がけている」と山本さんは話す。
情報セキュリティにおいて攻撃手段と防御手段は表裏一体だ。攻撃側が開発者の思考を見抜くことで自らの視座を高めているのなら、防御側も同様に視座を高めなくてはならないだろう。「攻撃者の視点から考える」、これはセキュリティ業界でよく聞くフレーズだが、今回のインタビューでその意味について改めて考えさせられることとなった。