システムやサービス開発の内製化が進む中、組織的にプロダクトセキュリティに取り組む企業が増えつつあります。#FlattSecurityMagazineでは、組織としてプロダクトセキュリティに向き合っている企業のノウハウや現場の課題などをお伝えする特集「プロダクトセキュリティ組織の作り方」をスタート。様々なフェーズ・規模の企業の取り組みをお届けしていきます。
初回となる今回は、CXプラットフォーム「KARTE」をはじめとした様々なプロダクトを開発・展開している株式会社プレイドの取り組みについて、同社セキュリティエンジニアの赤坂翔太さんにお話を伺いました。
- 3つの組織が融合しながらプロダクトセキュリティに取り組む
- プロダクトセキュリティを支えるバーチャル組織「セキュリティ組」
- 「1人目のセキュリティエンジニア」としてバーチャル組織を牽引
- マインド面・エンジニアリング面での今後の目標は
- プレイドからのお知らせ
3つの組織が融合しながらプロダクトセキュリティに取り組む
ーープレイドのプロダクト開発組織・プロダクトセキュリティ組織の概要について教えてください。
プロダクト開発組織には、エンジニアやデザイナーが合計110人程度在籍しています。プロダクトの設計から開発、品質管理まで、プロダクト開発の各工程を担っています。
プロダクトセキュリティに関する組織は全体で10人ほどの規模です。専任のセキュリティエンジニアは僕1人で、兼任の方が5人、オブザーバーの方が数人程度という規模感です。弊社の場合、以下の3つの組織がプロダクトセキュリティを担っています。
セキュリティユニット:エンジニアリング領域においてコーポレート・プロダクト両面のセキュリティに取り組む組織です。
セキュリティ組:プロダクト横断・部門横断でプロダクトセキュリティに取り組むバーチャル組織です。
セキュリティ室:法務・ビジネス領域においてコーポレート・プロダクト両面のセキュリティに取り組む、部門横断型の組織です。
僕は3つ全ての組織に所属しています。セキュリティユニットとセキュリティ組のリーダーを務めており、エンジニアリング領域のリーダーとして、プロダクトセキュリティに取り組んでいます。
CTOは、プロダクトセキュリティ組織全体を統括する立場です。個々の組織に個別で関わるのではなく、3つの組織全体をまとめている形ですが、セキュリティに関して相談したいことは気軽に話せる体制になっています。僕も気になったことがあれば、遠慮なく相談しています。
ーープロダクトセキュリティ組織は、プロダクト開発組織とどのように関わっていますか?
セキュリティ組が、プロダクトセキュリティに関する相談の一次受けを行っています。「何かあったらセキュリティ組に相談してください」と社内に向けて根気強く周知していったおかげで、社内にそのようなフローを定着させることができました。
定着するまでは1〜2年かかりました。セキュリティ組の活動を進め、社内にも認知してもらったことで、相談しやすい空気が醸成されたのではないかと思います。
プロダクト開発組織から相談を受けた後の対応は様々です。プレイドでは、プロダクト開発をボトムアップで進めていくことが多く、セキュリティ課題の解決のためにセキュリティ組が現場に入っていくこともあります。一方で、トップダウンで進めた方が早く進む課題ももちろんありますので、そういった場合は開発のリーダーと連携しながら進めていく形を取っていきます。セキュリティ課題の性質に応じて、柔軟に対応しています。
なお、プレイドには「インフラエンジニア」「セキュリティエンジニア」のような職能に応じた呼称は存在せず、エンジニアは全員「エンジニア」という呼称で統一されています。一人一人が特定の領域だけを受け持つのではなく、得意分野に応じて複数領域を担当するような体制だからです。プロダクト開発組織に所属するエンジニアも、複数領域を掛け持って担当していることが多いです。
ーー赤坂さんは、プロダクトセキュリティに関してどのような取り組みをされていますか?
自分は、プロダクトセキュリティに関することであれば、何でも担当するという立ち位置にいます。例えば、自分の得意分野はWebアプリケーションとクラウドのセキュリティなので、社内向けに脆弱性診断を実施しています。プロダクト開発組織から依頼があれば、セキュリティ組のメンバーと一緒に、都度対応しています。
また、セキュリティ観点での設計・コードレビューやクラウドセキュリティに関する施策を中心に実施しています。プロダクトセキュリティの施策を進めるにあたっては、「その場しのぎの対応をするのではなく、できる限り仕組み化をする」という方針をもっています。例えば、脆弱性診断をしているとプロダクト横断で存在する脆弱性が発見されることがありますが、プロダクト全体でどのように修正を適用するかの方針を決め、セキュリティロジックをライブラリ化して展開することがあります。
クラウド周りでは、アカウント管理を強化しています。環境のテストなどの時に、一々権限の承認や変更をする作業が大変だったので、特定の権限を持っている人であれば、自己承認のみで一時的に管理者権限に変更できる仕組みを作り、アクセス権限などのリソースの設定ミスをモニタリングしています。
自分たちだけでは対応が難しいものに関しては、社外のベンダーの力も借りながら施策を実施しています。脆弱性診断は外部ベンダーにも定期的にお願いしています。
どのような時でも開発者およびセキュリティ担当者の利便性を損なわずに、プロダクト開発組織のセキュリティを高めるため、セキュリティ組とともに様々な取り組みを進めています。
プロダクトセキュリティを支えるバーチャル組織「セキュリティ組」
ーー部門横断でプロダクトセキュリティに取り組む「セキュリティ組」という組織は特徴的ですね。
セキュリティ組は、プロダクト開発に関わるエンジニアのセキュリティ知識・セキュリティアウェアネスを形成し、向上するために作られたバーチャル組織です。
元々、プレイドには、部門横断で課題解決に取り組むバーチャル組織「組」を作る文化があり、セキュリティ組が生まれる前から、特定の分野に特化した様々な「組」が存在していました。セキュリティ組は、2019年、現在のCPOやVPoEの発案を元に誕生しました。今やプレイドの中でも、最も活動的な組のうちの1つとなっています。
手を挙げた人が自由に参加できる仕組みになっており、僕以外のメンバーは、全員プロダクト開発エンジニアの方々で構成されています。そのため、セキュリティに関する知見を僕から共有したり、一緒に課題解決に取り組みながらセキュリティに関する知見を深めていったりしてもらっています。
セキュリティ組はバーチャル組織なので、会社の正式な組織体制には入っていません。メンバーは正式な所属組織の仕事をやりながら、隙間時間で組活動を行っているケースが多いです。
ーーメンバーは、どういう人が多いですか?
先程お話したとおり、僕以外のメンバーは全員プロダクト開発エンジニアです。知識量やスキルレベルはメンバーにより異なりますが、メンバーには「セキュリティへの関心が元々強い」もしくは「セキュリティに関する勉強をするのが好き」という共通点があります。
メンバーのキャリアは、新卒入社の方から、セキュリティベンダー出身の方、大手Web企業出身の方まで様々です。「開発が少し落ち着いたから、セキュリティにコミットする時間を増やせるようになった」というタイミングで参加を始める人が多いように思います。
参加のモチベーションについては「セキュリティに詳しい人の話を色々と聞いて知識が増えるのに加えて、自分が担当するプロダクトの品質向上にも反映できるところが良い」と話しているメンバーが多かったです。メンバーにはそれぞれ所属組織での業務があるので、セキュリティ組では個々人に対し明確なコミットを求めていませんし、タスクを強制的に割り振ることも行っていません。「セキュリティに薄く関われる」「時間とやる気さえあれば、セキュリティに関するスキルや知識を高めることができる」という環境が良いのかもしれません。
ーー組の中では、どのように役割分担をしていますか?
セキュリティ組の中では、あまり役割分担は決めていません。僕は、プロダクトセキュリティに関することなら何でもやる立場ですが、他のメンバーに関しては得意分野が各々異なるので、それぞれの得意分野に合わせて割り振りを行うようにしています。メンバーのスキルセットは良い感じにばらけているように感じています。
メンバーから希望があれば、プロジェクトを担当してもらっています。隔週で開催している定例会で、対応すべきプロジェクトの優先順位について話し合い、各プロジェクトの担当も手挙げで決めています。例えば、以前、セキュリティ組のメンバーと僕でセキュリティ診断を外部ベンダーに依頼するということも行いました。アプリケーションエンジニアのメンバーに業者選定から診断実施後の報告までを担当してもらい、僕はそれをサポートする形で入りました。
プロジェクトの進行管理などは、基本的にメンバーに任せるようにしていますが、セキュリティの知識や考え方を伝える必要がある時は要所要所でサポートするようにしています。
新卒・中途入社の方が入社される際のセキュリティオリエンテーションもセキュリティ組が担当しており、その場でも参加メンバーを募集しています(笑)。
ーーメンバーとはどのようにコミュニケーションを取っていますか?
セキュリティ組の定例の中で、気になったセキュリティに関するトピックを紹介し合うようにしています。
また、不定期ではありますが、勉強会や1時間程度のもくもく会も開催しています。勉強会の企画は、基本的に持ち寄りで、僕が企画を立てることもしばしばです。PortSwiggerなどのセキュリティベンダーが発表している脆弱性情報や、OWASP Top10などをテーマにすることが多いです。たまにハンズオン形式の勉強会も開催しています。
▼セキュリティ組が開催した社内セキュリティハッカソンの様子
tech.plaid.co.jp
基本的な脆弱性などのセキュリティに関する基礎知識は、勉強会や業務を繰り返す中で徐々に身につけていってもらっているように思います。メンバーは皆プロダクトセキュリティを専門としない開発エンジニアではありますが、リテラシーとモチベーションが高く、エンジニアとしての能力も高い方々ばかりなので、一緒に仕事を進める中で困ることはあまりありません。
ーー活動を社内に向けてどう発信していますか?
毎月、「月報」という形で社内に発信しています。「KARTE」のセキュリティ向上のためにセキュリティ組が取り組んでいることや、会社のプロダクトセキュリティをより高めるために対応している課題、セキュリティトピックやトレンドの動向などをesaにまとめて伝えています。執筆は基本的に持ち回りです。
月報は、ビジネス職含め、エンジニア領域以外の社内全ての人に向け発信しているのですが、特にプロダクト開発組織のエンジニアの方達からは好評をいただいています。プロダクト開発組織もDeptごとに別れており、「セキュリティ組の月報を通じて自分が担当していないプロダクトでのセキュリティ施策や、セキュリティ課題に関する情報を知ることができ、参考になる」という感想をいただいたり、そこから議論が発展したりすることもあります。
ーーセキュリティ組はバーチャル組織ですが、メンバーの業績評価はどのようにされていますか?
僕が所属しているコアプラットフォームDeptのリーダーやCTOが僕に対する業績評価を行っていますが、バーチャル組織自体に業績評価制度はありません。各メンバーは、所属組織の中で業績評価を受けています。
「1人目のセキュリティエンジニア」としてバーチャル組織を牽引
ーープレイドでは、いつ頃からプロダクトセキュリティ組織が形成されていきましたか?
2019年頃だと思います。現在のCPOやVPoEから「弊社サービスで取り扱う情報の重要性を鑑み、より組織的かつ継続的にセキュリティに取り組む体制づくりをしたい」という意見が上がり、プロダクトセキュリティ組織づくりがスタートし、セキュリティ組が誕生しました。そして、それと同時期に、現在のプロダクトセキュリティ組織の原型がほぼ出来上がりました。
セキュリティ組の最初のミッションの1つに「採用」がありました。当時、プレイドにはプロダクトセキュリティ専任のエンジニアはいなかったからです。その採用活動を経て、僕が1人目のプロダクトセキュリティ専任エンジニアとして入社しました。
ーー1人目のプロダクトセキュリティ専任エンジニアとして取り組んだことを教えてください。
プロダクトセキュリティ組織の母体としてセキュリティ組がある中で、僕が入社したという状況だったので、入社時は割と目の前の課題がわかりやすい状態でした。そのため、最初に戦略を考えるのではなく、目の前にある課題をどんどん解決していくことにしました。様々な課題に向き合ううちに、プレイドの開発組織の文化や、大切にしている考え方に徐々に慣れていきました。
ある程度数をこなすと、開発組織やプロダクトに対する解像度が上がり、より優先度の高い課題を見極められるようになりました。それからは、自分の判断で優先順位をつけて対応していくことができていったように思います。
「1人目のセキュリティエンジニア」として入社したわけですが、セキュリティ組という組織があり、セキュリティに関するリテラシーの高いメンバーたちに恵まれていたので、今振り返ってもとてもありがたい環境だったと感じます。
ーーセキュリティ組のリーダーになったのはいつからですか?
入社後早い段階からですね。
入社当初、セキュリティ組のメンバーは僕を含めて5人でした。プロダクトセキュリティの取り組みに対して、何か明確な目標を立てていたわけではありませんでしたが、クラウドのインフラ周りは特に優先度を高く設定して対応していました。アカウント管理なども、メンバーに相談しながら進めていきました。
入社してからは、意識的にセキュリティ組のメンバーを巻き込んでいきました。1人で抱え込むのではなく、組織的に対応することで、周りのメンバーに開発者目線でのフィードバックをいただいたり、プロダクトセキュリティの知識やスキルを吸収してもらったりしました。
ーーセキュリティ組のメンバーを巻き込んでいくことに対してメリットを感じた取り組みはどのようなものですか?
プロダクト開発の過程でセキュリティレビューを行っているのですが、セキュリティ組のメンバーが関わっているプロダクトに関しては、レビューをとても効率的にできているように思います。
プロダクトのセキュリティレビューを行って発見したセキュリティ課題については、各プロダクト開発の現場で対応するということが一般的だと思うのですが、セキュリティ組には各プロダクト開発の現場にいるメンバーが集まっているので、プロダクト横断的にセキュリティ課題を共有したり、対応策を考えたりすることが多いです。結果的に、「セキュリティの横展開」も生まれ始めています。あるプロダクトで上手くいったセキュリティ対策を、他のプロダクトにも応用してみる、というものです。実際に施策を進める中で、プレイドならではの良い取り組みだなと感じました。具体的な例だと、SSRFのような脆弱性を防ぐためのライブラリを作成し、アプリケーションロジックからインターナルへの通信を拒否する仕組みを実装したり、各種バリデーションを効率的に実施するためのライブラリやツールを開発したりしています。これらの取り組みは、プロダクト開発が得意なセキュリティ組のメンバーとともに進めています。
マインド面・エンジニアリング面での今後の目標は
ーープロダクトセキュリティ組織における課題はありますか?
人的リソースの確保が一番の課題だと感じています。セキュリティ課題は、時間が経つにつれて段々と露出していくものだと思いますので、対応できる人材をより増やしたいです。採用活動にはこれまで以上に力を入れていくつもりです。
また、弊社のプロダクトセキュリティ組織は、プロダクト開発組織と非常に距離が近いのが特徴だと思うので、プロダクトセキュリティ施策の一部を開発組織に移譲することもできれば良いかなと考えています。お陰様で、エンジニア組織全体は拡大を続けていますので、より多くのエンジニアを巻き込んでいきたいです。
社外への情報発信についても積極的に取り組んでいきたいです。技術ブログなどを通じて発信したい情報はたくさんあります。
ーー今後、プロダクトセキュリティ組織にはどのような人に参加してほしいと考えていますか?
セキュリティアウェアネスやセキュリティに関する知識をプロダクト開発の現場に向けて草の根的に届けていくセキュリティ組のメンバーと、セキュリティの専門家であるセキュリティエンジニアをどちらも増やしていきたいです。
セキュリティ組に関しては、セキュリティに興味のある方、セキュリティについて学ぶのが好きな方であれば大歓迎です。先ほどお話した通り、プレイドではメンバー個々人のロールをあえて定めておらず、職種にとらわれず自律的に業務を行える環境があります。そのような環境を楽しめる方にとっては最適の会社だと思います。
セキュリティエンジニアに関しては、プレイドのカルチャーにマッチする方にぜひ来ていただきたいです。セキュリティ組の活動からもわかるように、チームでセキュリティに取り組む会社なので、「独りよがりのセキュリティ」はあまり弊社のカルチャーにマッチしません。セキュリティ組とともにプロダクトセキュリティを一緒に推し進めていきたい方をお待ちしています。
ーー今後、プロダクトセキュリティ組織をどのような組織にしていきたいですか?
マインド面と、エンジニアリング面それぞれで目標を立てています。
会社の成長フェーズに呼応するような形で、プロダクトセキュリティ組織も変化させなければいけないと考えています。会社の文化と調和させながら、プロダクトセキュリティ組織を拡大していくというのが、マインド面における目標です。
エンジニアリング面の目標は、「プロダクト開発組織全体の自由度を高めるために、その土台となるセキュリティを強固にする」というものです。開発者を巻き込みながら、この目標を達成するために行動できるプロダクトセキュリティ組織を作っていきたいです。
(取材・文/寺山ひかり 撮影/豊田恵二郎)
プレイドからのお知らせ
プレイドでは、プロダクトセキュリティを支えるセキュリティエンジニアをはじめとして、プロダクト開発を支える各種エンジニアなど、様々なポジションでの積極採用を進めています。
この記事を読んで、プレイドで働くことに興味を持った方は、ぜひ以下のページよりご確認ください!
■プレイド採用情報
recruit.plaid.co.jp
■カジュアルに話を聞きたいかたはこちらから
www.wantedly.com
■エンジニアブログ tech.plaid.co.jp