ペネトレーションテストについてあらためて調べてみた

# はじめに

社内のコミュニティ活動でペネトレーションテストの初歩的な内容について調べることになったため、簡単に調査した内容とChatGPT-4oから得た回答をまとめてみました。

# ペネトレーションテストとは

ネットワークに接続されているコンピュータシステムに対し、実際に既知の技術を用いて侵入を試みることで、システムに脆弱性がないかをテストする手法のこと。**侵入実験**または**侵入テスト**とも言われる。
ネットワークに接続されているコンピュータシステムは常に外部からの攻撃の危険を孕んでおり、実際に攻撃された場合はどのようにシステムが乗っ取られるのか、侵入に対してどこまでセキュリティツールが耐えうるのか、など実際にシステムが稼動する前に幅広いテストを行う。

# 用語

## ブラックボックステスト (Black Box Testing)

- 解説: 内部構造や動作を知らずに外部からシステムをテストする手法。攻撃者の視点に近い

## ホワイトボックステスト (White Box Testing)

- 解説: 内部構造や動作を完全に把握した上でシステムをテストする手法。内部の詳細な知識を元にしたテスト

## グレーボックステスト (Gray Box Testing)

- 解説: 部分的に内部の情報を持った上でシステムをテストする手法。内部と外部の両方の視点を組み合わせたテスト

## レッドチーム (Red Team)

- 目的: セキュリティの脆弱性を発見し、組織の防御力をテストすること
- 役割: 
    - 攻撃者の視点で組織のセキュリティを評価する
    - 実際の攻撃手法を模倣して、システムやネットワークに対する侵入を試みる
    - ペネトレーションテストや社会工学的攻撃を行い、防御の弱点を見つける
- 活動内容:
    - ネットワークやアプリケーションの脆弱性スキャン
    - フィッシング攻撃のシミュレーション
    - 物理的なセキュリティの評価

## ブルーチーム (Blue Team)

- 目的: 組織の資産を防御し、攻撃から保護すること
- 役割:
    - 実際の防御対策を実施し、攻撃からの保護を強化する
    - レッドチームの攻撃に対する防御を実行し、リアルタイムでの対応を行う
    - 継続的な監視、検出、対応を担当する
- 活動内容:
    - セキュリティ情報およびイベント管理 (SIEM) システムの運用
    - インシデントレスポンス計画の実行
    - ネットワークトラフィックの監視と異常検知

## パープルチーム (Purple Team)

- 目的: レッドチームとブルーチームの活動を統合し、全体的なセキュリティの改善を図ること
- 役割:
    - レッドチームとブルーチームの協力を促進し、知見を共有する
    - 攻撃シミュレーションと防御策の評価を行い、継続的に改善する
    - 両チームの活動を統合して、効果的なセキュリティ対策を開発する
- 活動内容:
    - レッドチームの攻撃シナリオに基づくブルーチームの防御訓練
    - 攻撃と防御の演習を通じて、弱点の特定と改善策の導入
    - 両チームのフィードバックループの確立

## イエローチーム (Yellow Team)

- 目的: 主にセキュリティ運用と管理を担当し、日常的なセキュリティの維持と運用を支援すること
- 役割:
    - セキュリティポリシーの策定と実施
    - セキュリティツールの管理と運用
    - ユーザーのセキュリティ意識向上とトレーニングの提供
- 活動内容:
    - セキュリティパッチの適用と管理
    - セキュリティ監査とコンプライアンスの確認
    - セキュリティインシデントの記録と報告

# 学習方法

## オンライントレーニング

### TryHackMe

- URL: https://tryhackme.com/
- 概要: ブラウザからアクセスできる、ゲーム化された実践的なサイバーセキュリティトレーニング プラットフォームであり、あらゆるスキル レベルに対応したブルー、レッド、パープルのチーム コンテンツを提供しています。

### Hack The Box

- URL: https://www.hackthebox.com/
- 概要: Hack The Box は、個人、企業、政府機関、大学が攻撃的および防御的なセキュリティの専門知識を磨くことを可能にする、ゲーム化されたサイバーセキュリティのスキルアップ、認定、および人材評価ソフトウェア プラットフォームのリーダーです。
サイバーセキュリティの専門家や組織が、レッド、ブルー、パープルのチームの能力を向上させることで、サイバー攻撃への備えを継続的に強化するためのソリューションです。

### VulnHub

- URL: https://www.vulnhub.com/
- 概要: デジタルセキュリティ、コンピュータソフトウェア、ネットワーク管理の実践的な「実践」経験を誰でも得られる教材を提供します。

# ツール

## OSS (オープンソースソフトウェア)

### Metasploit Framework

- 説明: 最も広く使用されているペネトレーションテストツールの一つ。脆弱性評価、エクスプロイト開発、攻撃シミュレーションに使用される
- 特徴: 大規模なエクスプロイトデータベース、多機能、活発なコミュニティサポート

### Nmap (Network Mapper)

- 説明: ネットワーク探索およびセキュリティ監査のためのツール。ポートスキャン、サービス検出、OS検出などが可能
- 特徴: 高速で柔軟、スクリプトエンジンによる拡張性

### OWASP ZAP (Zed Attack Proxy)

- 説明: ウェブアプリケーションセキュリティテストツール。自動および手動の脆弱性スキャンが可能
- 特徴: 使いやすいGUI、豊富なプラグイン、継続的なアップデート

### Burp Suite Community Edition

- 説明: ウェブアプリケーションの脆弱性をテストするための統合プラットフォーム
- 特徴: 効果的なプロキシツール、豊富な機能

### Nikto

- 説明: ウェブサーバの脆弱性スキャナー。サーバ設定ミス、危険なファイル、古いソフトウェアバージョンを検出する
- 特徴: 迅速なスキャン、多数のプラグイン

## 製品 (商用ソフトウェア)

### Pentera

- 説明: ペネトレーションテストを自動化するプラットフォームであり、手動のペネトレーションテストと同等の効果を提供する
- 特徴: 自動化されたペネトレーションテスト、脆弱性の優先順位付け、継続的なセキュリティ評価、レポート作成、簡単な導入と操作、ネットワークの全体的なカバレッジ

### Burp Suite Professional

- 説明: ウェブアプリケーションのセキュリティテストツール。コミュニティ版に比べて多機能でプロフェッショナル向け
- 特徴: 高度なスキャニング、継続的なアップデート、包括的なレポート機能

### Nessus

- 説明: ネットワークの脆弱性スキャナー。広範な脆弱性データベースを持ち、詳細なレポートを提供する
- 特徴: 高精度の脆弱性検出、包括的なレポート、ユーザーフレンドリーなインターフェース

### Acunetix

- 説明: ウェブアプリケーションセキュリティスキャナー。自動スキャンと手動テスト機能を提供
- 特徴: 高速スキャン、包括的な脆弱性検出、直感的なインターフェース

### Core Impact

- 説明: 企業向けのペネトレーションテストツール。高度なエクスプロイトとシミュレーション機能を提供
- 特徴: 複雑なシナリオテスト、詳細なレポート生成、強力なエクスプロイトデータベース

### QualysGuard

- 説明: クラウドベースの脆弱性管理およびコンプライアンスツール。ネットワーク、アプリケーション、データベースのスキャンを提供
- 特徴: スケーラブルなクラウドソリューション、詳細なレポート、継続的な監視

# 資格

## Certified Ethical Hacker (CEH)

- 概要: EC-Councilが提供する資格で、エシカルハッキングの基礎を学び、実践的なペネトレーションテストの技術を習得します
- 対象者: セキュリティエンジニア、ネットワークアドミニストレーター、システムエンジニアなど

## Offensive Security Certified Professional (OSCP)

- 概要: Offensive Securityが提供する実践的なペネトレーションテストの資格。ハンズオンの試験で実際にシステムを侵入する技術を評価します
- 対象者: ペネトレーションテスター、セキュリティコンサルタント、エシカルハッカーなど

## GIAC Penetration Tester (GPEN)

- 概要: GIACが提供する資格で、ネットワークやシステムの脆弱性を評価するためのペネトレーションテストのスキルを証明します
- 対象者: セキュリティアナリスト、ネットワークアドミニストレーター、セキュリティコンサルタントなど

## Certified Penetration Testing Engineer (CPTE)

- 概要: Mile2が提供する資格で、ペネトレーションテストの原理と手法を学びます
- 対象者: エシカルハッカー、セキュリティコンサルタント、ITマネージャーなど

## Certified Penetration Tester (CPT)

- 概要: IACRBが提供する資格で、ペネトレーションテストの実践的な技術を証明します
- 対象者: ペネトレーションテスター、セキュリティエンジニア、セキュリティコンサルタントなど

## Certified Red Team Professional (CRTP)

- 概要: Pentester Academyが提供する資格で、レッドチーム活動に必要なスキルを評価します
- 対象者: レッドチームメンバー、ペネトレーションテスター、エシカルハッカーなど

# おわりに

かなりざっくりですが、ペネトレーションテストについて調査した内容をまとめてみました！
今回の調査で初めて目にしたOSSや製品もあったので、機会があれば詳細に調査してまた記事にまとめてみようと思います！