
システム開発の早い段階からセキュリティを考慮し、入れ込んでいく「DevSecOps」や「セキュリティ・バイ・デザイン」という言葉自体は徐々に知られるようになってきましたが、実践となると、特に日本ではまだまだのようです。普及しない背景にはどのような課題があり、そこから一歩踏み出すにはどのような捉え方が必要なのでしょうか。
NRIセキュアでDevSecOps事業を率いる福澤 達洋と、OWASPの設立時期からプロジェクトのコントリビュータとして活動してきたアスタリスク・リサーチの岡田 良太郎氏が、現状打開のヒントについて語り合いました。
-
福澤 達洋
- 2013年に野村総合研究所に入社。NRIセキュアテクノロジーズに出向し、SOCメンバとして活動しつつ、大型開発プロジェクトのPMを担当。当プロジェクトにおいて、アジャイル方式の開発を初めて社内で採用し、その後の多くのプロジェクトのモデルケースとなった。 2018年以降はペネトレーションテスト/レッドチームオペレーション等に従事し、100を超えるシステムのセキュリティ評価を実施。現在では、DevSecOps事業部部長としてお客様向けのコンサルティングサービスの提供や新サービスの検討を行っている。
-
岡田 良太郎
- 2006年にアスタリスク・リサーチ社を創業。アプリケーションセキュリティ実現のため、サイバー攻撃に強いシステムデザインや組織づくりに関わる教育・コンサルティング事業を推進するとともに、WASForum Hardening ProjectやOWASP Japan Chapterのリーダーとして活動し、2024年にはOWASPから「Honorable Lifetime Membership Award」を受賞している。
日本企業におけるDevSecOpsの実践を阻むハードル
株式会社アスタリスク・リサーチ 代表取締役 岡田 良太郎氏
インシデントレスポンスやエンドポイントセキュリティのように、わかりやすく、またビジネスとして成り立ちやすい事業に比べ、セキュア開発の推進という、効果が出るまで時間がかかり、なかなか理解の得にくい領域にNRIセキュアがコミットしてきたのは素晴らしいことですね。
私は入社後、マネージドセキュリティサービスの共通基盤の開発からキャリアをスタートしました。その後セキュリティ診断業務に携わるようになったのですが、中には、根本的にセキュリティ品質を入れ込むことよりも「とりあえずセキュリティ診断さえ突破できればいい」というスタンスの開発担当者の方もいらっしゃいました。セキュリティ診断や自身の開発経験を通じて開発段階からのセキュリティ担保が大切だという思いが芽生え、ちょうど社内でDevSecOps事業が2018年ごろに立ち上がることになり、参加させてもらいました。
7年後の今はDevSecOps事業の責任者ですね。この事業では、どのように課題の解決を行っているのでしょう?
ある程度開発が進んだ後の脆弱性検査とは異なり、早い段階から開発プロセスをセキュアにしていくという考え方のもと、設計評価のほか、SAST、DAST、IASTといったツールの導入支援を最初のステップにして支援を行ってきました。
当時はまだDevSecOpsという言葉もそれほど知られていなかったと思います。どのようなお客様から受け入れられていったのでしょう?
金融や製造業でセキュリティを統括する部隊が最初のお客様でした。現場でセキュアな開発を実現していくための基盤作りやトレーニングに対する要望が高く、そうしたニーズに応える形でいろいろなサービスができあがっていきました。
セキュア開発やセキュリティ・バイ・デザインという言葉は、当時に比べれば浸透してきたように思います。また、金融庁のガイドラインにセキュリティ・バイ・デザインが明記されるなど追い風も吹いてきました。ただ、いざ取り組もうとしても「具体的に何をやればいいのか」で立ち止まってしまうお客様が多いようです。
DevSecOpsやセキュア開発について議論しようにも、「それは一体何を意味しているのか」という前提が漠然としており、人によって解像度が異なりますよね。
そうですね。「これをやればDevSecOpsだ」「これをやればセキュリティ・バイ・デザインだ」という唯一の解は定まっていません。ですので、どの会社も「うちは何に取り組めばいいのだろう」と思い悩んでいることが、大きなハードルとなっているように思います。
僕も福澤さんと同じくエンジニア出身で、さまざまな経験の中から「やられないシステム作り」の重要性を認識するようになりました。そしてアスタリスクという会社を通して、やられない、あるいはやられても強いシステムにするためにどうすべきかの経験や知見を提供し、プロダクトチームとタッグを組んでセキュリティを中から作っていくための伴走をしてきました。
ただ、セキュリティはお客様の急所を取り扱う大事な仕事なので、表立って詳細を話すことはあまりできません。このため、目の前で相対している方の先にいるエンジニアや、スポンサーである意思決定層との間にギャップが存在し、「なんであんなことにお金と時間を投じるんだ」といった後ろ指を指されながら走らざるを得ないこともあります。
この状況を打開するには、「どこから始めるか」を決める必要があります。その指針としてちょうどいいのがOWASP Top 10です。つい先日、2025年版の日本語訳を作成し、リリースしたばかりです。OWASPというコミュニティは、アプリケーションセキュリティを実現するには共通言語が必要だ、という問題意識のもとで2001年に生まれ、僕もプロジェクトのコントリビュータとして活動してきました。最近では、AIに尋ねてもOWASPが参照されることが多く、こうした活動に貢献できたことをうれしく思っています。
セキュリティへの解像度がまだ低い人たちも含め、多くの企業や開発者が「セキュリティを開発プロセスの中に当てはめるとはどういうことか」を理解していくには、コンサルティングだけでは追いつかず、こうしたパブリックなガイドが必要だと考えています。
プロジェクトを振り返り、運用課題を次のDevSecOpsのインプットに
NRIセキュアテクノロジーズ株式会社 福澤 達洋
ガイドラインに加え、やはり「DevSecOpsをやっていこう」という目的を持つことが、その前段階で必要だと思っています。
もう一つ、僕が以前岡田さんから伺った「プロジェクトの振り返りから始めましょう」という話がとても印象的です。これまでさまざまな支援をしてきましたが、例えば、セキュリティ診断においてもどうしてもプロジェクト単位での一時的な取り組みとなってしまい、次のプロジェクトに学びを持ち帰れていないことに歯がゆさを感じています。
現場にとってリリースは大きな節目であり、そこを過ぎれば後は気が抜けてしまいがちです。けれど、リリース後にしっかりプロジェクトを振り返り、次に向けて「ここはこういう進め方をした方が良かったな」と振り返ることが必要ではないかと思います。
システムというのは生まれた瞬間が価値のスタートですから、その後のことを考えないわけにはいきませんよね。
僕は2017年頃から「シフトレフト」の必要性を大声で叫び続けてきました。けれど多くの方には「要するに要件定義から頑張れということだな」と認識されるだけで終わってしまい、「どうやったらセキュリティを考慮に入れた要件定義ができるかわからない」と行き詰まってしまったように思います。
これに対し僕は、今動いているシステムのセキュリティ運用課題をインプットすればいいじゃないか、とアドバイスしています。
たとえば、運用していてブルートフォース攻撃で認証を突破しようとする攻撃があっても気づけず、CPUを食い潰してからやっと把握できた、といったシステムがあったとします。この問題を解決するには、WAFにシグネチャを追加したり、モニタリングレベルを上げるといった手段があります。それを要件としてインプットすればいいんです。現状ではそもそも運用課題を洗い出せていないため、「次に開発をするときは、こういった事柄に対応できる必要がある」という要件が決められないんですよね。
皆さんもDevOpsの概念を表現する、ぐるっと八の字型のサークルになった図を見たことがあると思いますが、あの図を見ても、設計の前段階にインプットできるものは運用課題しかないんですよ。線形ではなく終わりと始まりがつながっているのですから、運用の人と話して課題を洗い出し、要件に取り入れることが大事です。運用課題はそのまま、インシデントの火種になります。
2025年版のOWASP Top 10の10番目の項目には「 例外の不適切な処理」が取り入れられました。しっかり取り組めば被害を抑えられるはずの運用課題に取り組んでいないことが、セキュリティ上の重要な問題だと認識されるようになったわけです。
その意味で自分は、縦割りの組織体制にも大きな問題があると思っています。まず開発と運用とでチームが分かれてコミュニケーションが取れない上に、開発の中でもプロジェクト間のつながりがなく、「これは自分の担当じゃないから」と縦割りになっています。このため、あるシステムで発生した課題を、別のプロジェクトにインプットする場がないように思います。解消するには、経営レベルでDevSecOpsやセキュア開発に取り組むことをしっかり意識し、壁のないチームを組成していく動きが必要だと思います。
「開発にセキュリティを取り込む」が意味する2つの側面

もう1つ、セキュリティを開発に取り込むDevSecOpsという言葉には「セキュリティは余分なものだ」と思われてしまう功罪があったのではないかとも感じています。
僕の考えでは、開発にセキュリティを取り込むという言葉には2つの意味があります。
1つは、認証やログ、入力値検証、暗号といった共通のセキュリティ機能を作り込むことです。セキュリティは一般に「非機能要件」と思われがちですが、この場合はむしろ運用のための「共通機能要件」と呼ぶべきだと思っています。共通機能要件であることが認識されれば、これらを実装するためのエンジニアがアサインされていくでしょう。
OWASPでは、こうした共通機能を実現するライブラリを「ESAPI」(Enterprise Security Application Programming Interface)と定義し、組織の中で共有することを推進した時期がありました。この概念は今も適切だと思っていて、入力値検証のような機能をバラバラに作るよりも、予算を付け、担当を付けていいものを作って他のチームにも共有することで、皆がハッピーになれるんじゃないかと思っています。
この「共通機能を実装する」というのが、開発にセキュリティを取り込むことの定義その1です。その2は何だと思いますか?
何でしょう。非機能要件の部分でしょうか?
プロセスです。「こういう段取りで作ればセキュアに作りやすく、検証しやすい」という進め方の話です。
たとえば、いかに早くレビューを受けるか、他のモジュールと結合したときにいかに早く検証するか、外から適当に拾ってきたコンポーネントを使わないようにするか、という具合に、進め方一つを改善するだけで、システムは相当セキュアになると思うんです。これは、DevOpsやアジャイルと同じことを別の言い方で表現しているとも言えるでしょう。
こんな風にプロセスが焦点になると、プロジェクトマネジメントの観点で議論できるようになります。すると「あの進め方は非常に効率よく脆弱性を撲滅することに成功できていていいじゃないか」と、他のチームにもどんどん共有されるようになっていくんじゃないかと思います。
私はDevSecOpsに取り組み始めたときから、文化、プロセス、技術の三つが必要だとお客様への紹介やいろいろなセミナーでお伝えしてきました。岡田さんのお話は、このうち文化とプロセスに関わる部分だと思います。今おっしゃったセキュアに進めるプロセスに加え、もう一つ、先ほど触れた縦割りの組織から脱却した「教え合う文化」が必要だと感じています。
となると、教え合いを必然的にやらざるを得ない仕組み作りも必要かもしれませんね。技術的な仕組みと同時に、それをうまく活用することに対し、インセンティブが働くような組織的な裏付けも必要かもしれません。
たとえば、各チームから知見を持つ人が集まり、ノウハウを共有するCoE(Center of Excellence)という仕組みがあります。クラウド活用に関してはCloud CoEがありますが、セキュリティに関しても、Security CoE、あるいはQuality CoEのような取り組みが必要ではないかと思っています。
ただ、その知見の共有というのがなかなか難しく、進んでいない印象があります。同時に複数の開発部隊を支援していたケースでは、あるチームに伝えた問題が別のチームでも繰り返されたり、中途半端に共有されていた経験がありました。
けれど、第三者として介入することで、うまく貢献できたこともありましたよね?
そうですね。私がセキュリティチャンピオンのような立ち位置でお客様のチームに完全に入り込んで一年ほど支援した時には、開発チームの皆さんの意識の変化を肌で感じました。最初はそれこそ「診断さえ突破すればいい」という考え方で相談を受けていたのですが、時間が経つにつれ、企画段階から「ここにリスクがありそうですが、どうしたらいいでしょう」といった相談が来るようになり、明らかに意識が変わってきたことを感じました。
ただ、他のチームへの影響となるとまだまだでしたね。私が支援して作り上げていった「プロセス」を、他の部門にしっかり教え合う「文化」についても提案できればよかったのかなと思います。
10個、20個とプロジェクトが並行して進んでいる会社の場合、まずパイロットケースとなるチームで実践し、その知見を他のチームにも展開していく、というやり方を提案しがちですが、特定の優れたプレイヤーに依存している実情が浮き彫りになることもあります。OWASP SAMMというフレームワークでは、そうしたボトルネックを解消し、多少遅れを許容してでも全体で成熟度を高めるための方法論を提示しています。
もう一つ、最近どうしても意識せざるを得ないのが「Claude Code Security」などのAIを活用したツールの存在です。現在のSASTの最大の問題点は誤検知の多さですが、AIを活用して適切にトリアージし、もう一度検査をして、さらに修正提案までAIでできるようであれば非常に有益だと思っています。
何らかの観点に基づいて、ざっくりとしたシステムのプロファイリングや、グレーボックステストにそうしたツールを使うのはいいことじゃないかなと思っています。NRIセキュアでもサービスにAI技術を盛り込む計画はあるんですか?
むしろ盛り込んでいかなければいけないと考えています。DevSecOpsの八の字を意識し、どのプロセスでどのようにAIを使うかを、近い将来と言わず、今すぐにでも考えなければいけないでしょう。
もう一つ、AI駆動開発をしている開発者たちをどのように支援するかも考えなくてはいけません。ハルシネーションや機密情報の学習、ライセンス違反など、AIを使うことによって新たなリスクも生まれます。そこをNRIセキュアが第三者の目で大丈夫かどうかを見ていく必要があると思っています。
AIのリスクは幅広く、さまざまな観点がありますが、たとえばOWASPのGenAI Security Projectでは、セキュアなMCPサーバ開発に関するガイドを出したばかりです。NRIセキュアの皆さんにもますますこうしたプロジェクトに参加し、ドキュメントへのフィードバックなどに関わっていただければと思います。
開発とビジネス両面に寄り添える、セキュア開発の推進に必要な人材像とは

さまざまな取り組みを通して一つ感じるのは、セキュア開発の推進に当たっては、やはり開発とセキュリティの両方が分かる人材、双方を翻訳できる人材が必要だということです。
以前、海外のカンファレンスで「開発エンジニアがセキュリティを嫌いな理由、Top10」というタイトルのセッションがあり、まったくその通りだと思いながら聴いたことがあります。開発者としてはいいものを作りたいと思っているのに、後出しじゃんけんのような形でダメ出しをされると面白くはありませんよね。
その気持ちはとてもよくわかります。セキュリティ診断を実施し、そう簡単に直せないような指摘を受けると、開発者としては「作れもしないくせに」と思うのも無理はありません。
ですから、セキュリティ至上主義ではアプリケーションセキュリティは難しいかもしれません。セキュリティに携わる人がもの作りや開発を知ること、そして事業そのものに詳しい人がセキュリティを知ることが大事だと思っています。
特に、事業やビジネスに詳しい人が、システムに対する脅威のシナリオや悪用されうる技術のメカニズムを学ぶのがいいかもしれませんね。事業に詳しく、愛着を持てる人材はなかなか外から調達できません。しかしセキュリティに関する知識ならば、今はAIの支援もありますから、頑張れば半年程度である程度学べます。そうして勘所を押さえることで、「ここにセキュリティ対策が必要だ」と直感的に理解できるようになり、セキュア開発が進むのではないかと思います。
リスクを正確に把握するという意味でも、また指摘事項の修正に当たっての制約事項を踏まえるという意味でも、ビジネスをしっかり分かっていなければ寄り添った提案はできないと思っています。我々も、決して開発者の敵ではなく、たとえばパシュートのように寄り添い、一緒に伴走するんだということは強く意識しています。
いいですね。僕も同感です。
OWASP Top 10 2021には「安全が確認されない不安な設計」という項目が含まれていました。ビジネス観点から見たリスクや優先順位付けができないと、適切なアーキテクチャや設計ができない、という指摘です。「前にやったことがあるから」とか、「あの会社のアーキテクチャがかっこいいから」という理由で設計されては困るんですよね(笑)
よく聞く話ですね(笑)。やはりチームの中にビジネスを理解している方を巻き込んで、一緒にやっていくことが大事だと思います。また逆に、ビジネス側が「こういう要件でやっておいて」と丸投げしても、重要な事柄が考慮から漏れてしまい、思わぬ脆弱性を作り込んでしまう恐れがありますね。
もう一つ付け加えると、日本ではシステム開発を請け負うアウトソーサーやシステムインテグレーターの存在を無視できません。けれど、外注に丸投げしている間はDevSecOpsなんて無理なんじゃないかと思います。
おっしゃるとおりですね。「うちはベンダーに任せているから、セキュリティのことは知りません」とは言えません。何かあった時の責任は、発注者が取ることを認識しなければいけないと思います。
もちろん最近では、丸投げせずにオーナーシップを持つ企業が増えたと思っています。開発や運用の主体はあくまで企業側にあり、振り返りを実施しながらしっかり推進していく企業は確実に増えてきたなと思いますね。
オーナーシップを自身で持った上でセキュリティ面も推進したい、というお客様を支援するケースもありますね。開発を請け負うベンダー側への支援は、これからの課題となりそうです。
セキュリティははじめからやるべきもの、知見の共有と責任感を持って推進を
大規模なインシデントを受け、この3ヶ月ほどで、セキュリティの重要性が急激に認識されました。一方で、「こうすればみんなの役に立つ」という方法が見つかっても、それを人にシェアする方法はなかなかありません。Hardening Projectのような形で競技を設計したり、プレゼンテーションの機会を提供したりといろいろ挑戦してきましたし、「こういう進め方をするといいよね」というコンセンサスを集めたものが、OWASP SAMMをはじめとするOWASPのドキュメント類なんです。ですので今後もこうした活動を頑張っていきたいと思います。
自分はやはり、プロジェクトの振り返りと、その前提となる教え合う文化が大事だと思います。プロジェクトだけ、チームだけに閉じずに共有する場を持つことならば、今すぐにでもできるはずです。もう一つ、あえて言うとすれば「自分の作ったものにもっと責任を持とう」ということも訴えたいですね。
OWASP Top 10には、「エンジニアが、自分の持つコードに対する責任の大きさというものは概して認識されていないものです」と記されています。コードの書き方に関する自由度は非常に高いのですが、その責任の重さはなかなか認識されていません。同時に、開発者に任せる側も、どれだけ重いことを任せているのかが分かっていないという問題もあり、これは非常に大事なポイントだと思います。
僕は「セキュリティを開発に取り込むことは、お金とリソースに余裕がある人たちだけの作業だ」という勘違いをどうにかしたいんですよ。セキュリティは余裕ができたら頑張るものではなく、はじめからやらないといけないものなんです。時間もお金もないからセキュリティができないのではなく、セキュリティをやらないから時間もお金もなくなるのだ、と言いたいですね。逆に言えば、セキュリティを開発体制と技術の両面から取り組むことは、ビジネスの成長を守る、必須の、そして一番の近道なんです。
まさにそうですね。「ビジネスの成長を実現するソフトウェア」——それをつくるのは、信頼性の高い技術と、それを支える組織です。その土台づくりは、我々一社だけで完結するものではありません。お客様とご一緒に、そして志を同じくするパートナーや、開かれたコミュニティと知恵を持ち寄りながら、進めていきたいです。
<関連サービス>
<参考リンク>
Top 10 2025日本語,
https://github.com/owasp-ja/Top10/blob/master/2025/docs/ja/0x00_2025-Introduction.md
OWASP Gen AI Japanese,
https://genai.owasp.org/language/japanese/
OWASPドキュメント 日本語資料レポジトリ,
https://github.com/owasp-ja/













