適用性。侵入テスト担当者は、自動化ツールと手動テストを使用して、アプリケーションや接続されたデータベース内の脆弱性を探します。これには、アプリケーションバイナリ自体または認可プロセス、暗号化、SQLiの可能性、および同等の攻撃方法を調べることが含まれます。
ネットワーク。ネットワークは、組織のセキュリティ境界として(少なくとも理論的には)厳格な侵入テストを受ける必要があります。通常、このプロセスでは、管理アクセス制御、セキュアソケットレイヤー(SSL)、暗号化トランスポートプロトコル、証明書、ネットワークセグメンテーションなどを体系的に検討します。
クラウド。クラウドでは、侵入テスターはシステム構成、アプリケーション・プログラミング・インターフェース(API)、ストレージを検証します。また、標準ポリシーが設定されていないクラウドインスタンスも検索する可能性があります。これは、人々が認識しているよりも一般的です。善意の開発者であるにもかかわらず、情報に誤りがあると、セキュリティ制御を適用せず、あるいはクラウドインスタンスが存在することを誰にも通知することなく、アプリケーションとデータベースをクラウドプラットフォームに展開する可能性があります。
ソフトウェア開発プロセス。DevOpsワークフローと継続的インテグレーション(CI/CD)パイプラインは、開発者が誤ってバグやコーディングエラーをソフトウェアに埋め込み、アプリケーションを侵害に対して脆弱にする場所です。DevOpsとCI/CDパイプラインの自動侵入テストにより、テスターは静的コードスキャンでは検知できない隠れた脆弱性を見つける可能性があります。また、侵入テスターは開発者ワークフローに侵入し、コードベースに悪性コードを挿入できるかどうかを確認します。Dockerなど、コンテナに関しても同様のアクションを実行します。
デバイス。ハードウェアは、ネットワークやアプリケーションと同様に、セキュリティ侵害に対して脆弱です。侵入テスターは、アプリケーションバイナリー、ファームウェア、オペレーティングシステムソフトウェアの脆弱性を使用して、デバイスに侵入しようとします。セキュリティパッチがインストールされていないデバイスの弱点を、侵入テスターが見つけることはよくあります。
API。侵入テスターは、手動および自動化されたAPIテストプロセスを組み合わせて、APIにOpen Worldwide Application Security Project(OWASP)のAPI Security Top 10の脆弱性(オブジェクトレベルの認可の不備(BOLA)など)があるかどうかを判断し、APIにレート制限がないか、またはユーザー認証の問題があるかどうかを分析します。