Skip to main content

アプリケーションセキュリティの防衛計画を立てる:『ホーム・アローン』編

feature home alone

2022年12月20日

0 分で読めます

ホリデーシーズンは、お気に入りの定番映画を見返すのにぴったりの季節です!お涙頂戴のホリデー映画を好む人もいれば(Hallmarkの作品がそうですね)、1990年の名作ホーム・アローンで、8歳の少年が間抜けな悪党2人に仕返しする姿を毎年楽しみにしている人もいます。

8歳の子どもが、マイクロマシンやアイロンなど、いくつものドタバタな罠を使って、たった一人で自宅を2人組の強盗から守るなんて、考えるだけでも愉快です。しかし、企業が自社の資産(つまりアプリケーション)を攻撃者から守る状況は、ずっと現実的です。適切なアプリケーションセキュリティ対策を講じても、悪党の頭をバーナーで焼くほど愉快ではないかもしれませんが、さまざまな点でケビン・マカリスターの「防衛計画」に似ています。

そこでホリデーシーズンにちなんで、攻撃者を寄せ付けないための最善のアプリケーションセキュリティ「防衛計画」を立ててみましょう。

薄暗い部屋で、散らかった木製のテーブルの上に白い靴下か布を振り回す人物。

アプリケーションの「階」

ケビンの巧みな計画では、地下室、1階、2階のすべてに罠が仕掛けられていました。映画の中で彼は、あらゆる入口や部屋に対して抜け目のない作戦を考える必要がありました。ハリーとマーブ(強盗たち)がどこから家に侵入し、侵入後に何をするのか、予測できなかったからです。

同じように、優れたアプリケーションセキュリティ計画は、アプリケーションのあらゆる「階」、つまりソースコード、ソフトウェアサプライチェーン、インフラをカバーします。

ケビンは家のすべての階に巧妙で(ときには本当に悪辣な)罠を仕掛けただけでなく、それらが連動するようにも計画していました。マーブはタールが塗られた階段をよじ登り、靴を脱がざるを得ませんでした。その結果、釘を踏むのにおあつらえ向きの状態に!(ゾッとしますね。)ハリーは接着剤を塗ったラップにまんまと引っかかり、そのあと扇風機に足を引っかけ、羽毛を大量に浴びることに。羽毛は接着剤にぴったりくっつきました!ケビンのいたずらは見事に連動していたのです。

ケビンの罠と同様に、アプリケーションセキュリティ計画の各要素も連動させる必要があります。アプリケーションのある「階」で起きることはすべて、ほかの「階」でのセキュリティ対策と結び付けなければなりません。今日では、独自開発とオープンソースの両方を含むソースコード、クラウドインフラ、コンテナにおけるセキュリティ対策を連携させることを意味します。それぞれの「階」を見ていきましょう。

1階:ソースコード

自社で開発したおなじみのソースコードは、アプリケーションの最も基本的なレイヤーです。セキュリティを考慮して書かれていなければ、攻撃者にとって格好の侵入口になりかねません。

しかし、セキュリティチームが常にあらゆる場所に目を配ることはできません。そこで、防衛計画の一部を自動化する必要があります。ケビンが仕掛け糸で罠を自動的に作動させたように、チームは自動化された静的アプリケーションセキュリティテスト(SAST)を活用して、安全でないコードを見つけて修正できます。ソースコードを保護するには、定期的に静的アプリケーションセキュリティテスト(SAST)を実施することと、開発者を教育することの2つが必要です。ベストプラクティスを身に付けてもらい、開発の初期段階から安全なコーディングができるようにしましょう。

狭い地下室の階段を見下ろした暗く歪んだ光景。奥の小さな開口部の中央に、人影または物体のシルエットが見える。

2階:ソフトウェアサプライチェーン

アプリケーションの2番目の「階」はソフトウェアサプライチェーンです。ゼロから作るのではなく、組み合わせてアプリケーションを構成するコンテナのベースイメージやオープンソースコンポーネントなどが該当します。ただし、ソフトウェアサプライチェーンのセキュリティ課題を修正するには、専門的な機能が必要です。コンテナに特有の脆弱性をスキャンするツールと、オープンソースのリスクを特定するツールを使う必要があります。また、どちらのツールも、資産を最も安全なバージョンに戻すなど、明確な修正手順を提示できなければなりません。

天井の照明器具から炎が噴き出し、キッチンにいる男性が身を引いている。

3階:インフラ

アプリケーションセキュリティに対する最善の包括的なアプローチを実現するには、クラウド環境やInfrastructure as Code(IaC)など、アプリケーションの構造を形作る要素について考える必要があります。ストレージにはどのクラウドサービスを使っていますか?適切な権限とアクセス制御が設定されていますか。それとも、アプリケーションを危険にさらす可能性がありますか?IaCもソースコードと同様に、安全に記述されていますか?

アプリケーションのインフラを保護するには、状況に応じたアプローチが必要です。クラウドエコシステムは単独で存在しているわけではありません。実際には、どのように使われるかはIaCに大きく左右されます。

暗い色の服を着た男性が、薄手のカーテンのかかった窓辺に座り、手元の何かを見つめている。

防衛計画のすべての要素をつなげる

個別に見れば、どのツールも優れています。しかし、あえて「計画」と呼び、「計画の数々」とは呼ばないのには理由があります。個々のセキュリティ対策を連携させる戦略がなければ、検出した脆弱性の全体像を見落としてしまいます。分断されたツールは、セキュリティ対策で連携する必要がある開発者、セキュリティ担当者、クラウドアーキテクトにとっても課題となります。

Snykは、この課題に一元化されたプラットフォームで取り組み、ソースコード、オープンソース、コンテナ、クラウド、IaCという5つの領域をカバーしています。さらに、各領域を熟知する開発チームが主導できるよう、開発者向けトレーニングも提供しています。開発者向けセキュリティプラットフォームの詳細をご覧ください。もちろん、ひと休みして代わりに『ホーム・アローン』を観たい場合もご心配なく。戻ってきたら、ここでお待ちしています!

赤いセーターを着た少年。黄色の字幕には「おつりは取っておけ、ゲス野郎」と表示されている。

CTFを始めよう

オンデマンドのバーチャル入門ワークショップで、CTFチャレンジの解き方を学びましょう。

続きを読む

Blog

フロンティアモデルは脆弱性を発見した。攻撃者だけがエクスプロイトチェーンを見つけた。

静的解析で欠陥は見つかりましたが、ライブ攻撃テストで侵害につながる連鎖を実証できたのは唯一でした。Evo COS、Claude Security、Claude Code Securityを比較します。

feature insights context
Blog

自律型攻撃はすでに始まっている。防御もそのスピードに追いつかなければならない。

自律型攻撃者によって、防御に使える時間は短くなっています。継続的な検出、修復、検証、予防で、セキュリティチームが攻撃に歩調を合わせる方法をご紹介します。

Blog

AIコーディングエージェントが不適切なアクセス制御を繰り返し実装する理由

AIコーディングエージェントは、コンパイルが通りレビューも通過する一方で、あるテナントのデータを別のテナントに公開してしまう認可ロジックを生成することがあります。不適切なアクセス制御が検出しにくい理由と、その防止策をご紹介します。