From e6bb59df86377455a953298a2bb402e1c62156a2 Mon Sep 17 00:00:00 2001 From: posimai Date: Mon, 20 Apr 2026 13:39:31 +0900 Subject: [PATCH] =?UTF-8?q?feat(posimai-sc):=20=E5=85=A8=E5=8D=98=E5=85=83?= =?UTF-8?q?=E3=81=AB=E5=88=9D=E5=AD=A6=E8=80=85=E5=90=91=E3=81=91=E3=83=96?= =?UTF-8?q?=E3=83=AD=E3=83=83=E3=82=AF=E3=80=81=E3=83=9B=E3=83=BC=E3=83=A0?= =?UTF-8?q?=E6=A1=88=E5=86=85=E3=80=81=E6=A4=9C=E7=B4=A2=E3=82=B7=E3=83=A7?= =?UTF-8?q?=E3=83=BC=E3=83=88=E3=82=AB=E3=83=83=E3=83=88=E3=80=81SW=20v3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Made-with: Cursor --- posimai-sc/index.html | 5 ++++ posimai-sc/js/app.js | 9 ++++++ posimai-sc/js/data/categories.js | 50 ++++++++++++++++---------------- posimai-sc/sw.js | 2 +- 4 files changed, 40 insertions(+), 26 deletions(-) diff --git a/posimai-sc/index.html b/posimai-sc/index.html index cb6f43f4..2b082ec0 100644 --- a/posimai-sc/index.html +++ b/posimai-sc/index.html @@ -130,6 +130,10 @@ header{display:flex;align-items:center;justify-content:space-between;padding:0 1 .home-hero h1{font-size:26px;font-weight:300;letter-spacing:-.02em;line-height:1.2} .home-hero h1 span{color:var(--accent)} .home-hero p{font-size:13px;color:var(--text2);margin-top:8px;line-height:1.7} +.home-hint{font-size:12px;color:var(--text3);margin-top:16px;line-height:1.65;max-width:460px;margin-inline:auto;padding:10px 14px;text-align:left;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface2)} +.home-hint code{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--text2);background:var(--surface);padding:2px 6px;border-radius:4px;border:1px solid var(--border)} +.home-hint strong{color:var(--text2);font-weight:600} +.home-hint kbd{font-family:'JetBrains Mono',monospace;font-size:10px;padding:2px 5px;border:1px solid var(--border);border-radius:4px;background:var(--surface)} .stats-row{display:flex;gap:10px;justify-content:center;margin-top:20px;flex-wrap:wrap} .stat-card{background:var(--surface);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:var(--radius);padding:14px 22px;text-align:center} .stat-val{font-family:'JetBrains Mono',monospace;font-size:22px;font-weight:500;color:var(--accent)} @@ -413,6 +417,7 @@ header{display:flex;align-items:center;justify-content:space-between;padding:0 1

情報処理安全確保支援士

セキュリティの基礎から攻撃手法・法規まで、AM2試験に対応した31単元を体系的に学習します。開発者の視点から「なぜそうなのか」を理解しましょう。

+

各単元の概念タブの先頭に初学者向けの短い用語ガイドを置いています。ブックマーク用に URL 例: ?unit=s01(単元ID)。サイドバーが開いているとき / で単元検索にフォーカスできます。

diff --git a/posimai-sc/js/app.js b/posimai-sc/js/app.js index 79f75239..c6d4aada 100644 --- a/posimai-sc/js/app.js +++ b/posimai-sc/js/app.js @@ -77,6 +77,15 @@ document.addEventListener('alpine:init', () => { if('serviceWorker' in navigator){ navigator.serviceWorker.register('/sw.js').catch(()=>{}); } + document.addEventListener('keydown',(e)=>{ + const t=e.target; + if(t&&(t.tagName==='INPUT'||t.tagName==='TEXTAREA'||t.isContentEditable)) return; + if(e.key==='/'&&!e.ctrlKey&&!e.metaKey&&!e.altKey){ + e.preventDefault(); + const si=document.querySelector('.search-input'); + if(si) si.focus(); + } + }); }, syncUnitToUrl(){ diff --git a/posimai-sc/js/data/categories.js b/posimai-sc/js/data/categories.js index e71206c2..c9d1d7f7 100644 --- a/posimai-sc/js/data/categories.js +++ b/posimai-sc/js/data/categories.js @@ -128,7 +128,7 @@ export const CATEGORIES = [ ] }, { id:'s07', num:'S07', title:'公開鍵暗号・デジタル署名', freq:'high', diff:2, - concept:`

公開鍵暗号(非対称暗号)は公開鍵と秘密鍵のペアを使います。公開鍵で暗号化→秘密鍵で復号(機密性)、秘密鍵で署名→公開鍵で検証(完全性・否認防止)。

送信者
秘密鍵で署名
署名付き
メッセージ
受信者
公開鍵で検証
主要アルゴリズム
RSA:素因数分解の困難性に基づく。2048ビット以上が現在の最低基準
ECDSA/EdDSA:楕円曲線暗号。RSAより短い鍵で同等の安全性
DH/ECDH:鍵交換アルゴリズム(暗号化ではなく鍵合意)

デジタル署名の手順:①メッセージのハッシュ値を計算②秘密鍵でハッシュを暗号化(=署名)③受信側は公開鍵で署名を復号しハッシュと照合。改ざんと否認を同時に防ぎます。

`, + concept:`

公開鍵暗号(非対称暗号)は公開鍵と秘密鍵のペアを使います。公開鍵で暗号化→秘密鍵で復号(機密性)、秘密鍵で署名→公開鍵で検証(完全性・否認防止)。

初学者向け:鍵の向き
秘密鍵:自分だけが持ち、漏らしてはいけない鍵。
公開鍵:誰に渡してもよく、暗号化や署名の検証に使う。
覚え方:「暗号化は相手の公開鍵」「署名は自分の秘密鍵で作る」と整理すると混同しにくい。
送信者
秘密鍵で署名
署名付き
メッセージ
受信者
公開鍵で検証
主要アルゴリズム
RSA:素因数分解の困難性に基づく。2048ビット以上が現在の最低基準
ECDSA/EdDSA:楕円曲線暗号。RSAより短い鍵で同等の安全性
DH/ECDH:鍵交換アルゴリズム(暗号化ではなく鍵合意)

デジタル署名の手順:①メッセージのハッシュ値を計算②秘密鍵でハッシュを暗号化(=署名)③受信側は公開鍵で署名を復号しハッシュと照合。改ざんと否認を同時に防ぎます。

`, examtips:[ '暗号化と署名で使う鍵の向きが逆なことを確実に理解する。暗号化は「受信者の公開鍵」、署名は「送信者の秘密鍵」。', 'RSAの最低鍵長は2048ビット(2024年現在)。1024ビットは脆弱で不推奨。', @@ -151,7 +151,7 @@ export const CATEGORIES = [ ] }, { id:'s08', num:'S08', title:'ハッシュ関数', freq:'high', diff:1, - concept:`

ハッシュ関数は任意のデータから固定長のダイジェスト(ハッシュ値)を生成する一方向関数です。同じ入力から常に同じ出力が得られ、逆算は(計算量的に)不可能です。

主要アルゴリズムと出力長
MD5:128ビット。衝突脆弱性あり。使用禁止(整合性確認のみ残存)
SHA-1:160ビット。衝突脆弱性あり。証明書用途では使用禁止
SHA-256:256ビット。現在の標準。Bitcoinでも使用
SHA-3:Keccakアルゴリズム。SHA-2と並行して使える代替

ハッシュの3性質:①衝突耐性(同じハッシュを持つ別データを作れない)②第二原像耐性(ハッシュ値から元データを求められない)③雪崩効果(入力が1ビット変わると出力が大きく変わる)

パスワード保存にはハッシュにソルト(ランダム値)を加えることでレインボーテーブル攻撃を防ぎます。bcrypt・Argon2が推奨。

`, + concept:`

ハッシュ関数は任意のデータから固定長のダイジェスト(ハッシュ値)を生成する一方向関数です。同じ入力から常に同じ出力が得られ、逆算は(計算量的に)不可能です。

初学者向け:ハッシュのイメージ
長いデータを固定長の「指紋」に圧縮したもの。元に戻せない一方向。
パスワード保存では平文を置かずハッシュ+ソルトで、同じパスワードでも別の指紋にする。
主要アルゴリズムと出力長
MD5:128ビット。衝突脆弱性あり。使用禁止(整合性確認のみ残存)
SHA-1:160ビット。衝突脆弱性あり。証明書用途では使用禁止
SHA-256:256ビット。現在の標準。Bitcoinでも使用
SHA-3:Keccakアルゴリズム。SHA-2と並行して使える代替

ハッシュの3性質:①衝突耐性(同じハッシュを持つ別データを作れない)②第二原像耐性(ハッシュ値から元データを求められない)③雪崩効果(入力が1ビット変わると出力が大きく変わる)

パスワード保存にはハッシュにソルト(ランダム値)を加えることでレインボーテーブル攻撃を防ぎます。bcrypt・Argon2が推奨。

`, examtips:[ 'MD5・SHA-1は衝突脆弱性が実証されており現在は安全でない。SHA-256以上を使う。', 'ハッシュは一方向(復号不可)。「ハッシュ値からパスワードを復元」はできない→レインボーテーブルは元の値のハッシュを事前計算して照合するもの。', @@ -172,7 +172,7 @@ export const CATEGORIES = [ ] }, { id:'s09', num:'S09', title:'PKI・TLS', freq:'high', diff:2, - concept:`

PKI(Public Key Infrastructure)は公開鍵の正当性を証明する仕組みです。中核となるのが認証局(CA)が発行するデジタル証明書(X.509)です。

CA
認証局
証明書
公開鍵+CAの署名
ブラウザ
CAの公開鍵で検証

TLS 1.3のハンドシェイク:①サーバ証明書を送る②クライアントがCAチェーンを検証③ECDHで共通鍵を合意④AES-GCMで通信開始。開発者にとってHTTPS=TLSは日常的な技術です。

証明書の失効確認
CRL(証明書失効リスト):失効した証明書のリスト。定期更新
OCSP(Online Certificate Status Protocol):リアルタイムで1証明書の状態を確認
OCSP Stapling:サーバ自身が失効情報をキャッシュしてクライアントに渡す
`, + concept:`

PKI(Public Key Infrastructure)は公開鍵の正当性を証明する仕組みです。中核となるのが認証局(CA)が発行するデジタル証明書(X.509)です。

初学者向け:HTTPS・TLS
ブラウザとサーバのあいだをTLSで保護した通信が HTTPS。CAが「この公開鍵は本物のサーバのもの」と証明書で保証するイメージ。
CA
認証局
証明書
公開鍵+CAの署名
ブラウザ
CAの公開鍵で検証

TLS 1.3のハンドシェイク:①サーバ証明書を送る②クライアントがCAチェーンを検証③ECDHで共通鍵を合意④AES-GCMで通信開始。開発者にとってHTTPS=TLSは日常的な技術です。

証明書の失効確認
CRL(証明書失効リスト):失効した証明書のリスト。定期更新
OCSP(Online Certificate Status Protocol):リアルタイムで1証明書の状態を確認
OCSP Stapling:サーバ自身が失効情報をキャッシュしてクライアントに渡す
`, examtips:[ 'ルートCA→中間CA→サーバ証明書のチェーン(信頼の連鎖)を理解する。ブラウザはルートCAを信頼リストで持つ。', 'TLS1.2と1.3の違い:TLS1.3はハンドシェイクが1-RTTに短縮、前方秘匿性(PFS)がデフォルト。', @@ -195,7 +195,7 @@ export const CATEGORIES = [ ]}, { id:'network', label:'ネットワーク防御', icon:'network', units:[ { id:'s10', num:'S10', title:'ファイアウォール・DMZ', freq:'high', diff:2, - concept:`

ファイアウォールはネットワーク境界でトラフィックをフィルタリングします。DMZ(非武装地帯)はインターネットと内部ネットワークの間に置く中間ゾーンで、Webサーバ等の公開サービスを置きます。

インターネット(外部)不特定多数のアクセス
DMZ(非武装地帯)Webサーバ・DNSサーバ・メールサーバ
内部ネットワーク社内PC・DBサーバ・ファイルサーバ
ファイアウォールの種類
パケットフィルタリング:IPアドレス・ポートで許可/拒否。高速だがアプリ層の攻撃に弱い
SPI(ステートフルパケットインスペクション):コネクション状態を追跡。戻りパケットを自動許可
アプリケーションゲートウェイ:プロキシとして動作。アプリ層まで検査
`, + concept:`

ファイアウォールはネットワーク境界でトラフィックをフィルタリングします。DMZ(非武装地帯)はインターネットと内部ネットワークの間に置く中間ゾーンで、Webサーバ等の公開サービスを置きます。

初学者向け:DMZのイメージ
インターネットと社内の中間に置くゾーン。外部公開のWebだけここに置き、DBなど重要データは内側に隔離する考え方。
インターネット(外部)不特定多数のアクセス
DMZ(非武装地帯)Webサーバ・DNSサーバ・メールサーバ
内部ネットワーク社内PC・DBサーバ・ファイルサーバ
ファイアウォールの種類
パケットフィルタリング:IPアドレス・ポートで許可/拒否。高速だがアプリ層の攻撃に弱い
SPI(ステートフルパケットインスペクション):コネクション状態を追跡。戻りパケットを自動許可
アプリケーションゲートウェイ:プロキシとして動作。アプリ層まで検査
`, examtips:[ 'DMZにはWebサーバ・メールサーバを置く。DBサーバはDMZではなく内部ネットワークに置く(頻出引っかけ)。', 'デフォルト拒否(ホワイトリスト型)が原則。「明示的に許可されていないものは拒否」。', @@ -215,7 +215,7 @@ export const CATEGORIES = [ ] }, { id:'s11', num:'S11', title:'IDS・IPS・WAF', freq:'high', diff:2, - concept:`

ファイアウォールを補完するセキュリティデバイスです。IDSは検知のみ、IPSは検知して遮断します。WAFはWebアプリケーション専用でHTTPレベルの攻撃を防ぎます。

検知方式
シグネチャ型(不正検知):既知の攻撃パターンと照合。既知攻撃に強い・ゼロデイに弱い
アノマリ型(異常検知):正常な行動からの逸脱を検知。未知攻撃も検知可能・誤検知が多い

WAFの導入パターン:リバースプロキシ型が最も一般的。クラウドWAFはCDNと統合されることも多い。SQLインジェクション・XSS・CSRFを主に防ぎます。誤検知(FP)のチューニングが運用上の課題です。

`, + concept:`

ファイアウォールを補完するセキュリティデバイスです。IDSは検知のみ、IPSは検知して遮断します。WAFはWebアプリケーション専用でHTTPレベルの攻撃を防ぎます。

初学者向け:IDS / IPS / WAF
IDS=検知して知らせる。IPS=検知して遮断もする(通信の経路上に置く)。WAFはWebアプリ専用のフィルタ(HTTPの中身を見る)。
検知方式
シグネチャ型(不正検知):既知の攻撃パターンと照合。既知攻撃に強い・ゼロデイに弱い
アノマリ型(異常検知):正常な行動からの逸脱を検知。未知攻撃も検知可能・誤検知が多い

WAFの導入パターン:リバースプロキシ型が最も一般的。クラウドWAFはCDNと統合されることも多い。SQLインジェクション・XSS・CSRFを主に防ぎます。誤検知(FP)のチューニングが運用上の課題です。

`, examtips:[ 'IDS(検知のみ)とIPS(検知+遮断)の違いは必須。「遮断」のワードがあればIPS。', 'シグネチャ型はゼロデイ脆弱性の攻撃を検知できない。アノマリ型は未知攻撃を検知できるが誤検知率が高い。', @@ -235,7 +235,7 @@ export const CATEGORIES = [ ] }, { id:'s12', num:'S12', title:'VPN', freq:'mid', diff:2, - concept:`

VPN(Virtual Private Network)はパブリックネットワーク上に暗号化された仮想トンネルを作り、安全な通信路を提供します。

主なVPN方式
IPsec-VPN:L3でパケット全体を暗号化。ESP/AHプロトコル。拠点間接続に多い
SSL/TLS-VPN:L5/7でHTTPS上にトンネル。ブラウザから利用可能。リモートアクセスに多い
WireGuard:最新の軽量プロトコル。ChaCha20/Poly1305を使用

IPsecの2モード:トランスポートモード(ペイロードのみ暗号化)とトンネルモード(パケット全体を暗号化して新しいIPヘッダを付与)。拠点間VPNではトンネルモードが一般的です。

`, + concept:`

VPN(Virtual Private Network)はパブリックネットワーク上に暗号化された仮想トンネルを作り、安全な通信路を提供します。

初学者向け:VPN
公衆回線の上に仮想の専用トンネルを作り、中身を暗号化して送る。在宅から社内へ、拠点同士の接続などで使うイメージ。
主なVPN方式
IPsec-VPN:L3でパケット全体を暗号化。ESP/AHプロトコル。拠点間接続に多い
SSL/TLS-VPN:L5/7でHTTPS上にトンネル。ブラウザから利用可能。リモートアクセスに多い
WireGuard:最新の軽量プロトコル。ChaCha20/Poly1305を使用

IPsecの2モード:トランスポートモード(ペイロードのみ暗号化)とトンネルモード(パケット全体を暗号化して新しいIPヘッダを付与)。拠点間VPNではトンネルモードが一般的です。

`, examtips:[ 'IPsec-VPNはL3(ネットワーク層)、SSL-VPNはL5以上(セッション/アプリ層)での動作という層の違いが問われる。', 'IPsecのESP(Encapsulating Security Payload)は暗号化と認証の両方を提供。AH(Authentication Header)は認証のみ(暗号化なし)。', @@ -255,7 +255,7 @@ export const CATEGORIES = [ ] }, { id:'s13', num:'S13', title:'DNSセキュリティ・メールセキュリティ', freq:'high', diff:2, - concept:`

DNSとメールはインターネットの基盤であり、攻撃の標的になりやすいプロトコルです。

DNS攻撃と対策
DNSキャッシュポイズニング:偽のDNS応答をキャッシュに送り込む→DNSSEC・ランダムポートで対策
DNSハイジャック:DNSサーバ自体を乗っ取る→DNSSEC・監視
DNSSEC:DNSレスポンスにデジタル署名を付与し改ざんを検知
メール認証技術
SPF(Sender Policy Framework):送信元IPをDNSで検証。なりすましドメイン対策
DKIM(DomainKeys Identified Mail):メールヘッダにデジタル署名。改ざん検知
DMARC:SPF/DKIMの結果に基づいて受信側の処理ポリシーを指定(拒否・隔離)
`, + concept:`

DNSとメールはインターネットの基盤であり、攻撃の標的になりやすいプロトコルです。

初学者向け:DNSとメール認証
DNSは名前をIPに変える仕組み(改ざんされると偽サイトに誘導される)。SPF・DKIM・DMARCは「このメールは本当にそのドメインからか」を確認するためのセット。
DNS攻撃と対策
DNSキャッシュポイズニング:偽のDNS応答をキャッシュに送り込む→DNSSEC・ランダムポートで対策
DNSハイジャック:DNSサーバ自体を乗っ取る→DNSSEC・監視
DNSSEC:DNSレスポンスにデジタル署名を付与し改ざんを検知
メール認証技術
SPF(Sender Policy Framework):送信元IPをDNSで検証。なりすましドメイン対策
DKIM(DomainKeys Identified Mail):メールヘッダにデジタル署名。改ざん検知
DMARC:SPF/DKIMの結果に基づいて受信側の処理ポリシーを指定(拒否・隔離)
`, examtips:[ 'SPF・DKIM・DMARCはセットで覚える。SPFはIP検証、DKIMは署名、DMARCはポリシー(どう処理するか)。', 'DNSキャッシュポイズニングはカミンスキー攻撃が有名。ランダムポート番号とTXID乱数化が対策。', @@ -276,7 +276,7 @@ export const CATEGORIES = [ ] }, { id:'s25', num:'S25', title:'無線LAN セキュリティ', freq:'high', diff:2, - concept:`

無線LANは電波を使うため盗聴・なりすましへの対策が必須です。暗号化方式は世代を経るごとに強化されてきました。

無線LAN暗号化方式の変遷
WEP(1997):RC4暗号・IV再利用の脆弱性あり。現在は使用禁止
WPA(2003):TKIP採用。WEPの緊急改善版
WPA2(2004):CCMP/AES採用。現在の最低基準
WPA3(2018):SAE(Simultaneous Authentication of Equals)で辞書攻撃対策・前方秘匿性
企業向け認証(802.1X)
個人モード(PSK):事前共有鍵。家庭・小規模向け
企業モード(802.1X):RADIUS サーバが各ユーザーを認証
 EAP-TLS:証明書ベース認証。最も安全
 PEAP:トンネル内でパスワード認証
 EAP-TTLS:PEAPの互換版
端末
Supplicant
AP
Authenticator
RADIUS
Auth Server

主な攻撃:悪意あるAP(Evil Twin・偽AP)で中間者攻撃、WPS PINブルートフォース、PMKIDを使ったオフライン辞書攻撃。対策はWPA3・証明書認証・管理フレーム保護(PMF/802.11w)。

`, + concept:`

無線LANは電波を使うため盗聴・なりすましへの対策が必須です。暗号化方式は世代を経るごとに強化されてきました。

初学者向け:無線LAN
有線と違い電波は傍受されやすい。古い WEP ではなく WPA2/WPA3 など現行の暗号化を使う。企業では802.1X+RADIUSで利用者ごとに認証することもある。
無線LAN暗号化方式の変遷
WEP(1997):RC4暗号・IV再利用の脆弱性あり。現在は使用禁止
WPA(2003):TKIP採用。WEPの緊急改善版
WPA2(2004):CCMP/AES採用。現在の最低基準
WPA3(2018):SAE(Simultaneous Authentication of Equals)で辞書攻撃対策・前方秘匿性
企業向け認証(802.1X)
個人モード(PSK):事前共有鍵。家庭・小規模向け
企業モード(802.1X):RADIUS サーバが各ユーザーを認証
 EAP-TLS:証明書ベース認証。最も安全
 PEAP:トンネル内でパスワード認証
 EAP-TTLS:PEAPの互換版
端末
Supplicant
AP
Authenticator
RADIUS
Auth Server

主な攻撃:悪意あるAP(Evil Twin・偽AP)で中間者攻撃、WPS PINブルートフォース、PMKIDを使ったオフライン辞書攻撃。対策はWPA3・証明書認証・管理フレーム保護(PMF/802.11w)。

`, examtips:[ 'WEP は IV(初期化ベクタ)の再利用で解読される。試験では「使用禁止」の選択肢として正答になりやすい。', 'WPA3 の SAE(ドラゴンフライ鍵交換)は辞書攻撃耐性と前方秘匿性を提供。PSK より安全な認証フロー。', @@ -299,7 +299,7 @@ export const CATEGORIES = [ ]}, { id:'attacks', label:'攻撃手法と対策', icon:'sword', units:[ { id:'s14', num:'S14', title:'マルウェア', freq:'high', diff:1, - concept:`

マルウェアはMalicious Softwareの略で、悪意のあるプログラムの総称です。種類と感染経路・対策を整理します。

主なマルウェアの種類
ウイルス:他のプログラムに寄生して感染拡大
ワーム:ネットワークを自力で伝播(ホスト不要)
トロイの木馬:正常なソフトに見せかけて侵入
ランサムウェア:ファイルを暗号化し身代金を要求
スパイウェア:情報を窃取して送信
ルートキット:管理者権限を奪い存在を隠蔽
ボット:C&Cサーバの指令でDDoS等に悪用

検知方式:シグネチャ型(パターン照合)・ビヘイビア型(振る舞い検知)・サンドボックス(隔離環境で動作確認)。ゼロデイマルウェアにはシグネチャが効かないためビヘイビア型が重要です。

`, + concept:`

マルウェアはMalicious Softwareの略で、悪意のあるプログラムの総称です。種類と感染経路・対策を整理します。

初学者向け:マルウェア
マルウェア=悪意のあるプログラムの総称。ウイルス・ワーム等の名前は「どう広がるか」が違うイメージで整理すると覚えやすい。
主なマルウェアの種類
ウイルス:他のプログラムに寄生して感染拡大
ワーム:ネットワークを自力で伝播(ホスト不要)
トロイの木馬:正常なソフトに見せかけて侵入
ランサムウェア:ファイルを暗号化し身代金を要求
スパイウェア:情報を窃取して送信
ルートキット:管理者権限を奪い存在を隠蔽
ボット:C&Cサーバの指令でDDoS等に悪用

検知方式:シグネチャ型(パターン照合)・ビヘイビア型(振る舞い検知)・サンドボックス(隔離環境で動作確認)。ゼロデイマルウェアにはシグネチャが効かないためビヘイビア型が重要です。

`, examtips:[ 'ランサムウェア対策の3-2-1ルール:3つのバックアップ・2種類のメディア・1つはオフライン。試験でも対策として正答になりやすい。', 'ルートキットは感染後にOS自体を改ざんして自分を隠す。通常のアンチウイルスで検知しにくい。', @@ -320,7 +320,7 @@ export const CATEGORIES = [ ] }, { id:'s15', num:'S15', title:'Webアプリケーション攻撃', freq:'high', diff:2, - concept:`

Webアプリ開発者が必ず知るべき攻撃パターンです。OWASP Top 10の常連が試験でも頻出です。

主要な攻撃と対策
SQLインジェクション:DB操作を注入。→プリペアドステートメント・入力検証
XSS(クロスサイトスクリプティング):悪意のあるスクリプトを挿入→エスケープ・CSP
CSRF(クロスサイトリクエストフォージェリ):ログイン中ユーザーに意図しないリクエスト→CSRFトークン・Same-Site Cookie
パストラバーサル:../でディレクトリを遡り任意ファイルを読む→パス正規化・バリデーション
コマンドインジェクション:OSコマンドを注入→外部コマンド使用禁止

XSSの種類:反射型(URLパラメータ経由)・格納型(DBに保存されたスクリプト)・DOMベース型(クライアントサイドJS処理)。試験では格納型が最も危険とされる。

`, + concept:`

Webアプリ開発者が必ず知るべき攻撃パターンです。OWASP Top 10の常連が試験でも頻出です。

初学者向け:Web攻撃の心構え
入力と出力を信頼しない。SQLは文とデータを分離、XSSは表示前にエスケープ、CSRFは偽リクエスト対策、と役割が分かれている。
主要な攻撃と対策
SQLインジェクション:DB操作を注入。→プリペアドステートメント・入力検証
XSS(クロスサイトスクリプティング):悪意のあるスクリプトを挿入→エスケープ・CSP
CSRF(クロスサイトリクエストフォージェリ):ログイン中ユーザーに意図しないリクエスト→CSRFトークン・Same-Site Cookie
パストラバーサル:../でディレクトリを遡り任意ファイルを読む→パス正規化・バリデーション
コマンドインジェクション:OSコマンドを注入→外部コマンド使用禁止

XSSの種類:反射型(URLパラメータ経由)・格納型(DBに保存されたスクリプト)・DOMベース型(クライアントサイドJS処理)。試験では格納型が最も危険とされる。

`, examtips:[ 'SQLインジェクションの対策は「プリペアドステートメント(バインド変数)」が正答になる。エスケープだけでは不十分な場合がある。', 'XSS対策:出力時のHTMLエスケープ(< > 等)+Content Security Policy(CSP)ヘッダ。', @@ -341,7 +341,7 @@ export const CATEGORIES = [ ] }, { id:'s16', num:'S16', title:'パスワード攻撃・フィッシング', freq:'high', diff:1, - concept:`

パスワードとフィッシングはエンドユーザーを標的にした攻撃であり、技術的対策と人的対策の両方が必要です。

パスワード攻撃の種類
ブルートフォース:全パターンを試す。アカウントロックで緩和
辞書攻撃:よく使われる単語リストを試す
パスワードスプレー:多アカウントに対し少数のPWを試す(ロック回避)
クレデンシャルスタッフィング:他サービスの漏洩リストを転用
レインボーテーブル:事前計算ハッシュとの照合。ソルトで無効化

フィッシング:正規サービスを偽った詐欺メールやサイトで認証情報を奪う。スピアフィッシング(特定の個人・組織を狙う)はターゲットを調査して巧妙な文面を作成します。ビジネスメール詐欺(BEC)はCEOや取引先を名乗り送金指示をするものです。

`, + concept:`

パスワードとフィッシングはエンドユーザーを標的にした攻撃であり、技術的対策と人的対策の両方が必要です。

初学者向け:この単元の焦点
ログイン突破の手口(総当たり等)と、人を騙してパスワードを聞き出すフィッシングは別枠で覚える。後者は教育・手続きが効く。
パスワード攻撃の種類
ブルートフォース:全パターンを試す。アカウントロックで緩和
辞書攻撃:よく使われる単語リストを試す
パスワードスプレー:多アカウントに対し少数のPWを試す(ロック回避)
クレデンシャルスタッフィング:他サービスの漏洩リストを転用
レインボーテーブル:事前計算ハッシュとの照合。ソルトで無効化

フィッシング:正規サービスを偽った詐欺メールやサイトで認証情報を奪う。スピアフィッシング(特定の個人・組織を狙う)はターゲットを調査して巧妙な文面を作成します。ビジネスメール詐欺(BEC)はCEOや取引先を名乗り送金指示をするものです。

`, examtips:[ 'クレデンシャルスタッフィングは「他サービスで漏洩したIDとPWをそのまま別サービスに使う」。パスワードの使い回しが被害を広げる。', 'パスワードスプレー攻撃:少数のPW("Spring2024!"等)を多数のアカウントに試す。アカウントロックを回避するための手法。', @@ -362,7 +362,7 @@ export const CATEGORIES = [ ] }, { id:'s17', num:'S17', title:'DoS/DDoS・APT', freq:'high', diff:2, - concept:`

DoS/DDoSはサービスを停止させる攻撃(可用性の侵害)、APT(Advanced Persistent Threat)は国家レベルの高度な標的型持続攻撃です。

DDoS攻撃の種類
Volumetric(帯域消費型):大量トラフィックで帯域を埋める(UDP flood・ICMP flood)
Protocol(プロトコル型):SYN floodでサーバリソースを枯渇させる
Application(アプリ型):HTTP floodでWebサーバのCPUを使い切る
Amplification(増幅型):DNSやNTPを踏み台にして大量レスポンスを標的に向ける

APTはKill Chain(偵察→侵入→水平移動→持続化→情報窃取)で進む多段階攻撃です。MITRE ATT&CK フレームワークはATTのTTPを体系化したもので、防御側が攻撃者の行動を予測するために使います。

`, + concept:`

DoS/DDoSはサービスを停止させる攻撃(可用性の侵害)、APT(Advanced Persistent Threat)は国家レベルの高度な標的型持続攻撃です。

初学者向け:DoSとAPT
DoS/DDoSは「サービスを詰まらせて使えなくする」。APTは「狙いを定め長期で潜伏する」攻撃として試験で対比されやすい。
DDoS攻撃の種類
Volumetric(帯域消費型):大量トラフィックで帯域を埋める(UDP flood・ICMP flood)
Protocol(プロトコル型):SYN floodでサーバリソースを枯渇させる
Application(アプリ型):HTTP floodでWebサーバのCPUを使い切る
Amplification(増幅型):DNSやNTPを踏み台にして大量レスポンスを標的に向ける

APTはKill Chain(偵察→侵入→水平移動→持続化→情報窃取)で進む多段階攻撃です。MITRE ATT&CK フレームワークはATTのTTPを体系化したもので、防御側が攻撃者の行動を予測するために使います。

`, examtips:[ 'SYN flood:TCPのSYNパケットだけ大量送信しACKを返さない。サーバはhalf-open接続を大量保持しリソース枯渇。SYN Cookie/Proxyで対策。', 'DNSアンプ攻撃:小さいDNSクエリに大きいレスポンスが返ることを悪用。送信元IPを詐称して標的に大量レスポンスを向ける。', @@ -382,7 +382,7 @@ export const CATEGORIES = [ ] }, { id:'s18', num:'S18', title:'脆弱性管理', freq:'mid', diff:2, - concept:`

脆弱性管理はソフトウェアの欠陥を発見・評価・修正するサイクルです。ゼロデイ脆弱性は特に対応が難しく、多層防御が重要です。

脆弱性評価・管理の仕組み
CVE(Common Vulnerabilities and Exposures):脆弱性の識別番号(例:CVE-2021-44228)
CVSS(Common Vulnerability Scoring System):脆弱性の深刻度スコア(0.0〜10.0)
NVD(National Vulnerability Database):米NISTが管理するCVEデータベース
JVN(Japan Vulnerability Notes):日本のIPAが運用する脆弱性情報データベース

脆弱性の種類:設計上の欠陥(CSRF等の仕様設計)・実装上のバグ(バッファオーバーフロー等)・設定ミス(デフォルトパスワード・不要サービスの放置)。設定ミスは最もよくある脆弱性の源です。

`, + concept:`

脆弱性管理はソフトウェアの欠陥を発見・評価・修正するサイクルです。ゼロデイ脆弱性は特に対応が難しく、多層防御が重要です。

初学者向け:CVEとCVSS
CVEは脆弱性の通し番号。CVSSは深刻さを点数化した指標。パッチの優先順位付けに使われるイメージ。
脆弱性評価・管理の仕組み
CVE(Common Vulnerabilities and Exposures):脆弱性の識別番号(例:CVE-2021-44228)
CVSS(Common Vulnerability Scoring System):脆弱性の深刻度スコア(0.0〜10.0)
NVD(National Vulnerability Database):米NISTが管理するCVEデータベース
JVN(Japan Vulnerability Notes):日本のIPAが運用する脆弱性情報データベース

脆弱性の種類:設計上の欠陥(CSRF等の仕様設計)・実装上のバグ(バッファオーバーフロー等)・設定ミス(デフォルトパスワード・不要サービスの放置)。設定ミスは最もよくある脆弱性の源です。

`, examtips:[ 'CVSS v3の基本スコアは0.0〜10.0。Critical(9.0〜10.0)・High(7.0〜8.9)・Medium・Low・None。', 'ゼロデイ脆弱性:パッチが存在しない状態での攻撃。ワークアラウンド(回避策)で暫定対応するしかない。', @@ -402,7 +402,7 @@ export const CATEGORIES = [ ] }, { id:'s23', num:'S23', title:'サプライチェーン・DevSecOps', freq:'high', diff:2, - concept:`

ソフトウェア開発はOSSコンポーネントや外部ベンダーに依存しており、その供給経路(サプライチェーン)への攻撃が2020年代の重大な脅威となっています。DevSecOpsは開発(Dev)・セキュリティ(Sec)・運用(Ops)を統合するアプローチです。

サプライチェーン攻撃の代表例
SolarWinds 事件(2020):正規のソフトウェア更新に悪意あるコードを混入
Log4Shell(CVE-2021-44228):広く使われるOSSライブラリの脆弱性が多数の製品に波及
XZ Utils バックドア(2024):メンテナーへのソーシャルエンジニアリングでOSSにバックドアを挿入
主な対策技術・フレームワーク
SBOM(Software Bill of Materials):ソフトウェアの部品表。依存コンポーネントを機械可読形式で管理
SLSA(Supply chain Levels for Software Artifacts):Googleが提唱するサプライチェーン完全性フレームワーク
Shift Left:セキュリティテストを開発の初期フェーズに前倒し
SAST/DAST:静的解析(コード)・動的解析(実行時)の自動セキュリティテスト
シークレット管理:認証情報をコードに書かずVault等で管理

CI/CDパイプラインはコードから本番環境への自動経路のため、悪意ある変更の大量配布リスクがあります。パイプライン自体のアクセス制御とシークレット管理が重要です。

`, + concept:`

ソフトウェア開発はOSSコンポーネントや外部ベンダーに依存しており、その供給経路(サプライチェーン)への攻撃が2020年代の重大な脅威となっています。DevSecOpsは開発(Dev)・セキュリティ(Sec)・運用(Ops)を統合するアプローチです。

初学者向け:サプライチェーン
自社コードだけでなくライブラリ・ビルド・更新の経路まで含めた「ソフトの流れ」。そこを攻撃されると正規の配布経路で被害が広がる。
サプライチェーン攻撃の代表例
SolarWinds 事件(2020):正規のソフトウェア更新に悪意あるコードを混入
Log4Shell(CVE-2021-44228):広く使われるOSSライブラリの脆弱性が多数の製品に波及
XZ Utils バックドア(2024):メンテナーへのソーシャルエンジニアリングでOSSにバックドアを挿入
主な対策技術・フレームワーク
SBOM(Software Bill of Materials):ソフトウェアの部品表。依存コンポーネントを機械可読形式で管理
SLSA(Supply chain Levels for Software Artifacts):Googleが提唱するサプライチェーン完全性フレームワーク
Shift Left:セキュリティテストを開発の初期フェーズに前倒し
SAST/DAST:静的解析(コード)・動的解析(実行時)の自動セキュリティテスト
シークレット管理:認証情報をコードに書かずVault等で管理

CI/CDパイプラインはコードから本番環境への自動経路のため、悪意ある変更の大量配布リスクがあります。パイプライン自体のアクセス制御とシークレット管理が重要です。

`, examtips:[ 'SBOM は脆弱性が発覚した際に「自社製品のどのバージョンが影響を受けるか」を即座に特定できる。Log4Shell のような波及的脆弱性への対応で重要性が認識された。', 'Shift Left:開発の後期でなく設計・コーディング段階からセキュリティを組み込む。発見コストが最も低いフェーズで問題を潰す考え方。', @@ -423,7 +423,7 @@ export const CATEGORIES = [ ] }, { id:'s24', num:'S24', title:'AI セキュリティ', freq:'mid', diff:2, - concept:`

生成AI・LLM(大規模言語モデル)の急速な普及に伴い、AI固有のセキュリティリスクが新たに生まれています。2026年現在、情報処理試験でも出題が始まっています。

AI に対する主な攻撃手法
プロンプトインジェクション:悪意ある指示を入力に混入させ意図しない動作を誘発
 → 直接型:ユーザーが直接モデルに悪意ある指示を入力
 → 間接型:外部コンテンツ(Webページ・ドキュメント)経由で注入
データポイズニング:学習データに汚染データを混入しモデルの動作を操作
モデル反転攻撃:モデルの出力から学習データの情報を推測・復元
モデル抽出攻撃:大量のクエリを通じてモデルのロジックを盗み取る
AI 利用時の情報セキュリティリスク
機密情報漏洩:プロンプトに機密情報・個人情報を入力すると外部に送信される
幻覚(Hallucination):誤情報の生成と信頼。セキュリティアドバイスの誤り
AIエージェントの過剰権限:自律的に行動するエージェントが不要なアクセスを取得

OWASP は LLM アプリケーション向けの「Top 10 for LLM Applications」を公開。プロンプトインジェクション・安全でないプラグイン設計・過度のエージェント自律性などがトップリスクに挙がっています。

`, + concept:`

生成AI・LLM(大規模言語モデル)の急速な普及に伴い、AI固有のセキュリティリスクが新たに生まれています。2026年現在、情報処理試験でも出題が始まっています。

初学者向け:AI利用の前提
プロンプトは外部に送信される前提で扱う。機密は入れない・出力は人が検証する、が試験でも実務でも基本。
AI に対する主な攻撃手法
プロンプトインジェクション:悪意ある指示を入力に混入させ意図しない動作を誘発
 → 直接型:ユーザーが直接モデルに悪意ある指示を入力
 → 間接型:外部コンテンツ(Webページ・ドキュメント)経由で注入
データポイズニング:学習データに汚染データを混入しモデルの動作を操作
モデル反転攻撃:モデルの出力から学習データの情報を推測・復元
モデル抽出攻撃:大量のクエリを通じてモデルのロジックを盗み取る
AI 利用時の情報セキュリティリスク
機密情報漏洩:プロンプトに機密情報・個人情報を入力すると外部に送信される
幻覚(Hallucination):誤情報の生成と信頼。セキュリティアドバイスの誤り
AIエージェントの過剰権限:自律的に行動するエージェントが不要なアクセスを取得

OWASP は LLM アプリケーション向けの「Top 10 for LLM Applications」を公開。プロンプトインジェクション・安全でないプラグイン設計・過度のエージェント自律性などがトップリスクに挙がっています。

`, examtips:[ 'プロンプトインジェクションは OWASP Top 10 for LLM(2025年版)の第1位。システムプロンプトの漏洩・安全フィルタのバイパスが典型的な攻撃結果。対策は入力検証・モデルの権限最小化。', '社員が業務で生成 AI を使う際の情報漏洩:入力したプロンプトが学習データになる可能性・外部サービスへの送信リスク。組織は利用ガイドラインを整備し、機密情報の入力を禁止する必要がある。', @@ -444,7 +444,7 @@ export const CATEGORIES = [ ] }, { id:'s26', num:'S26', title:'ソーシャルエンジニアリング', freq:'high', diff:1, - concept:`

ソーシャルエンジニアリングは技術的な脆弱性ではなく、人間の心理・行動を操作して情報を騙し取る攻撃です。技術対策だけでは防げず、教育と手続きが重要です。

主な攻撃手法
フィッシング(Phishing):偽のメール・Webサイトで認証情報を詐取
スピアフィッシング(Spear Phishing):特定の個人・組織を狙ったフィッシング
ホエーリング(Whaling):経営幹部(クジラ)を狙ったスピアフィッシング
ヴィッシング(Vishing):音声通話(Voice+Phishing)で情報詐取
スミッシング(Smishing):SMS(SMS+Phishing)で偽URLに誘導
BEC(Business Email Compromise):幹部・取引先を騙り振込詐欺や情報窃取
プリテキスティング(Pretexting):架空のシナリオを作り信頼を得る手口
ベイティング(Baiting):マルウェア入りUSBを置き去りにして拾わせる

テールゲーティング(ピギーバッキング):正規の入室者の後ろについて無断入場する物理的ソーシャルエンジニアリング。

対策:多層防御(MFA・DMARC)+訓練(標的型メール訓練)+手続き(電話確認・上長承認)。技術だけでは防げないためセキュリティ意識教育(Security Awareness Training)が不可欠です。

`, + concept:`

ソーシャルエンジニアリングは技術的な脆弱性ではなく、人間の心理・行動を操作して情報を騙し取る攻撃です。技術対策だけでは防げず、教育と手続きが重要です。

初学者向け:ソーシャルエンジニアリング
PCの穴ではなく人の心理を突く手口の総称。だから対策は技術+教育・手続き(二重確認など)のセットで問われる。
主な攻撃手法
フィッシング(Phishing):偽のメール・Webサイトで認証情報を詐取
スピアフィッシング(Spear Phishing):特定の個人・組織を狙ったフィッシング
ホエーリング(Whaling):経営幹部(クジラ)を狙ったスピアフィッシング
ヴィッシング(Vishing):音声通話(Voice+Phishing)で情報詐取
スミッシング(Smishing):SMS(SMS+Phishing)で偽URLに誘導
BEC(Business Email Compromise):幹部・取引先を騙り振込詐欺や情報窃取
プリテキスティング(Pretexting):架空のシナリオを作り信頼を得る手口
ベイティング(Baiting):マルウェア入りUSBを置き去りにして拾わせる

テールゲーティング(ピギーバッキング):正規の入室者の後ろについて無断入場する物理的ソーシャルエンジニアリング。

対策:多層防御(MFA・DMARC)+訓練(標的型メール訓練)+手続き(電話確認・上長承認)。技術だけでは防げないためセキュリティ意識教育(Security Awareness Training)が不可欠です。

`, examtips:[ 'フィッシング系は名前と説明の組み合わせが出題される。特に「スピアフィッシング≠一般的なフィッシング」「ホエーリング=経営幹部狙い」「BEC=振込詐欺・情報漏洩」の3つを確実に区別すること。', 'BEC(ビジネスメール詐欺):CEO や取引先に成りすまして送金指示を出す。メールの正当性確認が対策(電話で二重確認)。近年の試験で増加中。', @@ -466,7 +466,7 @@ export const CATEGORIES = [ ] }, { id:'s27', num:'S27', title:'セキュアプログラミング', freq:'high', diff:2, - concept:`

安全なソフトウェアを開発するために、コード実装レベルの脆弱性を理解し回避する技法です。支援士試験ではコードの脆弱性と対策の組み合わせが問われます。

主な脆弱性とコード上の原因
バッファオーバーフロー:確保したメモリ領域を超えて書き込む。C言語の gets/strcpy 等で発生
 → 対策:境界チェック関数(fgets, strncpy)・ASLR・スタックカナリア
整数オーバーフロー:型の最大値を超えた演算。負数化・ゼロ除算につながる
フォーマット文字列攻撃:printf(user_input) のように書式文字列にユーザー入力を渡す
 → 対策:printf("%s", user_input) と固定書式を使う
Use-After-Free:解放済みメモリへのアクセス。ヒープ破壊・任意コード実行につながる
競合状態(Race Condition):TOCTOU(Time-of-Check-Time-of-Use)問題
セキュアコーディングの原則
入力検証:信頼できない入力は全て検証(ホワイトリスト方式が原則)
出力エスケープ:HTML/SQL/コマンドへの出力時は適切にエスケープ
最小権限:プロセス・ファイル・DBアカウントは必要最小限の権限
エラー処理:内部情報を漏洩しないエラーメッセージ

OWASP ASVS(Application Security Verification Standard)は Webアプリのセキュリティ要件を体系化したフレームワーク。CERT Coding Standards はコードレベルのセキュアプログラミング規約です。

`, + concept:`

安全なソフトウェアを開発するために、コード実装レベルの脆弱性を理解し回避する技法です。支援士試験ではコードの脆弱性と対策の組み合わせが問われます。

初学者向け:セキュアプログラミング
「入力は悪意があるかもしれない」前提で、境界チェック・エスケープ・最小権限などをコードで守る考え方。
主な脆弱性とコード上の原因
バッファオーバーフロー:確保したメモリ領域を超えて書き込む。C言語の gets/strcpy 等で発生
 → 対策:境界チェック関数(fgets, strncpy)・ASLR・スタックカナリア
整数オーバーフロー:型の最大値を超えた演算。負数化・ゼロ除算につながる
フォーマット文字列攻撃:printf(user_input) のように書式文字列にユーザー入力を渡す
 → 対策:printf("%s", user_input) と固定書式を使う
Use-After-Free:解放済みメモリへのアクセス。ヒープ破壊・任意コード実行につながる
競合状態(Race Condition):TOCTOU(Time-of-Check-Time-of-Use)問題
セキュアコーディングの原則
入力検証:信頼できない入力は全て検証(ホワイトリスト方式が原則)
出力エスケープ:HTML/SQL/コマンドへの出力時は適切にエスケープ
最小権限:プロセス・ファイル・DBアカウントは必要最小限の権限
エラー処理:内部情報を漏洩しないエラーメッセージ

OWASP ASVS(Application Security Verification Standard)は Webアプリのセキュリティ要件を体系化したフレームワーク。CERT Coding Standards はコードレベルのセキュアプログラミング規約です。

`, examtips:[ 'バッファオーバーフローは「確保した領域を超えて書き込む」ことで戻りアドレスを書き換え任意コードを実行できる。対策は境界チェック・コンパイラ保護(スタックカナリア・ASLR)。', 'フォーマット文字列攻撃:`printf(str)` のような実装でユーザーが `%x %x` などを入力するとメモリダンプができてしまう。`printf("%s", str)` と書式文字列を固定するだけで防げる。', @@ -490,7 +490,7 @@ export const CATEGORIES = [ ]}, { id:'management', label:'管理・法規', icon:'scale', units:[ { id:'s19', num:'S19', title:'インシデント対応・CSIRT', freq:'high', diff:2, - concept:`

インシデント対応はPDCAではなくPICERFサイクル(準備→識別→封じ込め→根絶→復旧→事後レビュー)で考えます。CSIRT(Computer Security Incident Response Team)は組織内外のインシデントを専門に扱うチームです。

インシデント対応フェーズ(NIST SP 800-61)
1. 準備(Preparation):体制・ツール・手順書の整備
2. 検知・分析(Detection & Analysis):インシデントの識別と影響範囲確認
3. 封じ込め(Containment):被害の拡大防止(ネットワーク切断等)
4. 根絶(Eradication):マルウェア除去・脆弱性修正
5. 復旧(Recovery):サービス再開・モニタリング
6. 事後レビュー(Post-incident Activity):再発防止策の策定

SIEM(Security Information and Event Management):複数のログを統合して異常を検知するプラットフォーム。SOC(Security Operations Center)はSIEMを監視する専門チームです。

`, + concept:`

インシデント対応はPDCAではなくPICERFサイクル(準備→識別→封じ込め→根絶→復旧→事後レビュー)で考えます。CSIRT(Computer Security Incident Response Team)は組織内外のインシデントを専門に扱うチームです。

初学者向け:インシデント
セキュリティ上の問題が実際に起きた事象。まず被害を広げない(封じ込め)→除去→復旧、の順序が試験でよく問われる。
インシデント対応フェーズ(NIST SP 800-61)
1. 準備(Preparation):体制・ツール・手順書の整備
2. 検知・分析(Detection & Analysis):インシデントの識別と影響範囲確認
3. 封じ込め(Containment):被害の拡大防止(ネットワーク切断等)
4. 根絶(Eradication):マルウェア除去・脆弱性修正
5. 復旧(Recovery):サービス再開・モニタリング
6. 事後レビュー(Post-incident Activity):再発防止策の策定

SIEM(Security Information and Event Management):複数のログを統合して異常を検知するプラットフォーム。SOC(Security Operations Center)はSIEMを監視する専門チームです。

`, examtips:[ '封じ込め(Containment)は根絶より先に行う。まず被害を止め、その後マルウェアを除去する。', 'フォレンジックス:デジタル証拠の収集・保全・分析。証拠の連鎖(Chain of Custody)を保つことが重要。', @@ -511,7 +511,7 @@ export const CATEGORIES = [ ] }, { id:'s20', num:'S20', title:'法規・評価基準', freq:'high', diff:2, - concept:`

情報セキュリティに関わる法律・制度・評価基準を整理します。試験では法律の名前と対象・罰則の組み合わせが問われます。

主な法律・制度
不正アクセス禁止法:不正アクセス行為そのものを禁止(クラッキング・フィッシング等)
個人情報保護法:個人情報の取得・利用・保管・第三者提供の規制。漏洩時の報告義務
サイバーセキュリティ基本法:国のサイバーセキュリティ戦略の基盤。NISC設置の根拠法
不正競争防止法:営業秘密の保護。漏洩・横領に刑事罰
電子署名法:電子署名の法的効力を定める
評価基準・フレームワーク
ISO/IEC 15408(CC:Common Criteria):製品のセキュリティ評価基準。EALレベルで評価
PCI DSS:クレジットカード業界のセキュリティ基準(加盟店・決済事業者向け、12要件で構成)
NIST SP 800シリーズ:米国のセキュリティガイドライン群
NIST CSF 2.0(2024年2月):Govern(統治)を追加した6機能(G-IPDRR)
 Govern→Identify→Protect→Detect→Respond→Recover
ISO/IEC 27001:ISMS の国際規格(Annex A に管理策を列挙)
`, + concept:`

情報セキュリティに関わる法律・制度・評価基準を整理します。試験では法律の名前と対象・罰則の組み合わせが問われます。

初学者向け:法令と枠組み
法律は守らなければならないルール。ISO や NIST CSF は良い実践の枠組みとして出る(義務と自発を混同しない)。
主な法律・制度
不正アクセス禁止法:不正アクセス行為そのものを禁止(クラッキング・フィッシング等)
個人情報保護法:個人情報の取得・利用・保管・第三者提供の規制。漏洩時の報告義務
サイバーセキュリティ基本法:国のサイバーセキュリティ戦略の基盤。NISC設置の根拠法
不正競争防止法:営業秘密の保護。漏洩・横領に刑事罰
電子署名法:電子署名の法的効力を定める
評価基準・フレームワーク
ISO/IEC 15408(CC:Common Criteria):製品のセキュリティ評価基準。EALレベルで評価
PCI DSS:クレジットカード業界のセキュリティ基準(加盟店・決済事業者向け、12要件で構成)
NIST SP 800シリーズ:米国のセキュリティガイドライン群
NIST CSF 2.0(2024年2月):Govern(統治)を追加した6機能(G-IPDRR)
 Govern→Identify→Protect→Detect→Respond→Recover
ISO/IEC 27001:ISMS の国際規格(Annex A に管理策を列挙)
`, examtips:[ '不正アクセス禁止法:権限なしのコンピュータへの不正ログインを禁止。ポートスキャンだけでは違反にならないが、脆弱性を突いた侵入は違反。', '個人情報保護法:令和4年(2022年)施行で漏洩報告義務化・個人関連情報追加。令和8年(2026年)4月改正法案で課徴金制度が新設予定(違法利得への制裁強化)。', @@ -533,7 +533,7 @@ export const CATEGORIES = [ ] }, { id:'s21', num:'S21', title:'クラウドセキュリティ', freq:'high', diff:2, - concept:`

クラウドサービスは利用形態(IaaS/PaaS/SaaS)によって、提供者とユーザーのセキュリティ責任範囲が異なります。これを責任共有モデル(Shared Responsibility Model)と呼びます。

責任共有モデルの例(IaaS)
クラウド事業者の責任:物理インフラ・ハイパーバイザ・ネットワーク
ユーザーの責任:OS・ミドルウェア・アプリ・データ・IAM・暗号化設定

SaaS に近づくほどユーザーの責任は減るが、IAMとデータの責任は常にユーザー側

クラウド特有のセキュリティリスクとして設定ミスが最多。S3バケット公開設定やルートアカウントのMFA無効化などが典型例です。

主なクラウドセキュリティ技術
CASB(Cloud Access Security Broker):クラウドサービスへのアクセスを可視化・制御する中間プロキシ
CSPM(Cloud Security Posture Management):クラウド設定のセキュリティポリシー準拠を継続的に検証
SWG(Secure Web Gateway):Webアクセスをフィルタリング。ゼロトラストで境界の代替
CWPP(Cloud Workload Protection Platform):クラウド上のワークロードを保護
`, + concept:`

クラウドサービスは利用形態(IaaS/PaaS/SaaS)によって、提供者とユーザーのセキュリティ責任範囲が異なります。これを責任共有モデル(Shared Responsibility Model)と呼びます。

初学者向け:クラウドの責任
物理・基盤は事業者側に寄せられる一方、誰がアクセスできるか(IAM)・中身のデータは利用者側に残りやすい、と覚える。
責任共有モデルの例(IaaS)
クラウド事業者の責任:物理インフラ・ハイパーバイザ・ネットワーク
ユーザーの責任:OS・ミドルウェア・アプリ・データ・IAM・暗号化設定

SaaS に近づくほどユーザーの責任は減るが、IAMとデータの責任は常にユーザー側

クラウド特有のセキュリティリスクとして設定ミスが最多。S3バケット公開設定やルートアカウントのMFA無効化などが典型例です。

主なクラウドセキュリティ技術
CASB(Cloud Access Security Broker):クラウドサービスへのアクセスを可視化・制御する中間プロキシ
CSPM(Cloud Security Posture Management):クラウド設定のセキュリティポリシー準拠を継続的に検証
SWG(Secure Web Gateway):Webアクセスをフィルタリング。ゼロトラストで境界の代替
CWPP(Cloud Workload Protection Platform):クラウド上のワークロードを保護
`, examtips:[ '責任共有モデルは頻出。「物理層はクラウド事業者、IAMとデータはユーザー責任」を軸に理解する。SaaSでも「誰がアクセスできるか(IAM)」はユーザー責任。', 'CASB:シャドーIT(未承認クラウド利用)の可視化にも使われる。「クラウドへのアクセスを制御する中間ブローカー」という説明で選択肢に出やすい。', @@ -554,7 +554,7 @@ export const CATEGORIES = [ ] }, { id:'s22', num:'S22', title:'OAuth 2.0/OIDC/SAML', freq:'high', diff:2, - concept:`

現代のWebサービスでIDを連携させる3つのプロトコルを整理します。OAuth 2.0は「認可(Authorization)」、OIDCは「認証(Authentication)」、SAMLはエンタープライズの「フェデレーション認証」です。

3プロトコルの役割
OAuth 2.0:リソースへのアクセス権を第三者に委譲する認可フレームワーク
 →「Googleドライブに○○アプリのアクセスを許可する」はOAuth 2.0
OIDC(OpenID Connect):OAuth 2.0の上に認証レイヤーを追加
 →「Googleアカウントで△△にログイン」はOIDC
SAML 2.0:XMLベースのSSO標準。企業向け(IdP/SPの概念の基盤)
ユーザー
ブラウザ
IdP
認可/認証
トークン
JWT/SAML
SP/RP
検証・許可

JWTはHeader.Payload.Signatureの3部構成。Payloadにsub(ユーザーID)やexp(有効期限)などのクレームを格納します。IDaaSはこれらを統合したSaaS型のID管理サービスです(Azure AD/Okta等)。

`, + concept:`

現代のWebサービスでIDを連携させる3つのプロトコルを整理します。OAuth 2.0は「認可(Authorization)」、OIDCは「認証(Authentication)」、SAMLはエンタープライズの「フェデレーション認証」です。

初学者向け:OAuth と OIDC
OAuth=「このアプリにこのAPIへのアクセスを許す」(認可)。OIDC=その上で「誰としてログインしたか」も渡す(認証)。混同されやすいので区別する。
3プロトコルの役割
OAuth 2.0:リソースへのアクセス権を第三者に委譲する認可フレームワーク
 →「Googleドライブに○○アプリのアクセスを許可する」はOAuth 2.0
OIDC(OpenID Connect):OAuth 2.0の上に認証レイヤーを追加
 →「Googleアカウントで△△にログイン」はOIDC
SAML 2.0:XMLベースのSSO標準。企業向け(IdP/SPの概念の基盤)
ユーザー
ブラウザ
IdP
認可/認証
トークン
JWT/SAML
SP/RP
検証・許可

JWTはHeader.Payload.Signatureの3部構成。Payloadにsub(ユーザーID)やexp(有効期限)などのクレームを格納します。IDaaSはこれらを統合したSaaS型のID管理サービスです(Azure AD/Okta等)。

`, examtips:[ 'OAuth 2.0は「認可」フレームワーク(誰が何をできるか)。OIDC は OAuth 2.0 の上に「認証(誰か)」を追加。この2層構造を混同しないこと。', 'SAMLとOIDCの使い分け:SAMLはエンタープライズSSO(人事システム・社内ポータル)、OIDCはモバイル・Web API向け(軽量・JSONベース)。', @@ -575,7 +575,7 @@ export const CATEGORIES = [ ] }, { id:'s28', num:'S28', title:'事業継続・BCP/BCM', freq:'high', diff:2, - concept:`

BCP(Business Continuity Plan)は災害・インシデント発生時でも事業を継続または迅速に復旧するための計画です。BCM(Business Continuity Management)はその計画を策定・維持・改善する継続的なマネジメント体制です。

主要な指標
RTO(Recovery Time Objective):目標復旧時間。何時間以内に復旧するか
RPO(Recovery Point Objective):目標復旧時点。何時点のデータまで失って許容できるか
RLO(Recovery Level Objective):目標復旧レベル。どの程度の業務水準まで回復するか
バックアップ戦略
3-2-1 ルール:3コピー・2種類のメディア・1つはオフサイト(遠隔地)保管
フルバックアップ:全データ。リストアが最速だが時間・容量が大きい
差分バックアップ:前回フルからの差分。リストアはフル+差分
増分バックアップ:前回バックアップからの増分。容量小だがリストアに複数必要
ホットサイト:即時切替可能な待機系。コスト大
ウォームサイト:数時間で切替可能。中程度のコスト
コールドサイト:設備のみ提供。立上げに時間がかかる

DRP(Disaster Recovery Plan)は IT システムの復旧に焦点を当てた計画で、BCPの一部です。ISO 22301 が BCM の国際規格です。

`, + concept:`

BCP(Business Continuity Plan)は災害・インシデント発生時でも事業を継続または迅速に復旧するための計画です。BCM(Business Continuity Management)はその計画を策定・維持・改善する継続的なマネジメント体制です。

初学者向け:RTO と RPO
RTO=「何時間以内に直すか」(時間の目標)。RPO=「どの時点のデータまで失ってよいか」(データの目標)。ペアで頻出。
主要な指標
RTO(Recovery Time Objective):目標復旧時間。何時間以内に復旧するか
RPO(Recovery Point Objective):目標復旧時点。何時点のデータまで失って許容できるか
RLO(Recovery Level Objective):目標復旧レベル。どの程度の業務水準まで回復するか
バックアップ戦略
3-2-1 ルール:3コピー・2種類のメディア・1つはオフサイト(遠隔地)保管
フルバックアップ:全データ。リストアが最速だが時間・容量が大きい
差分バックアップ:前回フルからの差分。リストアはフル+差分
増分バックアップ:前回バックアップからの増分。容量小だがリストアに複数必要
ホットサイト:即時切替可能な待機系。コスト大
ウォームサイト:数時間で切替可能。中程度のコスト
コールドサイト:設備のみ提供。立上げに時間がかかる

DRP(Disaster Recovery Plan)は IT システムの復旧に焦点を当てた計画で、BCPの一部です。ISO 22301 が BCM の国際規格です。

`, examtips:[ 'RTO と RPO は混同しやすい。RTO は「時間軸(復旧まで何時間)」、RPO は「データ軸(何時点のデータまで許容するか)」。RPO が短いほど頻繁なバックアップが必要。', '3-2-1 ルールはランサムウェア対策でも頻出。「3つのコピー・2種類の媒体・1つはオフライン/オフサイト」の「1つはオフライン」が特に重要。', @@ -597,7 +597,7 @@ export const CATEGORIES = [ ] }, { id:'s29', num:'S29', title:'物理・環境セキュリティ', freq:'mid', diff:1, - concept:`

情報セキュリティはデジタルだけの問題ではありません。物理的なアクセスが許可されると技術的対策の多くが無意味になります。

施設・入退室管理
多層防護(Defense in Depth):外周フェンス→ゲート→受付→セキュリティゾーン→サーバ室
マンとラップ(Man Trap):二重扉で1人ずつ認証する仕組み。テールゲーティング防止
ICカード・生体認証:入退室を個人単位で記録・制御
CCTV(監視カメラ):抑止効果と証拠収集
テールゲーティング(ピギーバッキング):正規入室者の後ろについて無断入場
情報機器・媒体の管理
クリーンデスクポリシー:離席時に書類・資料・PC を施錠・片付ける
スクリーンロック:一定時間無操作でロック
クリアスクリーンポリシー:画面を離れるときにロックする習慣
メディア廃棄
 上書き:NIST SP 800-88 に基づく複数回上書き
 消磁(デガウサー):磁気を消去。SSD には無効
 物理破壊:シュレッダー・溶解。確実だが復元不可
`, + concept:`

情報セキュリティはデジタルだけの問題ではありません。物理的なアクセスが許可されると技術的対策の多くが無意味になります。

初学者向け:物理セキュリティ
サーバに届く前に建物・扉・人で防ぐ。画面ロックやクリーンデスクは「盗み見・持ち出し」対策として試験に出やすい。
施設・入退室管理
多層防護(Defense in Depth):外周フェンス→ゲート→受付→セキュリティゾーン→サーバ室
マンとラップ(Man Trap):二重扉で1人ずつ認証する仕組み。テールゲーティング防止
ICカード・生体認証:入退室を個人単位で記録・制御
CCTV(監視カメラ):抑止効果と証拠収集
テールゲーティング(ピギーバッキング):正規入室者の後ろについて無断入場
情報機器・媒体の管理
クリーンデスクポリシー:離席時に書類・資料・PC を施錠・片付ける
スクリーンロック:一定時間無操作でロック
クリアスクリーンポリシー:画面を離れるときにロックする習慣
メディア廃棄
 上書き:NIST SP 800-88 に基づく複数回上書き
 消磁(デガウサー):磁気を消去。SSD には無効
 物理破壊:シュレッダー・溶解。確実だが復元不可
`, examtips:[ 'テールゲーティング対策はマンとラップ(二重扉+一人ずつ認証)。物理的なソーシャルエンジニアリングの代表例として問われる。', 'メディア廃棄方法の違い:消磁は SSD に無効(フラッシュメモリは磁気と関係ない)。確実な廃棄には物理破壊が必要。', @@ -618,7 +618,7 @@ export const CATEGORIES = [ ] }, { id:'s30', num:'S30', title:'脅威インテリジェンス・MITRE ATT&CK', freq:'mid', diff:3, - concept:`

脅威インテリジェンス(CTI: Cyber Threat Intelligence)は攻撃者・攻撃手法・悪意ある活動に関する情報を収集・分析して防御に活かす実践です。

情報の種類
IoC(Indicators of Compromise):侵害の痕跡。攻撃後に確認される具体的な証拠
 → 悪意あるIPアドレス・ドメイン・マルウェアのハッシュ値・レジストリキー
IoA(Indicators of Attack):攻撃中の兆候。攻撃の予兆・進行中のパターン
TTP(Tactics, Techniques, Procedures):攻撃者の戦術・技法・手順の体系
主なフレームワーク・標準
MITRE ATT&CK:実際の攻撃事例に基づくTTPsのナレッジベース。初期侵入→永続化→権限昇格→探索→横断→情報収集→流出の各フェーズをマトリクスで整理
STIX(Structured Threat Information eXpression):脅威情報の記述形式(XML/JSON)
TAXII(Trusted Automated eXchange of Indicator Information):脅威情報の自動共有プロトコル
ISAC(Information Sharing and Analysis Center):業界別の脅威情報共有組織

ハニーポット:攻撃者を引き付ける囮システム。実際の重要システムではなく観察・情報収集が目的です。ハニーネットは複数のハニーポットで構成されたネットワークです。

`, + concept:`

脅威インテリジェンス(CTI: Cyber Threat Intelligence)は攻撃者・攻撃手法・悪意ある活動に関する情報を収集・分析して防御に活かす実践です。

初学者向け:脅威インテリジェンス
攻撃の手口や痕跡の情報を集め守りに活かす活動。MITRE ATT&CKは攻撃の「辞書・地図」として覚えるとよい。
情報の種類
IoC(Indicators of Compromise):侵害の痕跡。攻撃後に確認される具体的な証拠
 → 悪意あるIPアドレス・ドメイン・マルウェアのハッシュ値・レジストリキー
IoA(Indicators of Attack):攻撃中の兆候。攻撃の予兆・進行中のパターン
TTP(Tactics, Techniques, Procedures):攻撃者の戦術・技法・手順の体系
主なフレームワーク・標準
MITRE ATT&CK:実際の攻撃事例に基づくTTPsのナレッジベース。初期侵入→永続化→権限昇格→探索→横断→情報収集→流出の各フェーズをマトリクスで整理
STIX(Structured Threat Information eXpression):脅威情報の記述形式(XML/JSON)
TAXII(Trusted Automated eXchange of Indicator Information):脅威情報の自動共有プロトコル
ISAC(Information Sharing and Analysis Center):業界別の脅威情報共有組織

ハニーポット:攻撃者を引き付ける囮システム。実際の重要システムではなく観察・情報収集が目的です。ハニーネットは複数のハニーポットで構成されたネットワークです。

`, examtips:[ 'MITRE ATT&CK はフェーズ(タクティクス)→手法(テクニック)→手順(サブテクニック)の3層構造。「攻撃者がどのフェーズで何をしたか」をマッピングするツールとして使われる。', 'IoC と IoA の違い:IoC は「侵害された証拠(事後)」、IoA は「攻撃中の兆候(予防)」。SIEM で IoC/IoA を検出することで対応を高速化する。', @@ -640,7 +640,7 @@ export const CATEGORIES = [ ] }, { id:'s31', num:'S31', title:'コンプライアンス・証跡(ログ)入門', freq:'mid', diff:1, - concept:`

コンプライアンスは、法令・業界ガイドライン・社内規程に沿って業務を運営することです。情報セキュリティ分野では、個人情報保護やISMSの文脈で「記録」「監査」「証跡」がセットで問われます。

初学者向け:証跡とログ
証跡:いつ・誰が・何をしたかを後から追跡できる記録。インシデント調査や監査で事実関係を説明する根拠になる。
システムログ:ログイン成否、設定変更、特権操作などを機械的に残したもの。
ログの保護:攻撃者に消されたら意味がないため、権限分離・改ざん検知・外部SIEMへの転送などで改ざん耐性を高める。
内部統制との関係
重要な処理は職務分離や承認フローと組み合わせ、ログはその実行事実を残す。保存期間・閲覧権限・マスキングは個人情報保護と両立して設計する。

クラウドではログの有効化や保管先の設計も利用者責任に含まれる場合がある(責任共有モデル)。

`, + concept:`

コンプライアンスは、法令・業界ガイドライン・社内規程に沿って業務を運営することです。情報セキュリティ分野では、個人情報保護やISMSの文脈で「記録」「監査」「証跡」がセットで問われます。

初学者向け:証跡とログ
コンプライアンス:ルールに適合して運用すること。証跡:いつ・誰が・何をしたかを後から説明できる記録。システムログ:ログイン成否・設定変更などを機械的に残すもの。ログは攻撃者に消されると意味がないため、権限分離・改ざん検知・外部SIEMで保護する。
内部統制との関係
重要な処理は職務分離や承認フローと組み合わせ、ログはその実行事実を残す。保存期間・閲覧権限・マスキングは個人情報保護と両立して設計する。

クラウドではログの有効化や保管先の設計も利用者責任に含まれる場合がある(責任共有モデル)。

`, examtips:[ '「コンプライアンス=法令遵守だけ」と捉えない。社内規程・契約・業界基準も含む。', '監査証跡は「後から説明できること」が目的。ログを取らないより、取り方と保護が問われる。', diff --git a/posimai-sc/sw.js b/posimai-sc/sw.js index 09543f60..1712f208 100644 --- a/posimai-sc/sw.js +++ b/posimai-sc/sw.js @@ -1,5 +1,5 @@ // posimai-sc SW — same-origin の静的資産のみキャッシュ(CDN は対象外) -const CACHE = 'posimai-sc-v2'; +const CACHE = 'posimai-sc-v3'; const STATIC = [ '/', '/index.html',