【パートナーインタビュー】「検証を重ねて攻撃方法を探っていく」ペンテスターが語る、ペネトレーションテストの面白さ
こんにちは!人事の小高です。
現場メンバーにフォーカスしたパートナーインタビュー企画。
これまではWebアプリケーション診断士やWebペネトレーションテストなど、Web領域に携わるメンバーにインタビューをしてきました。
今回インタビューする川田さんは、他社での脆弱性診断のアルバイト経験を経て、2020年1月にGMOサイバーセキュリティ byイエラエ株式会社(以下、GMOイエラエ)のペネトレーションテスト課に入社されています。脆弱性診断を経験したからこそわかるペネトレーションテストの特徴や、日々の業務の進め方を伺いました。
川田柾浩(オフェンシブセキュリティ部ペネトレーションテスト課)
2020年にGMOイエラエへ入社し、ペンテスターとして活躍中。著書に「ペネトレーションテストの教科書 (ハッカーの技術書)」がある。OSCP、OSEP、OSED、OSMR、CRTL、CRTO等の資格を持つ。
優秀なエンジニアの隣で技術を磨いた
―まず簡単に自己紹介をお願いします。
川田です。2020年の1月に入社し、ペネトレーションテスト課に配属されました。これまで一貫してペネトレーションテストに従事しています。
―川田さんが現在取り組まれている業務について教えてください。
現在は、社内環境を対象にしたペネトレーションテストやレッドチームとしての業務を行っています。攻撃者を再現しながら、クライアントの社内環境に脆弱性や運用上の不備がないかを調査するのが仕事です。なかでも、macOSで動かす攻撃ツールやマルウェア開発などを得意としています。
―ペンテスター(ペネトレーションテストを行う人)になられたのは、どのような経緯だったのでしょうか。
まずサイバーセキュリティの道を歩み始めたのは、大学2年生の頃に映画などの影響で興味を持ったことがきっかけです。セキュリティのなかでも、攻撃者が特定の企業を攻撃するときに使う手法や、いかにして社内に侵入して情報を取り出すのかに興味がありました。
セキュリティに興味を持ってからは本を使って勉強を行っていましたが、それだけでは自分のできることが広がっている実感があまり得られませんでした。そこで、会社に入って仕事としてやった方が身につくのではと考えるようになっていったんです。そして2年生の頃から大学を中退することを考えていたこともあって、3年生の4月から企業にアルバイトとして入って脆弱性診断の仕事を始めました。
―ペンテスターとしてではなく、脆弱性診断からスタートしたんですね。
そうなんです。正直に言うと、仕事を始めた時は脆弱性診断とペネトレーションテストの違いも明確にはわかっていませんでした。ただ、知識を蓄えた今考えてみると、セキュリティエンジニアの入り口としてはペネトレーションテストはハードルが高いなと感じるので、脆弱性診断から入ってよかったと思っています。脆弱性診断であれば体系だった方法があるので、最初にそこから入れたのはよかったなと。そうしてサイバーセキュリティの知見を深めつつ、ペネトレーションテストの道を目指していました。
また、ペネトレーションテストのなかでも、1つの企業に対して一番影響の大きいところで仕事をしていきたかったので、Webペネトレーションテストではなく社内環境に対するペネトレーションテストをやりたいなとも感じていました。
そんな思いを持つなかでGMOイエラエの選考に参加することになったんです。そして面接で代表の牧田さんに「何やりたい?」と聞かれて「ペネトレーションテストです」と伝えたことをきっかけに、現在も所属しているペネトレーションテスト課に配属され、ペンテスターとしてのキャリアをスタートすることとなりました。
―GMOイエラエとの最初の接点は、私が送ったスカウトでしたよね(笑)
そうですね。でも、セキュリティ業界を志した時からGMOイエラエの名前は知っていました。ちょうどWantedly内で興味ある募集ポジションをフォローしていたら小高さんから「カジュアル面談しませんか」とメッセージをいただいて。
私としては「もっとスキルを磨いて数年後に応募しようかな」と思っていたので、驚きとうれしさでいっぱいになったことを覚えています。そしてそのまま面談・面接に進み、内定をいただいて入社し、今に至ります。
―メッセージを送る前から興味を持っていただいていたのはうれしいです。GMOイエラエのどのような点に関心を持っていただきましたか。
まず、技術力が非常に秀でているところです。技術レベルが高いため「最初からGMOイエラエは無理かな」と思っていました。。。また、エンジニアを重宝してくれると業界内でも評判だったので、その点も魅力的に感じていました。いざ選考に参加してからの面接でもエンジニアを大事にしていることが伝わってきて、より一層志望度が高まりました。実際に入社して働いてみても、エンジニアを大事にしてくれていると感じることは多いです。
―入社してからは、どのように業務を覚えていったのでしょう。
最初はネットワークサーバに対する比較的単純なペネトレーションテストに挑戦しました。サーバはアルバイト時代にも触れていた領域だったので、最初はそこから経験を積んでいきつつ、入社後に学んだ知見を活かしながら挑戦する分野を広げていきました。
仕事に慣れてきてからは、自分から要望を出してレッドチームとして大規模な案件にも携われるようになりました。1年目の後半からサブの作業員として希望の案件に関わることになり、少しずつ重要度の高い業務も任せていただけるようになっていったんです。このように少しずつステップアップしながら成長させてもらってきました。
GMOイエラエの場合、レッドチームは一番できるエンジニアがメインで担当しつつ、サブで得意分野がマッチしているメンバーを入れていく方式でチームが構成されます。そのレッドチームの核をなすエンジニアと席を隣にしてもらって、とにかく一緒に作業する時間をもらえたのは特に貴重な体験でした。ここで、レッドチームメンバーとして活躍するための知見を蓄えることができたと考えています。
知らないことを調べながら進めないといけないことが、面白さでもあり大変さでもある。
―現在川田さんが所属している、ペネトレーションテスト課の業務内容を改めてご説明いただけますか。
GMOイエラエのペネトレーションテストを行う部署は、Webアプリケーションを扱う部署とWebアプリケーション以外を行う部署に分かれています。そのため、Webアプリケーションを主な攻撃対象とする場合は基本的にWebペネトレーションテストのチームが担当します。また、Webのチームと一緒に1つの案件を進めるケースもあります。
ペネトレーションテスト課ではメインの対象が社内環境やクライアントの保有資産になります。社内環境を対象とする場合は、お客様の社員用端末がマルウェアに感染したことを前提とするケースが多いです。
脆弱性診断ではここから社内環境の脆弱性を洗い出していきますが、ペネトレーションテストでは、ここから設定したゴールを目指して攻撃を仕掛けていきます。たとえば「顧客情報を奪うこと」をゴールとして、社内の共有フォルダに平文で認証情報が記載されていないか、脆弱性を使って他のアカウントを乗っ取ることができないかなどを調査します。そして実際に高権限の奪取を目指したり、その奪取した権限を使って顧客情報が蓄積されているデータベースに接続を試みたりしつつ、顧客情報の奪取を目指していきます。
なかにはマルウェア感染を前提とせず、社内環境への侵入から行う案件もあります。こうした初期侵入も行う案件の場合は、基本的には3ヶ月ほどかけて案件に取り組みます。初期侵入はもっとも大変な工程でもあるため、ゼロからの初期侵入を行う案件の場合、初期侵入を行わない案件よりも1〜2ヶ月ほど所要期間が伸びます。
初期侵入を行うにせよ行わないにせよ、ペネトレーションテストでは、国内外問わず最新の研究記事を調べつつ、新しい手法を検証して取り入れていくことが求められます。そうしないと、案件のゴールを達成できません。知らないことをその場で調べながら作業を進めていく必要があるんです。それが面白さでもあるし、大変さでもあると感じています。
また、社内環境全体を対象としてテストを行うので、重要な情報にアクセスさせてもらっているのはもちろんのこと、万が一システムが止まってしまうと大きな影響が出てしまいます。そのため調査の作業自体に慎重になることも多いですし、責任のある仕事だとも思いますね。
―案件の規模もさまざまだと聞いていますが、規模によってどのような差異があるのでしょうか。
規模が大きくなればなるほど、制約が少なくなる傾向にあります。さまざまな攻撃手法を試したり、より現実に近いシナリオを組んでテストできたりすることが多いです。もっとも多い中規模の案件は、先ほどもお話したようなマルウェア感染を前提としたもので、特定のシステム上の管理者権限を奪取することを目的とします。大きい案件になってくると、ゼロからその会社に侵入するところからスタートして、環境全体の管理者権限や顧客情報を奪うことをゴールとします。
セキュリティの堅い企業の場合は顧客情報を管理する専用の場所を用意していて、一般的な業務の端末と分けていることもあり、システム上の管理者権限を取れたとしてもそこから顧客情報を奪取するためのハードルが高い場合もあります。
一番大きい案件でも同時稼働するのは2〜3人ですが、得意分野や案件のフェーズに応じて別のメンバーが入っていくので、最終的に5〜6人がアサインされることが多いです。中規模程度の案件であれば、メイン担当とサブ担当の2人体制で進めていくことがほとんどですね。
―具体的にどのように仕事を進めているのでしょうか。
案件を始めるためには、まず前提条件を決めなくてはなりません。外部との接触が多く、かつシステム上の権限はさほど高くない事務社員や営業社員のマルウェア感染を提案することが多いです。基本的な流れとしては、クライアントの予算や前提条件に関する意向を反映させつつ、前提条件とゴールを決めて案件に落とし込んでいきます。
テストを行う際は、サービス停止につながる攻撃以外は基本的には許可していただけますが、お客様によってはテスト対象サーバの制約に関するご要望や検知回避、作業タイムラインに関するご要望をいただくこともあります。
―マルウェア感染を前提とすることが多い理由を教えてください。
初期侵入は攻撃者に無限にチャンスがあるんですよね。ある人にマルウェアを送って感染しなかったとしても別の人に送ればいい。無限にチャレンジできてしまいます。アンチウイルス製品やEDRが導入されていても社員をマルウェアに感染させないという防御だけでは限界があるわけです。そこでマルウェア感染を前提とし、感染したとしても社内の情報を守れる仕組みを作っていこうと考えることが多いんですね。もちろん初期侵入を防ごうというタイプの案件もありますが、こうした背景から擬似マルウェア感染前提の案件が一番多くなっています。
未知への追及、広い知見が求められる
―どのような方がペネトレーションテストに向いていると思われますか。
知らないことを自分でゼロから調べたり検証していくのが好きな人には向いているのではないでしょうか。公開されている情報や社内の情報だけでも簡単な作業はできるが、最後の最後では自分が検証しなくてはならないことも多いです。日々のリサーチを通じて、ネットにない情報も会社のノウハウとして貯めていく必要もあります。なので、未知の領域に対して調査や研究ができる人が向いていると思いますね。
また、私が行っている社内環境に対するペネトレーションテストは扱う分野が広く、何でも屋的な側面があります。実際にオンプレミスのサーバで構築されている環境を対象にすることもあれば、クラウド環境を対象にすることもあります。広い知見が求められる環境と言えると思います。
―いろいろとお話いただきありがとうございました。最後にこれからやりたいことを教えてください。
脆弱性の調査や一般的なクラウドサービスに対する調査手法の経験を活かして、リサーチ領域で何か成果を出したいと考えています。GMOイエラエでは海外のリサーチ記事を参考にしながら作業を進めていくことが多いのですが、今の上長は世界レベルで発表できる調査や研究の成果を出しており、その点を非常に尊敬しています。私もこうした世界に公表されていない調査や研究を通じて、何か成果を出したいと考えて日々業務に取り組んでいます。
GMOイエラエ自体も調査研究に力を入れており、ブログ記事で調査の成果を発表したりしています。ですので個人としてだけでなく会社のなかでも、調査研究の分野でいい成果が出していけるとうれしいですね。
―もっと成果を出していきたいという思い、素敵です!ありがとうございました!
ペンテスターの道を選び、できる人のそばにいることで技術力を高め、更に成果を出していこうとしている姿勢に刺激をうけました!GMOイエラエには、学ぶことの多い仲間と挑戦できる環境があると改めて実感しました。
川田さんのようにもっともっと高みを目指していきたいという方、ぜひGMOイエラエで挑戦しませんか?