Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

用語集

本書で使用する用語のうち、初学者が混乱しやすいものを抜粋して整理する。完全な網羅ではない。

一般

  • Pentest(penetration test)
    攻撃者の視点で対象システムを評価し、脆弱性の有無や影響範囲を確認する活動。本書では、許可された範囲(スコープ)内で実施することを前提とする。
  • 脆弱性診断(Vulnerability Assessment)
    脆弱性の有無を中心に確認する評価。本書では、Pentest と脆弱性診断の差分(目的、合意、手法、報告の粒度)を Part 0 で整理する。
  • スコープ(Scope)
    評価対象・評価手法・禁止事項など、評価の前提条件の合意。Pentest では安全性と法的観点から最重要の前提となる。
  • DoS(Denial of Service)
    サービス停止(または性能劣化)を目的とする攻撃。本書では、DoS 相当の負荷試験を実施するかはスコープで事前に合意する前提とする。
  • アタックサーフェス(攻撃面 / Attack Surface)
    攻撃可能性がある入口(公開 URL、API、認証フロー、管理画面、外部連携、クラウド設定など)の集合。テスト計画・優先度付けの起点となる。
  • PoC(Proof of Concept)
    脆弱性が成立することを示す最小限の再現手順。実務では「影響を過度に拡大しない」範囲で作る。
  • ミスコンフィグ(Misconfiguration)
    設定不備(例:アクセス制御の過度な開放、不要な権限付与、公開範囲の誤り)。アプリの実装脆弱性と同様に重大なリスク要因となる。

環境・運用

  • VPN(Virtual Private Network)
    通信経路を論理的に分離・保護するための仕組み。本書では、脆弱な演習環境を業務ネットワークから分離する文脈で言及する。
  • WSL2(Windows Subsystem for Linux 2)
    Windows 上で Linux 環境を利用する仕組み。本書では、Windows 利用時の演習環境として推奨構成の一例として言及する。
  • MFA(Multi-Factor Authentication)
    パスワードに加えて別要素(例:ワンタイムコード等)を要求する認証方式。不正利用やアカウント乗っ取りのリスク低減に有用である。
  • SOC(Security Operations Center)/ CSIRT(Computer Security Incident Response Team)
    セキュリティ監視・インシデント対応を担う組織/チーム。本書では、検知・対応側との連携先の例として言及する。

攻撃モデル・リスク評価

  • Cyber Kill Chain
    攻撃を複数フェーズに分解して整理するモデル。本書では「攻撃チェーンの可視化」に利用する。
  • MITRE ATT&CK
    実攻撃に基づく戦術(Tactic)・技術(Technique)のナレッジベース。本書ではテスト観点の共通言語として利用する。
  • STRIDE
    脅威を 6 カテゴリ(Spoofing/Tampering/Repudiation/Information Disclosure/Denial of Service/Elevation of Privilege)に分類するフレームワーク。本書ではスコープ検討・設計段階の抜け漏れ防止に利用する。
  • DREAD
    リスク評価の観点(Damage/Reproducibility/Exploitability/Affected Users/Discoverability)を整理する枠組み。本書では「優先度付け」の一例として扱う。
  • CVSS(Common Vulnerability Scoring System)
    脆弱性の深刻度をスコアとして表現する仕組み。本書では DREAD と併用する例として言及する。
  • DFD(Data Flow Diagram)
    データの流れを可視化する図。STRIDE の適用対象(コンポーネント)を明確にする際に有用である。

標準・ガイドライン

  • OWASP(Open Worldwide Application Security Project)
    Web アプリケーションセキュリティに関するガイドラインやツールを公開するコミュニティ。本書では ASVS / WSTG / Top 10 などを参照する。
  • OWASP Top 10
    Web アプリケーションの代表的リスクを分類したリスト。コミュニケーションや優先度付けの入口として利用される。
  • OWASP API Security Top 10
    API の代表的リスクを分類したリスト。BOLA / BFLA などのカテゴリを含む。
  • ASVS(Application Security Verification Standard)
    Web アプリケーションのセキュリティ要件(何を満たすべきか)を体系化した標準。本書ではスコーピング、テスト設計、報告の対応付けに利用する。
  • WSTG(Web Security Testing Guide)
    Web アプリケーションのテスト手順(どのように検証するか)を体系化したガイド。本書では具体的な検証手順の参照として利用する。
  • CIS ベンチマーク(CIS Benchmarks)
    OS やクラウドサービス等のセキュリティベースラインを示すベンチマーク。本書ではクラウド設定評価の背景知識として言及する。

Web / API セキュリティ

  • HTTP
    リクエスト/レスポンスで通信するプロトコル。Pentest ではヘッダ・メソッド・ボディを読み解くことが前提となる。
  • HTTPS
    HTTP を TLS で保護したもの。本書では、プロキシによる HTTPS 復号(許可された範囲での観測)などの前提として扱う。
  • CA(Certificate Authority)
    証明書を発行する認証局。本書では、Burp Suite の CA 証明書をブラウザ/端末にインポートして HTTPS 通信を観測する文脈で言及する。
  • Cookie
    ブラウザの状態管理に利用される仕組み。属性(SecureHttpOnlySameSite 等)がセキュリティに直結する。
  • セッション(Session)
    認証状態などの「継続状態」を管理する仕組み。Cookie などと組み合わせて実現されることが多い。
  • CSRF(Cross-Site Request Forgery)
    ブラウザが Cookie を自動送信する性質を悪用し、ユーザの意図しない操作を成立させる攻撃。
  • XSS(Cross-Site Scripting)
    Web ページ上で攻撃者が用意したスクリプトが実行される状態。セッション情報の窃取や操作の自動化などに繋がる。
  • CORS(Cross-Origin Resource Sharing)
    ブラウザの同一生成元ポリシー(SOP)を補完し、クロスオリジンのアクセス許可を制御する仕組み。誤設定は情報漏えいの増幅要因となる。
  • SOP(Same-Origin Policy)
    ブラウザが異なるオリジン間の読み取りアクセスを制限するポリシー。CORS は SOP の例外を安全に許可するための仕組みである。
  • SameSite
    クロスサイト環境で Cookie を送信する条件を制御する属性。CSRF リスクに関係する。
  • SQL インジェクション(SQL Injection)
    入力値がクエリ構築に混入し、意図しない SQL が実行される状態。DB の情報漏えい・改ざんに繋がる。
  • IDOR(Insecure Direct Object Reference)
    参照 ID を変更することで他者のリソースにアクセスできる状態。API 文脈では BOLA と近い意味で扱われることが多い。
  • BOLA(Broken Object Level Authorization)
    オブジェクト単位の認可が破綻し、他者のオブジェクトにアクセスできる状態。API Security Top 10 で最重要のクラスとして扱われる。
  • BFLA(Broken Function Level Authorization)
    機能(エンドポイント)レベルの認可が破綻し、本来許可されない操作(例:管理者専用 API)が実行できてしまう状態。
  • RBAC(Role-Based Access Control)/ ABAC(Attribute-Based Access Control)
    RBAC はロール(役割)に基づいて許可を決めるモデル、ABAC はユーザ属性・リソース属性・環境属性などの条件に基づいて許可を決めるモデル。アクセス制御の設計・検証の前提となる。
  • Mass Assignment
    リクエストボディの想定外フィールドがサーバ側オブジェクトに自動バインディングされ、権限昇格や設定改変に繋がる状態。
  • Rate Limit(レート制限)
    一定時間あたりのリクエスト数などを制限する仕組み。認証試行や列挙攻撃への対策として重要である。
  • REST(Representational State Transfer)
    Web API 設計の代表的なスタイルの一つ。本書では REST API を中心に扱い、必要に応じて GraphQL にも言及する。
  • OpenAPI(Swagger)
    API の仕様(エンドポイント、スキーマ、認証スキーム等)を機械可読で記述する形式。攻撃面の抽出・テスト設計に利用できる。
  • GraphQL
    API のクエリ言語/実行基盤の一つ。クライアントが取得フィールドや関連データをクエリで指定できる点が特徴である。

JWT / OAuth2 / OIDC

  • JWT(JSON Web Token)
    ヘッダ・ペイロード・署名(または暗号化)からなるトークン形式。クレーム検証と署名検証が焦点となる。
  • クレーム(Claims)
    トークン内の属性情報(例:issaudsubexp)。信頼境界と検証条件を明確にする必要がある。
  • OAuth2
    認可のフレームワーク。クライアント、認可サーバ、リソースサーバ等のロールが登場する。
  • OIDC(OpenID Connect)
    OAuth2 をベースとした認証レイヤ。ID トークン(通常 JWT)を定義する。
  • IdP(Identity Provider / ID プロバイダ)
    認証情報を管理し、認証結果(例:OIDC の ID トークン発行など)を提供する主体。OAuth2 / OIDC の文脈では認可サーバとして実装されることが多い。
  • 認可サーバ(Authorization Server)
    クライアントに対して認可コードやトークンを発行するサーバ。OIDC では認証(ID トークン発行)も担う。
  • リソースサーバ(Resource Server)
    保護された API を提供し、アクセストークン等を検証してアクセス制御を行うサーバ。
  • 認証(Authentication)/ 認可(Authorization)
    「誰であるか」を確認するのが認証、「何をしてよいか」を制御するのが認可。本書では混同しないことを重視する。
  • Authorization Code フロー
    認可コードを経由してトークンを取得する代表的フロー。本書では主にこのフロー(PKCE を含む)を前提とする。
  • PKCE(Proof Key for Code Exchange)
    認可コードの奪取に対する保護を強化する仕組み。特に公開クライアント(SPA/モバイル)で重要となる。
  • アクセストークン(Access Token)
    リソースサーバに対する API アクセスに用いるトークン。権限(スコープ)と有効期限の設計が重要である。
  • ID トークン(ID Token)
    認証結果(ID)を表現するトークン。クレーム(iss/aud/nonce 等)の検証が焦点となる。
  • スコープ(Scope)
    トークンに紐づく権限範囲。過剰権限は API 側のリスクに直結する。
  • リダイレクト URI(redirect_uri)
    認可サーバが応答を返す先。検証不備は認可コード/トークンの奪取に繋がる。

モバイル

  • SharedPreferences(Android)/ UserDefaults(iOS)
    アプリの設定値などを保存するための標準的な保存先。機密情報(トークン、鍵等)を平文で保存すると漏えいリスクが高い。
  • Android Keystore / iOS Keychain
    OS が提供するセキュアストレージ(鍵管理を含む)。機密情報(トークン、鍵等)の保存先として利用される。
  • android:allowBackup
    Android アプリのバックアップ可否を制御する設定。許可設定や端末状態により、アプリデータがバックアップ経路から取得可能となりうる。

クラウド・インフラ

  • AWS
    クラウドサービス。本書では IAM / VPC / S3 / IMDS を中心に扱う。
  • IAM(Identity and Access Management)
    AWS の認証・認可の中核。ユーザ/ロール/ポリシーにより権限を制御する。
  • VPC(Virtual Private Cloud)
    AWS 上の仮想ネットワーク。サブネット、ルートテーブル、インターネットゲートウェイ(IGW)、NAT ゲートウェイ、セキュリティグループ等で構成される。
  • S3
    オブジェクトストレージ。公開設定やアクセス制御の誤りが情報漏えいに直結する。
  • SSRF(Server-Side Request Forgery)
    サーバ側から任意の URL にリクエストできる状態。クラウド環境では IMDS 到達を通じて権限奪取に繋がりうる。
  • IMDS(Instance Metadata Service)
    EC2 内部から到達できるメタデータ取得機構。IMDSv1 は SSRF から悪用されやすい。
  • コンテナ
    アプリケーション実行環境の分離手法。設定ミス(特権付与、ソケット公開等)がホスト侵害に繋がる場合がある。
  • --privileged
    Docker の特権コンテナ。隔離が弱まり、ホストへのエスケープリスクが高まる。
  • /var/run/docker.sock
    Docker デーモンの制御ソケット。コンテナ内から操作できると、ホスト権限取得に繋がりうる。
  • SUID/SGID
    実行時の権限を昇格させる Unix パーミッション。誤設定はローカル権限昇格に利用されうる。
  • sudo
    特定コマンドの権限昇格を許可する仕組み。不適切な許可設定は権限昇格に直結する。

ツール(本書で言及する代表例)

  • Burp Suite
    Web/API を対象としたプロキシ型テストプラットフォーム。Proxy/Target/Repeater/Intruder などのコンポーネントを利用する。
  • OWASP ZAP
    Web/API を対象としたオープンソースのプロキシ型テストツール。Burp Suite の代替として言及する。
  • PortSwigger Web Security Academy(Burp Academy)
    Web セキュリティ学習プラットフォーム。本書では Burp Suite を用いたハンズオンの参照先として言及する。
  • MobSF
    モバイルアプリ(Android/iOS)の静的・動的解析に利用されるツール。本書ではモバイル Pentest の導入として扱う。
  • Frida / objection
    アプリのランタイムにフックして挙動を観測・改変するためのツール。証明書ピンニングの検証などで利用される。
  • Prowler / ScoutSuite
    クラウド設定の監査(ミスコンフィグ検出)に利用されるツール。本書ではクラウド評価の補助として扱う。
  • DVWA(Damn Vulnerable Web Application)
    意図的に脆弱性を含む Web アプリケーション。基礎的な Web 脆弱性の演習環境として利用する。
  • OWASP Juice Shop
    意図的に脆弱性を含む Web アプリケーション。Web セキュリティの演習環境として利用する。
  • OWASP crAPI
    意図的に脆弱性を含む API。API セキュリティの演習環境として利用する。
  • GTFOBins
    Unix 系の標準コマンド/バイナリを悪用し、権限昇格や制限回避に繋げるテクニック集。本書では Linux 権限昇格の補助情報として言及する。