こんにちは!ユービーセキュア広報担当の別宮スミレです。
国内市場シェアNo.1※1のWebアプリケーション脆弱性検査ツール「Vex」の新バージョン(v9.0)リリースに伴い、ソフトウェアソリューション部のVex開発チームに突撃インタビューしました。開発の舞台裏やリリースへの想いなど、大いに語っていただきました!
(本インタビューはリリース前に行いました。)
ソフトウェアソリューション部 Vex開発 責任者 長田 啓史氏
2014年キャリア入社。Vex開発の責任者。製品のディレクションや開発など、製品に関わることなら何でもやってます。プライベートではうさぎ様を飼っており、日夜、うさぎ様のために働いています。リモートワークになって、新しい自作キーボードの開発に着手しました。
ソフトウェアソリューション部 Vex開発チーム 八幡 美希氏
2015年キャリア入社。入社1年・2年目の若手をサポートをしながらチームを率いる、Vex新バージョン開発プロジェクトのリーダー。趣味はCTFやHardeningなどセキュリティイベントへの参加。最近運動不足が気になり、散歩や縄跳びを始めました!
ソフトウェアソリューション部 Vex開発チーム アレクサンドル メルシエ氏
2019年キャリア入社。Vexの新バージョン開発メンバ。高校時代に日本にホームステイしてから、こけしの可愛さにはまり、趣味の収集を開始(少なくとも年に1回はこけしを求めて東北へ。こけしのお店でNHKに取材されたことも!)。Vexとこけしと赤ワインを愛する日々。リモートワークで筋トレを始め、腹筋がバキバキに割れてきました。
ソフトウェアソリューション部 Vex開発チーム 佐久間 彩花氏
2019年新卒入社。Vexの新バージョン開発メンバ。食べるの大好き!リモートワークになって、昼食は出前を頼み、夕食は自炊する日々を過ごしています。目標はおかず2品とお味噌汁!
オンラインインタビュー時の様子
「誰でも簡単にスキャンが始められる」~EAsy STart scannER(EASTER)~
別宮:本日はお時間いただき、ありがとうございます。早速ですが、簡単に部とメンバーの紹介をお願いします。
長田:ソフトウェアソリューション部は、ユービーセキュアの主力製品であるVexの開発とサポートを担っています。私はVex開発の責任者をしています。今回、代表して集まってもらったメンバーはVexの新バージョン開発を担当しています。
別宮:12月9日にリリースされる新バージョンですが、ズバリ一言で表現すると?
長田:ズバリ、「より難しいことを、より簡単に」です。これからVexを使って検査を始められる方はもちろん、Vexを使いこないしているプロにも使いやすいバージョンになっています。
別宮:今回の新バージョン開発にはどのような背景や目標があるのでしょうか。
八幡:Vexは開発者から診断ベンダーまでが利用する「すごいツール」という評価がある反面、「玄人向けのツール」「使い方が難しい」と言った声もいただいていました。その原因を分析したところ、機能の紹介やトライアルの時点で、難しいツール」という印象を与えてしまったり、実際に購入しても使いこなせない、といった傾向があることも分かりました。そういった傾向を打破すべく、今回のリリースでは、新しく使い始める方が挫折するポイントを減らすことで、Vexを使うハードルを下げることに挑戦しました。私たちは今回の開発プロジェクトを「EASTER」と名付けました。「EASTER」は「EAsy STart scannER 」の略で、「誰でも簡単にスキャン(検査)が始められる」ことを意味しています。
新機能、「シナリオマップ」とは?
別宮:なるほど!「EASTER」にはそういった意味が込められていたんですね。「誰でも簡単にスキャンが始められる」ということですが、どのような機能ですか?
長田:VexでWebアプリの脆弱性検査を実施するには、「検査シナリオの作成」「検査の設定」「検査の実施」の3つのステップがあります。
VexでWebアプリケーション脆弱性検査を実施する際の3つのステップ
精度の高い検査を実施するためには、「検査シナリオの作成」が特に重要です。「検査シナリオ」は、アプリケーションの仕様として正しい画面遷移を再現するように作成する必要があります。Vexではすでに検査シナリオの作成機能として「自動巡回」「画面遷移図」「Handler」の3種類ありますが、今回新たに「シナリオマップ」という、高度なシナリオ作成を簡単に設定できる機能を追加しました。高度な検査シナリオを簡単に作成できることで、「誰でも簡単に」検査を実施できるようになっています。
Vexの検査シナリオ作成機能の種類
別宮:わぁ…かゆいところに手が届く、とても便利機能のようにお見受けしました!具体的には、これまでのシナリオ作成機能と「シナリオマップ」にはどのような違いがありますか?
佐久間:例えば、「Handler」では画面遷移を再現するための何種類もの設定を使い分ける必要がありますが、「シナリオマップ」では一つの設定で完結できるようになります。
八幡:それと、「Handler」で画面遷移を再現する際に頭の中でイメージした検査シナリオを設定値として書き写す必要がありました。「シナリオマップ」では検査シナリオを視覚的に表現することで全体像を把握しながら、より直感的に設定できるようになりました。「画面遷移図」と比較しても、「シナリオマップ」では設定項目と手順を削減したので、設定が大幅に楽になったと思います。
⇧ 同じ検査対象に対して「画面遷移図」機能を使用して検査シナリオを設定した場合の操作画面
⇧ 同じ検査対象に対して「シナリオマップ」機能を使用して検査シナリオを設定した場合の操作画面
別宮:だいぶ手軽に設定できるようになったんですね。そんな「シナリオマップ」ですが、どのような方に使って欲しいですか?
長田:そうですね、今回のプロジェクトのコンセプトが「EAsy STart scannER」ですので、まずはこれからVexを使った脆弱性検査を始める方に使って欲しいです。従来のバージョンでも簡単に検査シナリオを作成できるようにと「画面遷移図」がありました。しかし、画面遷移図ではうまくいかなかったときに「Handler」を使う必要がありました。今回新たに開発した「シナリオマップ」は、画面遷移図の操作性と、Handlerの機能性を兼ね備えています。そのため、シナリオマップ内ですべて完結させることができ、初心者の方でも取り組みやすいようになっています。
また、使い込んでいる方は、「画面遷移図」よりも、細かく、複雑な設定が可能な「Handler」を好んで使っています。「シナリオマップ」では、従来のHandlerの機能では実現できなかった、より高度で複雑な検査設定を行えるようになっています。日ごろからVexを使い込んでいる方にも、どれだけ便利になったか、ぜひ体感していただきたいです。
検査シナリオ作成機能の比較表
別宮:そうなんですね。どちらかというと、これからVexを使った診断を始める人向けの機能強化という印象があったのですが、使いこなしている方にも有用ということですね!
八幡:はい、そういう意味だと、昔使っていて使うのをやめてしまった人にも是非使ってみて欲しいですね。
長田:はい、是非試しに使ってみて、フィードバックが欲しいです。
たくさんのアイディア、一つのカタチにしていく難しさ
別宮:いまからリリースが楽しみですね!今回のリリースにあたって、苦労された点などあればお聞かせください。
アレックス:このチームは新しいものを開発しているだけあって、たくさんのアイディアを出し合うことが多いです。とても刺激的で楽しい反面、優先度をつけて取捨選択するのがとても難しかった。取るのも捨てるのも本当に難しい!
私自身、いろいろ変えていきたい想いが強いので、これからもどんどん積極的にアイディアを出していきたいです。最近は、デザインの観点で画面の情報量を減らしてみてはどうかという提案をしました。(今回の新バージョンでは採用されなかったですが、、、涙)
八幡:今回、いつものリリースと進め方を変えて、多くの関係者の声を吸い上げるように工夫しました。Vexユーザ様からの声はもとより、社内のプロダクトエキスパートチーム、プリセールス、Vexを使って診断サービスを提供している部隊からの意見など、今回のリリースに反映しています。また、モックアップや、機能がある程度揃った段階での使用感のフィードバックももらいながら進めました。多くの関係者を巻き込んで、たくさんの意見やコメントを聞けたのはとても良かったのですが、それぞれの立場に応じて、観点や理想の姿が違うため、それを製品の仕様に落とし込んでいくのにとても苦戦しました。
別宮:関係者が増えれば増えるほど、いろいろな意見が聞ける一方、悩みは尽きないですよね、、、どうやって乗り越えていったんですか?
八幡:はい、アレックスさんが言っていたように、優先順位をつけて進めていくのがとても大変でした。全員の要望を取り込んだとしても、スーパー最強ツール(笑)ができるわけでもないので、最終的に迷った時は「これは本当にVexユーザーが求めている姿なのか」、「仕様として納得できるか」、「Vexの進化の方向性として正しいものか」などの観点で決めていました。
別宮:チーム内で決める番長はいたんですか?
八幡:大体、私が決めていました(笑)
長田:はい、決める番長は八幡さん。か、長田です(笑)
八幡:見えている範囲は長田さんと私でも違うし、チームや役割によって異なるので、今回のプロジェクトを通じていろいろな意見が交換できてとても勉強になりました。
別宮:佐久間さんは、今回プロジェクトに初参加されたと伺ったのですが、先輩のここがすごい!や勉強になった!ポイントなどありますか?
佐久間:八幡さんがいろいろな部署とやりとりしながら、まとめているのを見て、大変そうだなと思いつつ、すごいなと思いました。私も開発者として、芯のある考えをもちながらも、いろんな意見を聞くことで足りない視点を補うなど、バランスを心掛けたいと思います。
Vex開発にあたってのこだわり
別宮:Vexを開発するうえで、ゆずれないこだわりはありますか?
八幡:「ユーザーにVexを使って楽をしてほしい」「いい思いをしてほしい」と思っているところはずっと変わらないです。今回はクリック数を指標にして、GUIの改善に注力しました!お知らせで記載している作業時間15%削減は、地道にクリック数をカウントして計測しています。
佐久間:まだまだ勉強中なのですが、他の検査ツールもたくさんある中で、「Vexじゃなきゃダメだ!」と思ってもらいたいです。Vexのいいところを伸ばしていける開発者になりたいです。
アレックス:ユーザーのためにならないと、ただの自己満足になってしまう。だからユーザー第一の開発を心掛けていきたいです。プリセールスや営業と協力して魅力を伝えていくことで、既存ユーザーだけでなく新規ユーザーもファンにできるよう頑張ります!
長田:そうですね、どんどんVexの魅力を高めて、ファンを増やしていきたいです。ファンになっていただけるよう、よりよい機能を追加していきたい。それには製品の「構造」が大事だと考えています。柔軟に製品を変更しやすく、改善しやすくすることが重要で、そこが私のこだわりポイントだったりもします。
開発者が思う、Vexの魅力とは?
別宮:いろいろな検査ツールがある中で、他にはない「Vex」の魅力は何だと思いますか?
八幡:他のツールでは検査できていなくても、できている前提で検査が進んで行ってしまうことが多い印象があります。一方、失敗したら失敗したことをちゃんと通知する「正直」なところがVexの魅力の一つだと思います。(笑)
長田:正直な分、設定が上手くできていないことをすぐ気付けます。他の製品と比べて、こまやかな検査設定ができる点も負けないと思います。
別宮:こまやかな気遣いのできる、日本人好みなツールですね。アレックスさんはどう思われますか?
アレックス:Vexは海外に多い制限リスト方式ではなく、許可リスト方式で、許可されていないと検査ログがとれない仕様になっています。考え方が日本の法律に基づいているし、日本っぽいなと思います。もちろんいい意味で、です!
八幡:そういう意味では、他のツールと比較すると、診断員を守る機能がしっかりしていると思います。失敗を正直に教えてくれるところといい、こっそり診断員を守ってくれるところが…、とても「健気」だなぁと思います。
別宮:正直で気遣いができて健気。なんだかとてもかわいらしく思えてきました(笑)そんなかわいいVexですが、一つ好きな機能、オススメ機能をあげるとするならば何ですか?
佐久間:すごく小さい機能なんですが、今回のバージョンに新しく追加された機能で、社内から好評だった機能があります。いままでだと、Vexの検査対象入れるところで、URLを分割して入力する必要があったんですが、自動で分割してくれちゃうんです。私が思っていた以上に、テストで使ってくれた診断部門から反響があってびっくりしました。細かいところですが、こだわってよかったなと思っています。是非使ってみてほしいです。
新しい「Vex」のターゲット情報設定画面イメージ
アレックス:あまり今回の機能追加と関係ない、且つオフィシャルじゃないのですが(笑)、Vexは一般的なキーボートショートカット(例:Tab+Shiftなど)を使って操作ができます。作業効率アップができるので是非使ってみてほしいです。ゆくゆくはオフィシャル機能にしたいなぁ。
八幡:私は、ここ2年くらいで追加した機能全般気に入っています。今回リリースした「シナリオマップ」始め、「正規表現チェッカー、ジェネレーター」や「API仕様インポート」など、使うとVexが本当に使いやすくなると思うので、是非試してみてほしいです。
長田:Vex愛を感じますね。私も便乗して、、、Vex全般おススメです!(笑)というのはありながらも、今回のバージョンで追加した、「シナリオマップ」の検査設定機能は長年実現したい機能だったので、ようやく想いが叶ったと思っています。
進化し続けるVex、開発メンバの想い
別宮:今後のVex開発への想いや展望を教えてください。
佐久間:「Vexじゃなきゃダメだ」と思っていただける機能を増やしていきたいです。最近、新バージョンの説明で営業同行する機会もあり、利用者の生の声を聞くことも増えてきました。これまで以上にユーザーと一緒に、より良いものを作っていきたいです。
アレックス:Web技術も常に進化しているので、アンテナを高く張って、いち早くVexに新技術を取り込めるようにしていきたい。また、WebアプリケーションセキュリティやDevSecOpsを取り巻くワンストップソリューションの提供を実現したいです。
八幡:「使いやすさ」に重点においた開発が続いているので、新しい検査の方法や新しいプロトコルに対応するなど、速さや効率を追求する開発もしたいです。私も、新バージョンを紹介した際に「早く使いたい!」といった嬉しいコメントや、利用シーンを想定した具体的な質問をいただいて、開発を推進する大きな活力になりました。これからも皆さんの期待に応えられるよう頑張りたいと思います。
長田:「使いやすさ」「性能」「診断の技術」など、やるべきことはたくさんありますが、Vexならではの価値を高めて、さらにVexファンを増やしていきたいです! また、DevSecOpsを支援するソリューションとして、ユーザー様が使用している環境において一番使いやすいツールにしていきたいです。
別宮:すごい楽しみです。また新しいバージョンやソリューションをリリースする際には、突撃インタビューさせてください!本日はリリース前のお忙しいところ、お時間いただきありがとうございました。
■注釈 ※1 国内市場シェアNo.1:
- 富士キメラ総研 「2019 ネットワークセキュリティビジネス調査総覧」(セキュリティ検査ツール/Web アプリケーション型より2015年度~2018年度実績)に基づく。
- ITR 「ITR Market View:サイバーセキュリティ対策市場2020」Web アプリケーション脆弱性管理市場ベンダー別売上金額シェア(2019年度予測)に基づく。