ここがポイント!
・最も重要な点は、API単独での検査が可能なツールである
・内製化により、診断コストを削減し、高頻度で自由に診断を実施できるようになる
・マニュアル類やWebサイトのQ&A集が充実しており、細かな点まで丁寧にカバーされている
Webアプリ以上に高い品質が求められるスマホアプリ
今やスマホは誰にとっても身近な存在となり、ゲームや動画、SNSを楽しむのはもちろん、日常の買い物や情報収集に欠かせない存在です。そのような中でアイリッジは、主にエンドユーザーとリアルの接点を持つ企業向けに、アプリの開発やマーケティング、運用までを支援しています。
スマホアプリにはWebアプリケーション以上に品質が求められます。「スマホアプリはWebアプリと異なり、何か問題があってもすぐには入れ替えられません。プラットフォーマーに申請し、かつユーザーがアップデートしてくれなければならないため、Web以上に事故が許されません。事故が起きた時の影響も大きいため、スピードよりも品質を重視しています」
特にSDKの場合、APIの呼び出しがアプリの中に組み込まれているため、エンドユーザーにアイリッジの姿は見えません。もしプッシュ通知の誤送信といった不具合があれば顧客企業が直接批判を受けてしまい、場合によっては開発を委託しているベンダーとの調整も発生します。そうした事態を避けるためにも品質最優先で開発に取り組んでおり、十分な期間をかけて複数の機種、複数のバージョンのOSで回帰テストも含めたQAを実施し、プロダクト品質の向上に努めてきました。
「どちらかが依頼するのではなく、開発と品質管理が横並びで健全に牽制しあって、より良いプロダクトを作るという共通のゴールを目指しています」
セキュリティも同様です。「万が一脆弱性を突いて侵入され、関係ない人におかしなメッセージが送られるような事態がないよう、固く守るように心がけています」。加えて最近はセキュリティ意識の高まりを受け、金融系の顧客を中心に、セキュリティに対する確認項目に対して回答が必要な場面が増えてきました。
そこに必ずといっていいほど含まれる項目の一つが「脆弱性診断を定期的に実施しているか」です。
アイリッジはそれまで外部のセキュリティ企業に定期的に依頼し、脆弱性診断を実施していましたが、いくつか難点がありました。一つは診断対象の多さです。「診断サービスはAPI数と画面数に基づいて金額が変動するケースが多いです。我々はFANSHIPに加えAPPBOXもリリースし、SDKという形態でも提供しているため、APIの数が非常に多く、コスト的に難しいと感じていました」
タイミングに制約が生じることも課題でした。「診断期間が決まると、その間は環境をロックしなければならず、ちょっと急ぎで手を加えたくてもできない、といった事態が生じます」。その調整コストも無視できませんでした。(加藤氏)
API単独の検査が可能なVexを採用、充実したマニュアル類も手助けに
セキュリティ体制をしっかり整備し、より高い頻度で診断を実施したいという思いがありましたが、外部に依頼するとコストをはじめさまざまな課題が生じます。そこで、診断ツールを導入し、内部で自由に診断をかけられる方法を模索した結果、選択したのがVexでした。
コストだけ見れば他にも選択肢はありましたが、最大の決め手は、フロントエンド、つまり画面の付いている部分だけでなく、API単独の検査も行えることでした。「APIが検査できなければ、アプリ全体を診断できているとは言えません。Vexは、APIを直接叩いて診断するという我々がやりたかったことを全て網羅できる上に、コスト面でも、外部に依頼する場合に比べ大きく抑えることができました」
早速行ったトライアルでも、期待通りにAPIの診断が実施できることを確認し、セキュリティのスペシャリストではない品質管理担当者でも運用が可能になるという手応えを得て、導入を決定しました。
アイリッジは2023年9月からVexを導入し、ファーストステップとして、FANSHIPとAPPBOXに対する診断を開始しました。ユービーセキュアが用意していたマニュアル類やWebサイトに用意されているQ&A集を参照し、必要に応じてカスタマーサポートに問い合わせることで、スピーディに導入できました。
「海外のツールのリファレンスは翻訳が必要な上に、『その先が知りたいのに』と、かゆいところに手が届かない説明しかないことも多々あります。日本で作られたツールの強みかもしれませんが、Vexの資料では『そこが知りたかった』という事柄がしっかり記載されており、私に限らず導入担当者にとって有益だと思います」
診断を通していくつかの脆弱性が発見されましたが、レポートを元に品質管理サイドと開発サイドで「本当に修正が必要なものかどうか」を精査し、擦り合わせた上で、いくつかの脆弱性を修正し、リリースするところまで来ています。
「まず一度診断を回し、出てきた脆弱性をつぶすことに取り組んだことで、Vexの操作に慣れ、『うちのアプリではこういう場合にこんな過剰検知をするのだな』というノウハウも溜まりました。今後はさらに誤検知を避け、脆弱性の削減に貢献できると思っています」(山崎氏)
自社に最も適したVexの運用方法を模索し、他サービスへの適用も検討
一周目の診断を終えた時点で、外部に依頼する場合に比べ、コストはおよそ60%削減できました。「費用対効果も含め、思っていたことを得ることができました」今後もVexによる診断を継続し、脆弱性管理をした状態でリリースするという「あるべき姿」に近づけていきたいと考えています。どのくらいの頻度で実施するか、あるいはリリースサイクルに診断を組み込むのかなど、アイリッジに最も適した運用方法をQCDのバランスを見ながら模索していく方針です。
また、アイリッジは他にもいくつかのサービスを提供しています。「同じように脆弱性に不安を抱えつつ、コストを気にしているプロジェクトもあります。品質グループが主体となって、Vexというアプローチがあることを共有し、横の幅を広げていけたらと考えています」
さらに、受託開発事業でも脆弱性診断に対するニーズが高まっていることを受け、Vexを用いた診断をオプションとして提供することも検討していきます。
「外部に診断を委託していたときは具体的な検証内容が見えにくく、品質管理の側面から見てもテストのあるべき姿として疑問を持つことがありました。Vexでは、どのように診断していて、その結果がどうなっているかがホワイトボックス化され、こうした状態でセキュリティテストを実施できるところに大きな意味を感じています」
可能であれば、アプリの脆弱性診断で悩みを抱えるエンジニアと知見を共有しつつ、Vexが「本来あるべきセキュリティテストのあり方」を模索していくハブになることで、アイリッジはもちろん、アプリ開発業界全体にとって有益なものになっていくと期待しています。(山崎氏)