すべてのセキュリティ関連の頭字語は何を意味しますか?
セキュリティツール、プラットフォーム、プロセスに関する略語の多さにうんざりしている(そして辟易している)から、ここに来られたのではないでしょうか。どのソフトウェアプロバイダーも、混雑した市場で新しい機能によって差別化を図ろうとし、開発者やセキュリティ専門家を疲弊させています。
そこで、何が何であるかを理解するのに役立つ、実用的なセキュリティ略語リストをご用意しました。
CVE: 共通脆弱性識別子
- アプリ開発者にとって、これは何を意味するのでしょうか?
CVEは、非営利団体であるMITRE Corporationによって運営されている既知の脆弱性の公開カタログです。1999年の開始以来、サイバーセキュリティ問題の報告における標準となり、アプリケーションの問題をスキャンするほとんどのAppSecプラットフォームの基盤を提供しています。
CVEという用語は少し紛らわしい場合があります。なぜなら、多くのセキュリティ関係者や企業は、「CVE」を公開カタログではなく、脆弱性そのものを指すために使用するからです。ある企業のウェブサイトに「当社のASPMは重大なCVEから保護します」と記載されている場合、それはそのプラットフォームが、CVEカタログで認識されている1つまたは複数の特定の脆弱性との一致を求めて、コード、依存関係、およびクラウド構成をスキャンすることを意味します。 - 気にする必要がありますか? 👍
システムとしてのCVE、および個々の脆弱性や露出としてのCVEは、セキュリティにおいて重要な役割を果たします。重要なのは、それらについて通知し、修正へのスムーズな道筋を提供するプラットフォームを確保することです。
SAST:静的アプリケーションセキュリティテスト
- 別名 静的分析
- アプリ開発者にとって、これは何を意味するのでしょうか?
SASTツールは、ソースコードの脆弱性を効果的にチェックします。これは、開発プロセスの初期段階からソフトウェア開発ライフサイクル(SDLC、これもまた頭字語です)全体にわたってセキュリティを確保する方法と考えることができますが、対象はコードのみです。アプリの機能やデプロイ方法には焦点を当てていません。 - 気にする必要がありますか? 👍
SASTツールはAppSecのスペルチェッカーのようなもので、ツールキットの焦点を絞った不可欠な部分です。理想的には、SASTツールは開発の可能な限り早い段階(IDE内、プリコミットGitフックとして、またはCIパイプライン内)で動作し、問題を早期に検出することで、緩和とリソースの観点からの影響を軽減します。
DAST: 動的アプリケーションセキュリティテスト
- アプリケーション開発者にとって、これは何を意味するのでしょうか?
DASTはSASTの「ライブ」バージョンと考えてください。DASTツールは、本番環境に近い環境で実行中のアプリケーションをシミュレートされた攻撃でテストします。これにより、攻撃者に見つけられる前にセキュリティの隙間を塞ぐことができます。DASTツールは、アプリケーションの目的には関心がなく、既知の重大レベルの攻撃に対して脆弱であるかどうかのみを検出します。 - Do you need to care? 👍
短期的には緩やかに「はい」、長期的には強く「はい」と言えます。従来、DASTはDevOpsまたはSecOpsエンジニアの領域でしたが、より多くの組織がAppSecの責任を開発者にシフトレフトするにつれて、上層部や運用担当者は、遅かれ早かれこれらのツールとの統合や連携を求めざるを得なくなるでしょう。
IAST:インタラクティブアプリケーションセキュリティテスト
- 別名: RASP(下記参照!)
- アプリ開発者にとって、これは何を意味するのでしょうか?
IASTはSASTとDASTの組み合わせのようなもので、IDE内およびCI/CDパイプラインの一部として両方のアプローチを組み合わせます。他の2つのアプローチとは異なり、IASTはアプリケーション内に組み込まれたエージェントを使用し、既存の機能テストにフックして、ハードコードされた認証情報やサニタイズされていないユーザー入力などの問題を探します。 - Do you need to care? 🤷
開発ライフサイクルで既にSASTおよびDASTツールを使用している場合、ツールキットにIASTに特化した代替ツールを追加しても、得られるものは少ないかもしれません。しかし、AppSecテストが初めてで、すべての要件をカバーするために単一のツールを選択する必要がある場合、その包括性と結果の速さという独自の組み合わせを高く評価するかもしれません。
ASPM: アプリケーションセキュリティポスチャ管理
- アプリ開発者にとって、これは何を意味するのでしょうか?
ASPMプラットフォームは、アプリケーションのセキュリティオブザーバビリティのように機能します。複数のソースからデータを取り込み、相関関係をチェックし、コンテキストに応じた洞察と修復支援により、複数のアプリケーションにわたる問題の優先順位を付けられます。これらは、特に厳格なコンプライアンス基準を持つ業界において、リスク評価と優先順位付けに非常に役立ちます。 - Do you need to care? 👍
運用またはメンテナンスの観点からは、おそらくそうではないでしょう。しかし、ASPMはあらゆる規模の組織にとって標準になりつつあります。その目的は、セキュリティポイントソリューションの数を減らし、SAST、DAST、その他の機能を網羅できる包括的なAppSecプラットフォームを使用することです。したがって、いずれASPMに遭遇する可能性が高いでしょう。
CSPM: クラウドセキュリティポスチャ管理
- アプリケーション開発者にとって、これは何を意味するのでしょうか?
CSPMは、クラウドデプロイメントにおけるセキュリティの可観測性を提供します。これらのツールは、クラウドインフラストラクチャへのリスクを特定または可視化し、サービスアカウントのアクセス制御など、将来的に問題を引き起こす可能性のある設定ミスを最適に修正する方法を推奨します。 - CSPMプラットフォームはInfrastructure as Code (IaC) のプラクティスに依存しており、デプロイ前に設定ファイルをスキャンし、本番環境に移行する前にアラートを配信します。
- Do you need to care? 🤷
所属するチームによります。クラウドプロバイダーで本番環境の構成も担当するアプリケーション開発者であれば、CSPMが視野に入ってくるかもしれません。主にビジネスロジックに注力し、運用面は他の担当者が行う場合、CSPMと関わることはないかもしれません。
DSPM: データセキュリティポスチャ管理
- 別名: 「データファースト」セキュリティ
- アプリ開発者にとっての意味は何ですか?
他の「ポスチャー管理」カテゴリと同様に、DSPMツールは組織のデータストレージと使用状況に関する可視性を提供します。機密情報を特定し、それがどこにどのように保存されているかに関連するリスクを算出し、セキュリティポスチャーを改善するための道筋を提示します。 - DSPMはデータ分類を自動化することも可能で、アプリケーション内での情報の取り扱い方や保存方法に影響を与えます。特に、インフラストラクチャ内の複数のアプリケーションやマイクロサービスベースのAPI間で情報が流れる場合に重要です。
- 関心を持つべきでしょうか? 👎
一般的には、いいえ。DSPMはサイバーセキュリティの領域においてかなり専門的であり、大規模企業やエンタープライズレベルの専任セキュリティチームには理想的ですが、スタートアップや中小企業の小規模なアプリケーション開発チームには適していません。
VM: 脆弱性管理
- 別名: 脆弱性管理システム(VMS)、脅威および脆弱性管理(TVM)、脆弱性評価、脆弱性スキャン、テクニカル脆弱性管理
- アプリ開発者にとって、どのような意味があるのでしょうか?
VMは、コード、設定、クラウドデプロイメント全体にわたる脆弱性を特定し、修復するための包括的なアプローチであり、多くの場合、これらの同じ頭字語で表される追加のAppSecツールからのスキャンデータを集約することによって行われます。
これらのプラットフォームは、発見された脆弱性を共通脆弱性評価システム(CVSS)に基づいてランク付けすることで、セキュリティに関する継続的な改善サイクルを実装するのに役立ちます。これにより、すぐに対応すべき脆弱性と、次のスプリントまたは次の四半期まで残しておける脆弱性を優先順位付けできます。 - 関心を持つべきでしょうか? 🤷
これは、組織が検証中またはすでに使用しているVMプラットフォームに大きく依存します。
従来のVMプラットフォームは、多くの場合、ITセキュリティ/運用チーム、コンプライアンスおよびリスク管理担当者、DevOpsエンジニア、さらにはペネトレーションテスターの領域です。彼らはより多くのセキュリティ経験を持ち、コードが安全でない状態で本番環境に移行した場合に大きな責任を負う人々です。とはいえ、一部のAppSecプラットフォームは、開発者が技術的な脆弱性を、誤検知を減らし、即座に関連する修正策を提供することで管理できるよう設計されています。
SCA:ソフトウェア構成分析
- 別名: コンポーネント分析
- アプリケーション開発者にとって、これは何を意味するのでしょうか?
npm、go get、pipなどでアプリケーションに追加したすべてのパッケージを覚えていますか?これらの依存関係はそれぞれ数十ものさらに多くの依存関係に広がり、コードや設定の脆弱性に対する新たなリスクをもたらします。オープンソースパッケージの利用は生産性向上に貢献しますが、セキュリティには大きなコストを伴います。
SCAツールは、オープンソースのサプライチェーンをスキャンして脆弱性やオープンソースライセンスに関する潜在的な問題を検出し、中には即座にアップデートを提供するものもあります。 - Do you need to care? 👍👍
SCAツールは、素晴らしいオープンソースのフレームワーク、プロジェクト、ライブラリを安全に利用することを可能にし、セキュリティを犠牲にすることなく、必要とされる高い開発速度を提供します。AppSecの基本的な保証を求めるアプリケーション開発者にとって必須のツールです。
RASP:ランタイムアプリケーション自己保護
- 別名: アプリ内保護、アプリ内ファイアウォール、組み込みアプリセキュリティ、ランタイムセキュリティ、IAST
- What does it mean to app developers?
RASPツールは、WAF(下記参照)のような外部インフラを必要とせずに攻撃を検出しブロックするために、アプリケーション内に直接組み込まれます。リアルタイムのセキュリティインサイトと「ハンズオフ」アプローチは一部の人にとって魅力的ですが、アプリ内で動作するため、パフォーマンスの低下を分析し、その影響を、(No)SQLインジェクション、パストラバーサル、シェルインジェクションなどの一般的な攻撃からの保護によって得られる安心感と比較検討する必要があります。 - 関心を持つべきでしょうか? 👍
開発とセキュリティの両面で人材が不足している場合、RASPツールは自動化された攻撃からアプリケーションとユーザーデータを保護するための素晴らしい近道となります。これらは、ネットワーク上の類似ツールであるWAFよりもはるかにデプロイと管理が容易であり、追加のインフラストラクチャのコストと複雑さを避けたいアプリケーション開発者にとって優れた選択肢となります。
また、Node.jsアプリケーション向けの弊社のオープンソースFirewallプロジェクトも考慮すべき点です。私たちはRASPという用語を特に好んでいません。GitHubリポジトリにはこの用語は一切登場しませんが、Firewallは、コードを一行も変更することなく、すべての重大な脆弱性を検出しブロックする点で同様に機能します。
WAF: ウェブアプリケーションファイアウォール
- 別名: WAAP(WebアプリケーションおよびAPI保護)
- アプリ開発者にとって、これは何を意味するのでしょうか?
このオンプレミスまたはクラウドベースのデプロイメントは、ユーザー(または攻撃者)とアプリ間の最初の接点として、インフラストラクチャの最前線に位置し、DNSを介してアプリ宛のトラフィックを「傍受」します。これらは、受信リクエストの最初の数百キロバイトに対して数百もの正規表現パターンマッチングを比較的迅速に実行し、潜在的に悪意のあるコードを含むものをブロックします。
その結果はRASPツールとほぼ同じですが、WAFはアプリの動作や本来の機能についてさらに考慮しません。 - 関心を持つべきでしょうか? 👎
私たちの見解では、いいえ。それらが何であるか、そしてその意図された機能を知っておくべきですが、アプリケーション開発者としては、WAFの領域に深く踏み込むよりも、はるかに容易に実装できる他のAppSec戦略が多数存在します。WAFは誤検知やパフォーマンスの低下で悪名高く、これは正当なエンドユーザーのエクスペリエンスに必然的に影響を与えます。
Aikido FirewallをWAFと呼ぶのは本意ではありませんが、WAFと同じ機能をはるかに高い精度と効率で実行します。
次は何ですか?
AppSecの頭字語に関するスピードランを完了されたことをお祝い申し上げます!
次に学ぶべき頭字語のうんざりするほど長いリストを読み続ける義務を感じるか、あるいはダークモードIDEという安心毛布の中でセキュリティのあらゆるものから逃れたいと思うかに関わらず、目標は歩くAppSec辞書になることではないことを忘れないでください。ASPM、CSPM、DSPM、その他すべての違いについて10分間詳しく説明できることに誰も感銘を受けません。彼らが感銘を受けるのは、彼らの正確な状況に合った適切なAppSecツールを迅速に推奨できる場合です。

