安全測試與弱點掃描報告範本(Security Scan Report Template)

安全測試與弱點掃描報告範本(Security Scan Report Template) 適用標準:OWASP Testing Guide v4.2、CVSS 3.1(Common Vulnerability Scoring System)、CWE 適用階段:測試驗證階段(Testing Phase) 負責角色:AppSec 工程師、資安測試人員、QA Lead 📑 章節目錄 文件資訊 測試摘要 測試範圍與方法 弱點總覽 弱點詳細報告 合規檢核結果 修復計畫 結論與建議 附錄 📝 範本 1. 文件資訊 項目 內容 文件名稱 [系統名稱] 安全測試報告 文件編號 [專案代碼]-STR-[版本號]-[日期] 版本 v[X.Y] 測試日期 [YYYY-MM-DD] ~ [YYYY-MM-DD] 測試人員 [AppSec 團隊 / 外部廠商] 審核者 [CISO / 資安主管] 資料分級 Confidential 2. 測試摘要 項目 內容 測試類型 [SAST / DAST / SCA / Penetration Test / 組合] 受測版本 [Application version / Commit hash] 測試結果總評 [✅ PASS / ⚠️ CONDITIONAL PASS / ❌ FAIL] 上線決策 [可上線 / 修復後可上線 / 不可上線] 弱點統計 嚴重度 數量 已修復 待修復 接受風險 Critical [N] [N] [N] [N] High [N] [N] [N] [N] Medium [N] [N] [N] [N] Low [N] [N] [N] [N] Info [N] — — — Total [N] [N] [N] [N] 3. 測試範圍與方法 3.1 測試範圍 項目 內容 目標系統 [系統名稱 + URL/IP] 測試範圍 [In-scope modules / endpoints] 排除範圍 [Out-of-scope,如第三方元件] 認證帳號 [測試用帳號角色清單(不含密碼)] 3.2 測試方法 測試類型 工具 版本 說明 SAST(靜態分析) [SonarQube / Checkmarx / Semgrep] [ver] 原始碼分析 DAST(動態分析) [OWASP ZAP / Burp Suite Pro] [ver] 執行期掃描 SCA(套件分析) [Snyk / OWASP Dependency-Check / Trivy] [ver] 第三方套件弱點 手動測試 [Burp Suite / Custom scripts] — 邏輯弱點 Container Scan [Trivy / Aqua] [ver] 容器映像掃描 3.3 測試依據 標準/指南 涵蓋項目 OWASP Top 10 (2021) A01~A10 OWASP API Security Top 10 (2023) 全部 OWASP ASVS v4.0.3 [Level 1 / Level 2 / Level 3] CWE Top 25 (2023) 常見弱點 4. 弱點總覽 4.1 依嚴重度分佈 嚴重度 CVSS 分數範圍 修復 SLA 數量 Critical 9.0 – 10.0 24 小時 [N] High 7.0 – 8.9 7 天 [N] Medium 4.0 – 6.9 30 天 [N] Low 0.1 – 3.9 90 天 [N] Info 0.0 視需要 [N] 4.2 依類型分佈 弱點類型(CWE) 數量 嚴重度分佈 [CWE-XXX: 弱點名稱] [N] [C:N / H:N / M:N / L:N] [CWE-XXX: 弱點名稱] [N] [C:N / H:N / M:N / L:N] 4.3 依 OWASP Top 10 分佈 OWASP Category 弱點數量 最高嚴重度 A01: Broken Access Control [N] [Critical/High/…] A02: Cryptographic Failures [N] A03: Injection [N] A04: Insecure Design [N] A05: Security Misconfiguration [N] A06: Vulnerable Components [N] A07: Auth Failures [N] A08: Software & Data Integrity [N] A09: Logging & Monitoring Failures [N] A10: SSRF [N] 5. 弱點詳細報告 VULN-[NNN]: [弱點標題] 項目 內容 弱點 ID VULN-[NNN] 嚴重度 [Critical / High / Medium / Low] CVSS 分數 [N.N] CVSS Vector [CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H] CWE CWE-[NNN]: [名稱] OWASP [A01 / A02 / …] 發現工具 [SAST / DAST / Manual] 受影響元件 [模組/檔案/API endpoint] 狀態 [Open / Fixed / Accepted / False Positive] 描述: ...

May 18, 2026 · 4 min · 770 words · Eric Cheng

安全設計文件範本(Security Design Document Template)

安全設計文件範本(Security Design Document Template) 適用標準:OWASP SAMM 2.0、ISO/IEC 27034(應用安全)、NIST SP 800-53、ISO/IEC 27001:2022 適用階段:系統設計階段(Design Phase) 負責角色:資安架構師、系統架構師(SA)、AppSec 工程師 📑 章節目錄 文件資訊 安全設計目標 身分驗證設計(Authentication) 授權與存取控制(Authorization) 資料保護設計 API 安全設計 Session 管理 輸入驗證與輸出編碼 日誌與稽核設計 安全組態基線 安全測試策略 📝 範本 1. 文件資訊 項目 內容 文件名稱 [系統名稱] 安全設計文件 文件編號 [專案代碼]-SDD-[版本號] 版本 v[X.Y] 建立日期 [YYYY-MM-DD] 撰寫者 [資安架構師] 審核者 [CISO / 資安團隊] 資料分級 [Confidential / Internal] 關聯文件 文件 關係 威脅模型(Threat Model) 風險識別來源 安全需求清單 需求依據 系統架構文件(SAD) 架構背景 2. 安全設計目標 2.1 安全原則 原則 說明 實施方式 Defense in Depth 多層防禦 [每層防護機制] Least Privilege 最小權限 [RBAC + 預設拒絕] Fail Secure 安全失敗 [錯誤處理不暴露資訊] Separation of Duties 職責分離 [設計/部署/維運分離] Zero Trust 零信任 [每次存取都驗證] 2.2 合規需求 法規/標準 適用條款 設計對應 [個資法 / GDPR] [條款] [§5 資料保護] [ISO 27001] [A.8 / A.9] [§3, §4] [OWASP Top 10] [全部] [§6, §8] [PCI DSS] [條款,如適用] [§5] 3. 身分驗證設計(Authentication) 3.1 驗證機制 項目 設計 驗證協定 [OAuth 2.0 + OIDC / SAML 2.0 / Custom] IdP 選擇 [Azure AD / Keycloak / Auth0 / 自建] MFA 策略 [強制 / 條件式 / 僅特權帳號] MFA 方式 [TOTP / SMS / Push / FIDO2] 密碼政策 [長度/複雜度/歷史/鎖定策略] 3.2 密碼儲存 項目 設計 Hash 演算法 [bcrypt / Argon2id / PBKDF2] Cost Factor [rounds / iterations] Salt [Per-user random salt] 3.3 Token 設計 Token 類型 格式 有效期 儲存位置 備註 Access Token [JWT / Opaque] [N min] [Memory / HttpOnly Cookie] Refresh Token [Opaque] [N days] [HttpOnly Secure Cookie] 單次使用 ID Token [JWT] [N min] [Memory] 不傳給後端 API 3.4 驗證流程圖 sequenceDiagram participant U as User participant C as Client App participant IDP as Identity Provider participant API as API Server U->>C: 點擊登入 C->>IDP: Authorization Request (PKCE) IDP->>U: 顯示登入頁面 U->>IDP: 輸入帳號/密碼 + MFA IDP->>C: Authorization Code C->>IDP: Token Exchange (code + code_verifier) IDP->>C: Access Token + Refresh Token + ID Token C->>API: API Request + Access Token (Bearer) API->>API: Validate Token (signature + claims) API->>C: Response 4. 授權與存取控制(Authorization) 4.1 存取控制模型 項目 設計 模型 [RBAC / ABAC / ReBAC / 混合] 角色層級 [平面 / 階層式] 權限粒度 [功能級 / 資料級 / 欄位級] 4.2 角色定義 角色 ID 角色名稱 說明 預設權限 [ROLE_ID] [名稱] [角色描述] [權限摘要] 4.3 權限矩陣 功能/資源 [角色A] [角色B] [角色C] [Admin] [功能1] R CRUD R CRUD [功能2] — R CRUD CRUD [功能3] RU (own) RU (dept) CRUD CRUD 4.4 資料級權限 規則 描述 實施方式 Row-Level Security [使用者只能看自己的資料] [DB RLS / Application Filter] Column-Level Security [敏感欄位依角色遮罩] [View / API 過濾] 部門隔離 [只能存取所屬部門資料] [tenant_id / dept_id filter] 5. 資料保護設計 5.1 加密策略 場景 方法 演算法 金鑰管理 傳輸中(In Transit) TLS [TLS 1.3 / 1.2] [憑證管理方式] 靜態儲存(At Rest) [TDE / Application-level] [AES-256-GCM] [KMS / Vault] 欄位加密 Application-level [AES-256-GCM] [KMS / Vault] 備份加密 File-level [AES-256] [KMS] 5.2 金鑰管理 項目 設計 KMS 工具 [AWS KMS / Azure Key Vault / HashiCorp Vault] 金鑰輪換 [每 N 天自動輪換] 金鑰存取控制 [IAM Policy / RBAC] 金鑰備份 [異地備份策略] 5.3 個資處理 個資欄位 蒐集目的 保留期限 匿名化方式 刪除策略 [欄位] [用途] [N 年] [Masking / Hashing / Tokenization] [Hard delete / Crypto-shred] 6. API 安全設計 6.1 API 認證授權 項目 設計 認證方式 [Bearer Token (JWT) / API Key / mTLS] 授權檢查點 [API Gateway / Application / Both] Scope/Permission [resource:action 格式] 6.2 API 防護 防護措施 設計 工具 Rate Limiting [N requests / minute per user] [API Gateway / Redis] Request Size Limit [N MB] [Nginx / Gateway] IP Whitelist(如適用) [特定 API 限制來源 IP] [WAF / NSG] CORS [Allowed origins 清單] [Application config] API Versioning [URL path / Header] [設計規範] 6.3 OWASP API Security Top 10 對策 風險 對策 Broken Object Level Authorization [每次存取驗證資源所有權] Broken Authentication [Token 正確驗證 + MFA] Broken Object Property Level Authorization [回應過濾敏感欄位] Unrestricted Resource Consumption [Rate limit + pagination] Broken Function Level Authorization [角色權限矩陣嚴格檢查] Server Side Request Forgery [禁止 URL 參數直接存取內部資源] Security Misconfiguration [安全組態基線檢核] Lack of Protection from Automated Threats [Bot detection + CAPTCHA] 7. Session 管理 項目 設計 Session 機制 [Stateless (JWT) / Stateful (Server-side)] Session 有效期 [Idle: N min / Absolute: N hr] Session 儲存 [Redis / Database / Memory] Cookie 設定 HttpOnly, Secure, SameSite=Strict, Path=/ 並行 Session [允許 N 個裝置 / 新登入踢出舊 Session] Session Fixation 防護 [登入後重新產生 Session ID] 登出機制 [清除 Token + Server-side invalidation] 8. 輸入驗證與輸出編碼 8.1 輸入驗證策略 驗證層 位置 方式 Client-side 前端 UI 即時驗證(UX 用途,非安全邊界) Server-side API Controller 必須:Whitelist 驗證 + Schema validation Database DB Layer 型別約束 + Check constraints 8.2 常見攻擊防護 攻擊類型 防護措施 SQL Injection Parameterized queries / ORM XSS Output encoding (context-aware) + CSP CSRF SameSite cookie + CSRF token (if needed) Path Traversal 白名單驗證路徑,禁止 ../ XXE 停用 external entity parsing Deserialization 不接受不信任的序列化資料 8.3 Content Security Policy Content-Security-Policy: default-src 'self'; script-src 'self' [trusted CDN]; style-src 'self' 'unsafe-inline'; img-src 'self' data: [image CDN]; connect-src 'self' [API domain]; frame-ancestors 'none'; base-uri 'self'; form-action 'self'; 9. 日誌與稽核設計 9.1 安全事件日誌 事件類型 記錄內容 儲存位置 保留期 登入成功/失敗 UserID, IP, Timestamp, UserAgent [SIEM / Log store] [N 年] 權限變更 Who, What, When, Previous/New value [Audit DB] [N 年] 資料存取 UserID, Resource, Action, Timestamp [Audit DB] [N 年] 敏感操作 [詳細描述] [Audit DB] [N 年] 9.2 日誌安全 項目 設計 日誌不得包含 密碼、Token、PII 明碼、信用卡號 日誌完整性 [HMAC / Append-only storage] 日誌存取控制 [僅 Security Team + Auditor 可存取] 竄改偵測 [Hash chain / WORM storage] 10. 安全組態基線 10.1 HTTP Security Headers Header 值 說明 Strict-Transport-Security max-age=31536000; includeSubDomains HSTS X-Content-Type-Options nosniff 防 MIME 嗅探 X-Frame-Options DENY 防 Clickjacking X-XSS-Protection 0 由 CSP 取代 Referrer-Policy strict-origin-when-cross-origin Permissions-Policy camera=(), microphone=() 限制瀏覽器功能 10.2 TLS 組態 項目 設計 最低版本 TLS 1.2(建議 TLS 1.3) 允許 Cipher Suites [列出安全的 cipher suites] 憑證類型 [RSA 2048+ / ECDSA P-256+] HSTS Preload [是/否] 11. 安全測試策略 測試類型 工具 頻率 負責人 SAST [SonarQube / Checkmarx / Semgrep] 每次 CI build Dev Team DAST [OWASP ZAP / Burp Suite] 每個 Sprint AppSec SCA [Snyk / Dependabot / OWASP Dep-Check] 每次 CI build Dev Team Penetration Test [外部廠商] [每年/每版本] AppSec Security Review Code Review + Design Review 每個 PR + 每階段 AppSec + Dev 📖 使用說明 各章節填寫指引 章節 填寫時機 負責人 重點說明 §2 安全目標 專案啟動時 資安 對齊合規需求 §3 身分驗證 設計初期 SA/資安 從威脅模型導出需求 §4 授權控制 配合功能設計 SA 權限矩陣需業務確認 §5 資料保護 設計階段 SA/DBA/資安 PII 處理需法務確認 §6 API 安全 API 設計時 SA/FE/BE 配合 API Spec §7-8 Session/驗證 詳細設計 BE 遵循 OWASP 建議 §9 稽核 設計階段 SA/資安 法規保留需求 §10 組態基線 部署前 DevOps/資安 定期掃描驗證 §11 測試策略 開發啟動前 資安/QA 整合至 CI/CD 💡 範例(以 HRMS 人力資源管理系統為例) 範例:角色與權限矩陣 功能 員工 主管 HR 系統管理員 查看個人資料 R (own) R (dept) R (all) R (all) 編輯個人資料 U (partial) — U (all) U (all) 申請請假 CRU (own) CRU (own) CRUD (all) CRUD (all) 審核請假 — U (dept) U (all) U (all) 查看薪資 R (own) — R (all) R (all) 管理員工 — — CRUD CRUD 系統設定 — — — CRUD 範例:API 安全設計 API Endpoint 認證 授權 Rate Limit 備註 POST /auth/login Public — 5/min per IP 防暴力破解 GET /api/employees/{id} Bearer JWT own or dept_manager or HR 100/min Row-level check POST /api/leave-requests Bearer JWT Employee role 10/min PUT /api/leave-requests/{id}/approve Bearer JWT Manager of requestor 30/min 層級驗證 GET /api/salary/{id} Bearer JWT own or HR 20/min 敏感資料加密回傳 DELETE /api/employees/{id} Bearer JWT Admin only 5/min Soft delete + 稽核 範例:稽核日誌設計 { "timestamp": "2026-04-10T08:30:15.123Z", "event_type": "DATA_ACCESS", "user_id": "EMP-001", "user_role": "HR", "action": "VIEW", "resource": "employee.salary", "resource_id": "EMP-042", "source_ip": "10.0.10.45", "user_agent": "Mozilla/5.0...", "result": "SUCCESS", "metadata": { "fields_accessed": ["base_salary", "bonus"], "reason": "Monthly payroll processing" } } 📌 審閱重點 ...

May 18, 2026 · 6 min · 1157 words · Eric Cheng

安全需求清單範本(Security Requirements Checklist Template)

安全需求清單範本(Security Requirements Checklist) 參照標準:OWASP ASVS 4.0.3(Application Security Verification Standard)/ ISO/IEC 27001:2022 Annex A 文件用途:定義系統應滿足的安全需求,確保設計與開發階段納入安全考量 適用階段:需求分析階段(Requirements Phase)— Security by Design 📋 章節目錄 文件資訊 安全需求概述 認證需求 授權與存取控制 資料保護需求 輸入驗證與輸出編碼 Session 管理 日誌與監控需求 通訊安全 組態安全 合規性需求 附錄 1. 文件資訊 📝 範本 項目 內容 文件編號 SR-{專案代碼}-{序號} 文件名稱 {系統名稱} 安全需求清單 版本 v{主版本}.{次版本} 狀態 草稿 / 審核中 / 核定 建立日期 {YYYY-MM-DD} 撰寫者 {姓名/角色} 資安審核者 {資安人員姓名} ASVS Level Level 1 / Level 2 / Level 3 📖 使用說明 依據 OWASP ASVS 4.0.3 標準,安全需求分為三個驗證等級: Level 1:所有應用程式的最低標準 Level 2:處理敏感資料的應用程式 Level 3:最高安全等級(金融、醫療、關鍵基礎設施) 本清單在需求階段制定,貫穿整個 SDLC(設計需遵循、開發需實作、測試需驗證) 💡 範例 項目 內容 文件編號 SR-HRM-001 系統名稱 人力資源管理系統 ASVS Level Level 2(處理員工個資與薪資資料) 2. 安全需求概述 📝 範本 2.1 系統安全分類 項目 評估 資料敏感度 一般 / 敏感 / 高度敏感 系統曝露面 內部 / 外部 / 混合 使用者類型 內部員工 / 外部客戶 / 合作夥伴 法規要求 {適用法規} 安全等級 ASVS Level {1/2/3} 2.2 安全需求追溯矩陣 安全需求 ID 需求描述 ASVS 章節 對應 FRD 優先級 SEC-{xxx} {描述} V{x}.{x} FR-{xxx} 高/中/低 📖 使用說明 安全分類決定應套用的 ASVS Level 追溯矩陣確保每個安全需求可連結到 FRD 需求與 ASVS 標準章節 優先級考量:法規強制 > 高風險 > 一般防護 💡 範例 2.1 系統安全分類 項目 評估 資料敏感度 高度敏感(身分證字號、薪資、銀行帳號) 系統曝露面 混合(內部網路 + VPN 遠端存取) 使用者類型 內部員工(全體) + HR 管理人員 法規要求 個人資料保護法、勞動基準法 安全等級 ASVS Level 2 3. 認證需求(Authentication) 📝 範本 需求 ID 需求描述 ASVS 參照 Level 必須/建議 實作狀態 SEC-AUTH-001 {認證需求描述} V2.{x} L{N} 必須/建議 ☐ SEC-AUTH-002 {認證需求描述} V2.{x} L{N} 必須/建議 ☐ 📖 使用說明 對應 OWASP ASVS V2(Authentication)章節 Level 1:基本密碼安全;Level 2:多因子認證(MFA);Level 3:硬體認證 認證需求需涵蓋:密碼策略、帳號鎖定、MFA、SSO 💡 範例 需求 ID 需求描述 ASVS 參照 Level 必須/建議 實作狀態 SEC-AUTH-001 密碼長度至少 12 字元 V2.1.1 L1 必須 ☑ SEC-AUTH-002 帳號連續 5 次登入失敗後鎖定 30 分鐘 V2.2.1 L1 必須 ☑ SEC-AUTH-003 管理員帳號啟用多因子認證(MFA) V2.8.1 L2 必須 ☑ SEC-AUTH-004 整合企業 AD 實現 SSO 登入 V2.7.1 L2 必須 ☑ SEC-AUTH-005 密碼不儲存明文,使用 bcrypt/Argon2 雜湊 V2.4.1 L1 必須 ☑ SEC-AUTH-006 Token 過期時間 ≤ 15 分鐘(Access Token) V2.8.5 L2 必須 ☐ 4. 授權與存取控制(Authorization) 📝 範本 需求 ID 需求描述 ASVS 參照 Level 必須/建議 實作狀態 SEC-AUTHZ-001 {授權需求描述} V4.{x} L{N} 必須/建議 ☐ 📖 使用說明 對應 OWASP ASVS V4(Access Control)章節 遵循最小權限原則(Principle of Least Privilege) 需求涵蓋:RBAC/ABAC 模型、水平/垂直權限控制、API 授權 💡 範例 需求 ID 需求描述 ASVS 參照 Level 必須/建議 實作狀態 SEC-AUTHZ-001 實施 RBAC 角色權限控制(Admin/Manager/Employee) V4.1.1 L1 必須 ☑ SEC-AUTHZ-002 使用者僅能存取自己的薪資/假勤資料(水平權限) V4.1.2 L1 必須 ☑ SEC-AUTHZ-003 API 端點實施授權檢查,拒絕未授權請求回傳 403 V4.1.3 L1 必須 ☑ SEC-AUTHZ-004 管理功能(帳號管理、系統設定)限 Admin 角色 V4.2.1 L1 必須 ☑ SEC-AUTHZ-005 所有權限變更需記錄稽核日誌 V4.3.1 L2 必須 ☐ 5. 資料保護需求(Data Protection) 📝 範本 需求 ID 需求描述 ASVS 參照 Level 必須/建議 實作狀態 SEC-DATA-001 {資料保護需求描述} V6.{x}/V8.{x} L{N} 必須/建議 ☐ 敏感資料識別 資料欄位 敏感等級 加密方式 遮罩方式 保留期限 {欄位} 高/中/低 {加密} {遮罩} {期限} 📖 使用說明 對應 OWASP ASVS V6(Stored Cryptography)與 V8(Data Protection) 敏感資料需先識別、再定義保護策略 保護措施包含:傳輸加密、靜態加密、資料遮罩、存取控制、保留/銷毀策略 💡 範例 敏感資料識別 資料欄位 敏感等級 加密方式 遮罩方式 保留期限 身分證字號 高 AES-256 (靜態) A1234****9 離職後 5 年 銀行帳號 高 AES-256 (靜態) --1234 離職後 5 年 薪資金額 高 AES-256 (靜態) 不遮罩(權限控制) 永久 手機號碼 中 無(權限控制) 09xx-xxx-789 離職後 2 年 Email 低 無 無 離職後 2 年 需求 ID 需求描述 ASVS 參照 Level 必須/建議 SEC-DATA-001 個資欄位靜態加密儲存(AES-256) V6.2.1 L2 必須 SEC-DATA-002 所有傳輸使用 TLS 1.2+ V9.1.1 L1 必須 SEC-DATA-003 日誌中禁止記錄敏感資料明文 V8.3.1 L1 必須 SEC-DATA-004 資料庫備份亦需加密 V6.2.3 L2 必須 6. 輸入驗證與輸出編碼 📝 範本 需求 ID 需求描述 ASVS 參照 Level 必須/建議 實作狀態 SEC-INPUT-001 {輸入驗證需求} V5.{x} L{N} 必須/建議 ☐ 📖 使用說明 對應 OWASP ASVS V5(Validation, Sanitization and Encoding) 防禦 OWASP Top 10 中的注入攻擊(SQL Injection、XSS、Command Injection) 原則:永不信任使用者輸入,伺服器端必須驗證 💡 範例 需求 ID 需求描述 ASVS 參照 Level 必須/建議 SEC-INPUT-001 所有使用者輸入在伺服器端進行驗證(白名單) V5.1.1 L1 必須 SEC-INPUT-002 使用參數化查詢防止 SQL Injection V5.3.4 L1 必須 SEC-INPUT-003 HTML 輸出使用 Context-Aware 編碼防止 XSS V5.3.3 L1 必須 SEC-INPUT-004 檔案上傳驗證副檔名、MIME Type、大小限制 V5.1.4 L1 必須 SEC-INPUT-005 API 輸入限制 Content-Length,防止 DoS V5.1.5 L1 必須 7. Session 管理 📝 範本 需求 ID 需求描述 ASVS 參照 Level 必須/建議 實作狀態 SEC-SESS-001 {Session 管理需求} V3.{x} L{N} 必須/建議 ☐ 📖 使用說明 對應 OWASP ASVS V3(Session Management) Session 管理攸關身份劫持風險 需求涵蓋:Session ID 強度、過期設定、Cookie 安全屬性 💡 範例 需求 ID 需求描述 ASVS 參照 Level 必須/建議 SEC-SESS-001 Session ID 長度 ≥ 128 bits,由加密安全亂數產生 V3.2.1 L1 必須 SEC-SESS-002 Cookie 設定 HttpOnly、Secure、SameSite=Strict V3.4.1 L1 必須 SEC-SESS-003 閒置 30 分鐘後自動登出 V3.3.1 L1 必須 SEC-SESS-004 登入後重新產生 Session ID(防 Fixation) V3.2.3 L1 必須 SEC-SESS-005 支援使用者查看與終止其他裝置 Session V3.3.4 L2 建議 8. 日誌與監控需求 📝 範本 需求 ID 需求描述 ASVS 參照 Level 必須/建議 實作狀態 SEC-LOG-001 {日誌監控需求} V7.{x} L{N} 必須/建議 ☐ 稽核事件定義 事件類型 記錄內容 保留期限 {事件} {需記錄的欄位} {期限} 📖 使用說明 對應 OWASP ASVS V7(Error Handling and Logging) 日誌是事後追查與即時偵測的基礎 重點:記什麼、不記什麼(禁止記錄密碼/Token)、保存多久 💡 範例 需求 ID 需求描述 ASVS 參照 Level 必須/建議 SEC-LOG-001 記錄所有認證事件(登入成功/失敗/登出) V7.1.1 L1 必須 SEC-LOG-002 記錄所有授權失敗事件 V7.1.2 L1 必須 SEC-LOG-003 日誌中禁止包含 Session Token、密碼、個資 V7.1.3 L1 必須 SEC-LOG-004 日誌保留 ≥ 90 天,不可竄改 V7.3.1 L2 必須 SEC-LOG-005 連續 5 次認證失敗觸發即時告警 V7.4.1 L2 必須 稽核事件定義 事件類型 記錄內容 保留期限 登入成功 時間、帳號、IP、User-Agent 180 天 登入失敗 時間、帳號、IP、失敗原因 180 天 權限變更 時間、操作者、變更內容 365 天 個資存取 時間、帳號、存取的個資類型 365 天 資料匯出 時間、帳號、匯出範圍、筆數 365 天 9. 通訊安全 📝 範本 需求 ID 需求描述 ASVS 參照 Level 必須/建議 實作狀態 SEC-COMM-001 {通訊安全需求} V9.{x} L{N} 必須/建議 ☐ 📖 使用說明 對應 OWASP ASVS V9(Communication) 保護傳輸中資料不被竊聽或竄改 涵蓋:TLS 版本、憑證管理、HSTS、內部通訊加密 💡 範例 需求 ID 需求描述 ASVS 參照 Level 必須/建議 SEC-COMM-001 所有外部通訊使用 TLS 1.2 以上 V9.1.1 L1 必須 SEC-COMM-002 啟用 HSTS(max-age ≥ 1 年) V9.1.2 L1 必須 SEC-COMM-003 伺服器憑證由受信任 CA 簽發 V9.2.1 L1 必須 SEC-COMM-004 服務間(微服務)通訊使用 mTLS V9.2.2 L2 建議 SEC-COMM-005 禁用 SSL 3.0、TLS 1.0/1.1 V9.1.3 L1 必須 10. 組態安全 📝 範本 需求 ID 需求描述 ASVS 參照 Level 必須/建議 實作狀態 SEC-CFG-001 {組態安全需求} V14.{x} L{N} 必須/建議 ☐ 📖 使用說明 對應 OWASP ASVS V14(Configuration) 安全組態確保系統不因錯誤設定而暴露弱點 涵蓋:預設帳號、除錯模式、HTTP 安全標頭、依賴管理 💡 範例 需求 ID 需求描述 ASVS 參照 Level 必須/建議 SEC-CFG-001 正式環境禁止開啟除錯模式 / 詳細錯誤訊息 V14.1.1 L1 必須 SEC-CFG-002 移除或停用所有預設帳號與密碼 V14.1.2 L1 必須 SEC-CFG-003 設定安全 HTTP Headers(CSP, X-Frame-Options 等) V14.4.1 L1 必須 SEC-CFG-004 第三方依賴無已知 High/Critical CVE V14.2.1 L1 必須 SEC-CFG-005 機敏設定(DB 連線字串、API Key)使用 Secret Manager V14.1.5 L2 必須 11. 合規性需求 📝 範本 法規/標準 適用條款 系統需求對應 實作狀態 {法規名稱} {條款} {系統需滿足的具體需求} ☐ 📖 使用說明 列出系統需遵循的法規、產業標準、企業政策 每條法規要求需轉化為可驗證的技術需求 常見法規:個人資料保護法、GDPR、PCI DSS、ISO 27001 💡 範例 法規/標準 適用條款 系統需求對應 實作狀態 個人資料保護法 第 27 條(安全維護措施) 個資加密儲存、存取控制、稽核日誌 ☑ 個人資料保護法 第 11 條(當事人權利) 提供個資查詢、更正、刪除功能 ☑ ISO 27001:2022 A.8.3(存取控制) RBAC 實作 ☑ ISO 27001:2022 A.8.24(密碼學使用) TLS 1.2+、AES-256 加密 ☑ 公司資安政策 密碼政策 v3.0 12 字元 + 複雜度 + 90 天更換 ☐ 12. 附錄 📝 範本 12.1 安全需求完成度統計 類別 總需求數 已實作 未實作 完成率 認證(AUTH) {N} {N} {N} {%} 授權(AUTHZ) {N} {N} {N} {%} 資料保護(DATA) {N} {N} {N} {%} 輸入驗證(INPUT) {N} {N} {N} {%} Session(SESS) {N} {N} {N} {%} 日誌監控(LOG) {N} {N} {N} {%} 通訊安全(COMM) {N} {N} {N} {%} 組態安全(CFG) {N} {N} {N} {%} 合計 {N} {N} {N} {%} 12.2 OWASP ASVS 對照表 ASVS 章節 主題 本文件對應章節 V2 Authentication 第 3 章 V3 Session Management 第 7 章 V4 Access Control 第 4 章 V5 Validation 第 6 章 V6 Stored Cryptography 第 5 章 V7 Error Handling & Logging 第 8 章 V8 Data Protection 第 5 章 V9 Communication 第 9 章 V14 Configuration 第 10 章 📖 使用說明 完成度統計用於追蹤安全需求落實進度 所有「必須」等級的需求需在上線前 100% 實作 ASVS 對照表協助資安審核人員快速定位驗證範圍 💡 範例 12.1 安全需求完成度統計 類別 總需求數 已實作 未實作 完成率 認證(AUTH) 6 5 1 83% 授權(AUTHZ) 5 4 1 80% 資料保護(DATA) 4 4 0 100% 輸入驗證(INPUT) 5 5 0 100% Session(SESS) 5 4 1 80% 日誌監控(LOG) 5 3 2 60% 通訊安全(COMM) 5 5 0 100% 組態安全(CFG) 5 4 1 80% 合計 40 34 6 85% 📌 範本使用注意事項 ...

May 18, 2026 · 6 min · 1135 words · Eric Cheng