侵入テストとは何ですか?

侵入(Pen)テストとは

侵入テストは、許可された個人または企業がコンピューターシステム、ネットワーク、アプリケーションに対するサイバー攻撃をシミュレートし、悪性のハッカーが悪用できる脆弱性を特定するサイバーセキュリティ手法です。侵入テストは、実際の攻撃者が悪用する前に、システムのセキュリティ対策の弱点を明らかにすることを目的としています。

侵入テスト(Pen Testing、Pentesting)は、システムのセキュリティ対策と制御の隠れた弱点を明らかにすることを目的とした詳細なプロセスです。通常、認証された部外者が実施する侵入テストでは、システムのすべての要素に対するさまざまな種類の攻撃をシミュレートします。目標は、システムの作成者やセキュリティチームが見落としていた可能性のある脆弱性を発見することです。

侵入テストは誰が実施しますか?

侵入テストは、ほとんどの場合、ターゲットシステムの作成に関与していない人が実行します。通常、ペンテスター(テスター)は、システムを構築したエンティティにはまったく所属していないことがよくあります。これにはいくつかの理由があります。1つには、開発チーム、QA/テストチーム、セキュリティチームのメンバーは、自分たちが構築したものに近すぎます。セキュリティギャップは、先入観を持たずに新しい目でシステムにアクセスした人が発見できる可能性があります。

さらに、侵入テストは独自のスキルセットであり、多くの場合、専用のツールが必要です。ハッカーのように考える必要があります。実際、侵入テスターの中には、自らのスキルを正当な目的に使用することを決意した元「ブラックハット」または犯罪ハッカーもいます。よく言われるように、泥棒を捕まえるには泥棒が必要です。侵入テスターには、特別なトレーニングや認定もあります。ほとんどの場合、システムを構築した組織の従業員はこれらの資格を持っていません。

侵入テスターは「倫理的ハッカー」と呼ばれることもありますが、この2つの役割は異なります。基本的なレベルでは、侵入テスターは倫理的に攻撃をシミュレートして標的をハッキングします。「攻撃」する許可を得て、悪用しないことに同意したセキュリティ上の欠陥を発見します。

その違いは、構造的なものに部分的に起因します。通常、侵入テストでは、セキュリティ問題を特定して文書化するための統制の取れたアプローチで、事前に設定された一連のプロセスに従います。一方、倫理的なハッキングは、よりオープンエンドになる傾向があります。たとえば、倫理的なハッカーは「バグバウンティ」プログラムに関与し、未知の脆弱性を発見したことで報奨金を得ることができます。しかし、徹底的な侵入テストを実施し、プロセスが発見したものを文書化するのと同じではありません。

侵入テストの段階

通常、侵入テストの方法は次の5つの段階で行われます。

  1. 偵察。これは、テスターが侵入テストプロセスを開始する前に行われる情報収集手順です。テスターはターゲットシステムのパラメーターを学習し、攻撃計画を準備します。
  2. スキャン。テスターはターゲットをスキャンして、情報セキュリティシステムがその制御と対策を侵害しようとした場合にどのように対応するかを判断します。ほとんどの場合、自動化された侵入テストツールを使用してスキャンを実行することで、オープンポート、デフォルトの管理者アカウントが有効になっているサーバー、脆弱な設定ミス、標的システムへのその他の隠れた方法を見つけることができます。
  3. アクセス。スキャン段階で検出された情報に基づいて、侵入テスターがターゲットシステムの内部に入ります。これには、SQLインジェクション(SQLi)などの手法を使用して、(理論的には安全な)データベースから管理ユーザーの認証情報を取得することが含まれます。侵入すると、侵入テスターは、このレベルのアクセスで攻撃者がどの程度の損害を被る可能性があるかを明らかにします。たとえば、侵入テスターがネットワークインフラを介して最初のターゲットから横方向に移動し、本番アプリケーションや機微な情報にアクセスできる場合、攻撃者がそのシステムにも侵入する可能性があると報告します。
  4. アクセスの維持。侵入テスターが正常に作業を完了した場合、ターゲットシステムへのアクセスを維持できます。これは、攻撃者が被害者のネットワーク内に一度に何か月も潜んでいるという、ありふれた現実の状況を模倣しています。また、アクセスを維持することで、侵入テスターは高度な持続型脅威(APT)をシミュレートすることもできます。
  5. 分析と隠蔽。侵入テスターは、ターゲットシステムから自分の存在の痕跡をすべて消すことでテストを終了します。繰り返しになりますが、これは実際のサイバー攻撃のシミュレーションです。実行可能ファイルやログイベントは検知できません。その後、使用された手法、発見されたギャップ、侵害の影響予測など、セキュリティチームにとって重要な情報をまとめた詳細なレポートを作成します。

侵入テストのタイプ

組織内のすべての関連システムタイプに合わせて侵入テストプログラムを調整することは、賢明なリスク管理手法です。接続されたデバイス、アプリケーション、データソースはアタックサーフェスの一部である可能性があるため、侵入の脆弱性を評価するために侵入テストを使用することは理にかなっています。一般的に、Webアプリで侵入テストを実施しながら、モバイルアプリでは実施しないのは理にかなっていません。どちらも、フィッシングからソーシャルエンジニアリングまで、攻撃者にとってサイバーセキュリティ攻撃の経路になる可能性があります。

侵入テストは、次の6つの大まかなカテゴリーに分類されます。

適用性。侵入テスト担当者は、自動化ツールと手動テストを使用して、アプリケーションや接続されたデータベース内の脆弱性を探します。これには、アプリケーションバイナリ自体または認可プロセス、暗号化、SQLiの可能性、および同等の攻撃方法を調べることが含まれます。

ネットワーク。ネットワークは、組織のセキュリティ境界として(少なくとも理論的には)厳格な侵入テストを受ける必要があります。通常、このプロセスでは、管理アクセス制御、セキュアソケットレイヤー(SSL)、暗号化トランスポートプロトコル、証明書、ネットワークセグメンテーションなどを体系的に検討します。

クラウド。クラウドでは、侵入テスターはシステム構成、アプリケーション・プログラミング・インターフェース(API)ストレージを検証します。また、標準ポリシーが設定されていないクラウドインスタンスも検索する可能性があります。これは、人々が認識しているよりも一般的です。善意の開発者であるにもかかわらず、情報に誤りがあると、セキュリティ制御を適用せず、あるいはクラウドインスタンスが存在することを誰にも通知することなく、アプリケーションとデータベースをクラウドプラットフォームに展開する可能性があります。

ソフトウェア開発プロセス。DevOpsワークフローと継続的インテグレーション(CI/CD)パイプラインは、開発者が誤ってバグやコーディングエラーをソフトウェアに埋め込み、アプリケーションを侵害に対して脆弱にする場所です。DevOpsとCI/CDパイプラインの自動侵入テストにより、テスターは静的コードスキャンでは検知できない隠れた脆弱性を見つける可能性があります。また、侵入テスターは開発者ワークフローに侵入し、コードベースに悪性コードを挿入できるかどうかを確認します。Dockerなど、コンテナに関しても同様のアクションを実行します。

デバイス。ハードウェアは、ネットワークやアプリケーションと同様に、セキュリティ侵害に対して脆弱です。侵入テスターは、アプリケーションバイナリー、ファームウェア、オペレーティングシステムソフトウェアの脆弱性を使用して、デバイスに侵入しようとします。セキュリティパッチがインストールされていないデバイスの弱点を、侵入テスターが見つけることはよくあります。

API。侵入テスターは、手動および自動化されたAPIテストプロセスを組み合わせて、APIOpen Worldwide Application Security Project(OWASP)のAPI Security Top 10の脆弱性(オブジェクトレベルの認可の不備(BOLA)など)があるかどうかを判断し、APIにレート制限がないか、またはユーザー認証の問題があるかどうかを分析します。

侵入テストのメリット

侵入テストには、他のセキュリティテストモードでは得られないさまざまなメリットがあります。これは、ユニットテストや機能テストなどの実行の重要性と必要性を損なうものではありません。しかし、侵入テストでは、他のプロセスでは発見できないセキュリティ上の欠陥を見つけることができます。

さらに、侵入テストでは、攻撃チェーン全体、つまり攻撃者がどのようにして脆弱性を発見し、悪用し、アクセス権を取得し、アクセスを維持したかを示すことができます。その結果、セキュリティチームは侵入テストによって、他の方法では目に見えないシステム的な問題を修正できます。効果的な侵入テストでは、コントロールや対策が実際にどの程度強力であるかを示すこともできます。これは、PCI DSSGDPRなどの規制への準拠を考慮すると、さらに重要です。

侵入テストのアプローチ

侵入テストのアプローチは、悪用ターゲットの数と性質、テスターが利用できる情報のレベル、テスターが自由に使えるツール、スキル、リソースによって異なります。さまざまな侵入テストアプローチには、ボックステストのいくつかの方法があります。

ブラックボックスの侵入テスト:ブラックボックス(クローズドボックスまたはシングルブラインド)アプローチで侵入テストを実施する場合、テスターはターゲットシステムについての事前知識はなく、外部の視点からのみテストして、実際の攻撃をシミュレートします。彼らは、一切の前提なしに、最も創造的で公平な戦術を駆使します。 

ホワイトボックス侵入テスト:ホワイトボックス(オープンボックスまたはクリアボックスアプローチ)では、侵入テスト担当者は会社のセキュリティ情報への事前承認されたアクセス権を取得します。そのため、情報に基づいた立場からテストを実施します。このアプローチにより、テスターは推測に費やす時間を節約し、より多くのリスクを特定できる可能性があります。また、アーキテクチャ図、ソースコード、機能など、ターゲットシステムに関する広範な情報も提供します。これにより、徹底的かつ詳細な分析が可能になり、限られた情報では目に見えない可能性のあるより深い脆弱性を明らかにします。 

グレーボックスの侵入テスト:グレーボックスのアプローチでは、ハッキングチームは会社のシステムに関する部分的な情報を知っています。その結果、リスクの高い脆弱性を特定し、優先的に修正する可能性が高まります。

隠密または二重ブラインドのアプローチとは、IT担当者を含む日常的なユーザーが、テストが行われていることに気付かない場合です。このテストでは、IT部門がリアルタイムで侵害に対応できるかどうかをテストします。このようなテストでは、誤った警報を引き起こさないように、事前に法執行機関に通知することが含まれる場合があります。

侵入テストで事業継続性を保証

侵入テストは、あらゆる組織で堅牢で効果的なネットワークセキュリティを維持するための重要な脆弱性評価です。企業に次のようなメリットがあります。

  • 外部ハッカーが悪用する前にセキュリティイシューを検知して解決する
  • ITインフラ内のリスクの高い領域を特定し、セキュリティ予算を賢く割り当てる
  • 社内のITおよびセキュリティ担当者の警戒レベルと応答時間を改善
  • データプライバシーとセキュリティコンプライアンスのギャップを解消
  • 実際のセキュリティ侵害が発生した場合の影響を緩和

したがって、ITワークロードと顧客データのセキュリティを確保し、運用を円滑に進めるためには、適切な侵入テストが不可欠です。

よくある質問

企業にとって、脆弱性スキャンや侵入テストなど、さまざまなセキュリティテストツールに精通することが不可欠です。

脆弱性スキャンは、ネットワークの潜在的な脆弱性と影響を受けやすい領域を特定するプロセスです。これには、ルーター全体、システムセットアップ、サーバー、および配置されている可能性のあるファイアウォール全体のスコーピングが含まれます。攻撃ベクトルは、基本的に組織に侵入する可能性のある手法のマップであるため、脆弱性スキャンではより一般的です。

一方、侵入テストは、やや複雑で事前対応型のものです。侵入テストでは、倫理的なハッカーが侵害を行い、潜在的なセキュリティ違反や脆弱性を明らかにします。侵入テスターは、最適な結果を得るためにターゲットとするのに最適なアタックサーフェスを決定します。侵入テストは、現在導入されている自社システムのハッキング可能性とセキュリティについて詳しく知りたい方に最適です。

侵入テストは、セキュリティの脆弱性を特定するために、年に少なくとも1~2回実施する必要があります。組織の規模や範囲によっては、侵入テストをさらに頻繁に実行する必要がある場合もあります。あらゆる業界でサイバー攻撃やセキュリティ侵害が増加しているため、デジタル脆弱性に事前対応し、定期的に侵入テストを実施することが不可欠です。

現在の設定、APIセキュリティ対策、運用規模によっては、侵入テストの完了には通常1~2週間かかります。ただし、侵入テストの所要時間は、ターゲットとする機器、ファイアウォール、ネットワークによって異なります。

Akamai が選ばれる理由

Akamai は、オンラインビジネスの力となり、守るサイバーセキュリティおよびクラウドコンピューティング企業です。当社の市場をリードするセキュリティソリューション、優れた脅威インテリジェンス、グローバル運用チームによって、あらゆる場所でエンタープライズデータとアプリケーションを保護する多層防御を利用いただけます。

関連ブログ記事

生成 AI によるゼロトラストの促進、パート 1:AI ラベリング
この 4 部構成のブログシリーズのパート 1 では、Akamai の新しい生成 AI を活用した機能である AI ラベリングを取り上げています。これにより、ゼロトラストの目標を迅速に達成できます。
生成 AI によるゼロトラストの促進、パート 2:Guardicore AI
この 4 部構成のブログシリーズのパート 2 では、主にマイクロセグメンテーションに必要な手作業なしで、Guardicore AI を使用してゼロトラストの成果を達成することについて説明しています。
サイバーセキュリティにおける AI:AI がサイバー犯罪との戦いに与える影響
AI はサイバーセキュリティを変えています。ハッカーがどのようにサイバー犯罪に AI を使用しているか、サイバーセキュリティ専門家がどのように AI を使用して攻撃を防止し、検知し、対応しているかをご確認ください。

Akamai の全セキュリティソリューションをご紹介

無料トライアルをお使いになり、最も信頼できる世界最大級のクラウド配信プラットフォームを利用するとどんな違いがあるかをご確認ください。