セキュリティ診断事例インタビュー
株式会社Leaner Technologiesは、「調達のスタンダードを刷新し続ける」をミッションに掲げ、ソーシングDXクラウド「Leaner見積」、購買プロセスを一元管理する購買プラットフォーム「Leaner購買」の開発・提供を行っています。
今回、Leaner Technologiesは、「Leaner購買」「Leaner見積」の一部機能を対象とした「Webアプリケーション診断」と、「Leaner見積」の一部機能を対象とした「AWS診断」を実施しました。診断実施の背景や感想について、同社エンジニアの黒曜さんにお話を伺いました。
技術基盤チームのメンバーとして、AWS環境の構築やDevOps整備、セキュリティ向上の取り組みなどを行っています。私は元々、Ruby on Railsを使ったAPI構築などのバックエンド領域でキャリアを重ねてきたのですが、前職でAWSの運用に携わった経験から、SRE・インフラ領域についても勉強を進め、専門領域を広げました。
技術基盤チームは、プロダクト横断でインフラやDevOpsなどの支援を行うチームです。一般的なSREチームやインフラチーム、DevOpsチームなどが合わさったような役割を持っています。
弊社では現在「Leaner購買」「Leaner見積」という2つのプロダクトを展開しており、プロダクトごとにプロダクト開発チームが置かれています。技術基盤チームは、プロダクト開発チームに対して横串で支援を行っています。
基本的には各プロダクト開発チーム主導で進めてもらっていますが、必要に応じて技術基盤チームがサポートに入るようにしています。また、会社としてのプロダクトセキュリティの方針については、プロダクト開発チームと連携して決めています。
プロダクトの開発段階では、セキュリティ面の安全性と機能開発の速度を両立できるよう、自動化したセキュリティチェックを可能な限り導入するようにしています。具体的には、Railsアプリケーションの脆弱性を検出するBrakeman gemでコードレベルの脆弱性を開発中に検知する、 Dependabot Alertを利用して脆弱性のある依存パッケージを早期に更新する、などといった取り組みを進めています。
「Leaner見積」は複数のサプライヤーに対する見積もり依頼をブラウザで完結できるソーシングDXクラウドです。仕入れ先選定に関する取引先や社内関係者とのコミュニケーションをデジタル化し、データを蓄積・可視化することで見積業務の効率化と脱属人化をサポートするプロダクトとなっています。
一方、「Leaner購買」は、ECサービスや契約サプライヤーへの注文管理を一元化できる購買プラットフォームです。多数の取引先からの購買プロセスをデジタル化・一元化することで、購買業務のガバナンス強化、効率化、調達価格の適正化をサポートしています。
先ほどお話したとおり、各レイヤーにおいてセキュリティチェックの自動化に取り組んではいるのですが、それだけでは検知できない脆弱性も多いことに課題を感じていました。
また、プロダクトを新規導入いただく際に、プロダクトを対象とした脆弱性診断の実施有無についてお客様からお尋ねいただく機会も増えてきました。
このような背景もあり、今のタイミングで改めてセキュリティ上の懸念がないかチェックすることで、お客様により安心してプロダクトを利用いただける環境を整えたいと考え、手動での脆弱性診断を依頼することにしました。
ツールによる自動的なセキュリティチェックではカバーできないような、高い技術力による手動のセキュリティ診断を実施してくれるかどうかを業者選定のポイントに置いていました。「Leaner見積」「Leaner購買」のいずれも、基本的にRuby on Railsガイドに則った形で開発を進めており、こちらで想定しうるセキュリティ上の懸念はツールによる自動診断でも潰すようにしています。
一方、ツールで自動診断を行う場合、プロダクトの仕様に起因する脆弱性を発見することは非常に困難です。また、ツールで脆弱性を発見した後も、自分が知っている脆弱性については対応することができるのですが、知らない脆弱性については対応が難しい場合があります。そのため、セキュリティの専門家の立場から、自動診断では対応が難しい、高度な技術力が求められるような診断を実施してもらえることに期待していました。
診断実施までの調整コストがかからないことも、重視していたポイントでした。以前の職場で別のベンダーさんにセキュリティ診断を実施した際は、Excelシートに必要事項を記入してやり取りするというやり方でした。それをメールでやり取りさせていただいていたので、先方からのメールに添付されたパスワード付きzipファイルを解凍して、記入して、また戻して……といった作業が発生していて、煩雑に感じていました。この時の経験から、「調整コストの高さ」は不安要素になっていました。
先程お話した2つの観点から様々な脆弱性診断サービスを比較検討していたところ、Flatt Securityさんに辿り着きました。
他のセキュリティベンダーさんと比べて設立年数が若めで、多数の実績を持つセキュリティエンジニアの方が在籍されているのを知り、興味を持ちました。加えて、技術ブログやCVE等の実績を拝見し、スキルセットがモダンそうな印象も受けました。
他社様とも比較した結果、高い技術力が決め手になりました。Flatt Securityにはハッキングコンテストなどで実績を上げているセキュリティエンジニアの方が多数在籍されています。そのため、自動ツールや社内メンバーのチェックでは見つけられなかったセキュリティの問題を見つけられそうだと感じました。
また、診断の実施事例や技術ブログ等を拝見し、SPAを対象としたセキュリティ診断に強そうな印象を持ったことも決め手の1つになりました。SPAとサーバーサイドが絡んだ認証・認可を重点的にチェックしたいと考えていたので、SPA診断という診断メニューも提供しているFlatt Securityさんであれば、しっかり見てもらえるのではないかと期待感を持ちました。
正式にご依頼させていただいた後の話になりますが、弊社が協賛したRubyKaigi 2023に Flatt Securityさんも協賛されており色々お話する機会がありました。実際にお会いしてお話する中で、弊社ともカルチャー的に近く、コミュニケーションが取りやすそうだという安心感も得られました。
Flatt Securityさんは比較的若めの会社ですが、個人的には不安は全く感じませんでした。最近は、設立年数が若めでも高い技術力を持ったスタートアップが珍しくありませんし、様々な実績や記事を拝見して技術力の高さを実感していました。
SmartHRさんやUbieさんといった、Rubyコミュニティでも馴染みのあるスタートアップの診断実績があることも、安心材料になりました。
クロスサイトスクリプティング(XSS)などのありがちな脆弱性だけでなく、ロジックに依存する脆弱性の有無や、かなり複雑な攻撃手順を必要とする攻撃の成立可能性など、高い技術力を必要とする検査内容を網羅的に実施していただきました。
また、Webアプリケーションだけではなく、AWSの設定周りもチェックいただけたのがありがたかったです。AWSのセキュリティ設定は可視化が難しいため、設定不備がないか確認いただけて安心しました。
先程も申し上げたとおり、他の診断ベンダーさんの場合、メールやExcelを中心としたコミュニケーションになり、コミュニケーションコストが高くなってしまいがちなのが悩みどころでした。Flatt Securityさんとは、Slackでのコミュニケーションや Boxを通じたファイル受け渡しなど、日常の業務と同じツールでやり取りできるため、コミュニケーションが非常にとりやすく助かりました。
準備段階から診断終了まで、非常にスピーディーに完結したように感じています。
報告書では、再現手順がcurlコマンドやブラウザ操作などで詳細に記載いただいており、再現確認や修正が非常にしやすかったです。診断後のフォローについても、柔軟かつ迅速にご対応いただけたので、開発者ファーストなご対応をいただけたと感じました。
※Flatt Securityのセキュリティ診断報告書サンプルはこちらからダウンロード頂けます。
他社様と比べると価格が高めではありますが、セキュリティ上リスクの高いエンドポイントに絞って入念な検査を行っていただけたので、コスト相応だと感じました。
高い技術力で深いところまで脆弱性がないか診断いただくことができ、またコミュニケーションもモダンなツールを利用できるという点で、ベンチャーマインドを持った組織やスタートアップにとっては最も適した診断ベンダーなのではないかと思いました。
※セキュリティ診断費用の見積もり資料はこちらで配布中です。
セキュリティ診断というと旧来大手ベンダーが多い中で、Flatt Securityのようにベンチャー寄り・技術志向のマインドを持った企業は希少な存在だと感じます。
ぜひ今後も継続して、コミュニケーションの取りやすさ、診断内容の深さのあるモダンな脆弱性診断をご提供いただけると嬉しいです。
また、同じRuby言語を利用する企業として、 Rubyコミュニティの発展にお互い寄与できると嬉しいです。来年の RubyKaigi 2024も現地で参加する予定ですので、お会いした際はぜひよろしくお願いします!(笑)
<Flatt Securityのセキュリティ診断に関するお問い合わせはこちらから>
Internet Explorerをお使いの場合など、お問い合わせフォームが表示されない場合は別ページからお問い合わせください。