聯繫我們
 課程時長 21 時間:

課程簡介

I. 安全編碼與網頁應用程式安全導論

1. 現代網頁應用程式威脅情勢

  • 常見的網頁應用程式攻擊向量
  • 現代 ASP.NET 應用程式中的安全風險
  • 安全編碼在軟體開發中的角色
  • 認識 OWASP 基金會及其資源

2. 安全軟體開發原則

  • 設計即安全 (Security by design)
  • 深度防禦 (Defense in depth)
  • 最小特權原則 (Least privilege)
  • 安全失敗機制 (Fail securely)
  • 安全預設值 (Secure defaults)
  • 威脅建模基礎

II. 安全開發生命週期 (SDL)

1. 安全軟體開發生命週期

  • 貫穿開發生命週期的安全考量
  • 安全需求定義
  • 安全的架構與設計
  • 安全編碼實務
  • 安全性測試與驗證
  • 安全部署與維護

2. 風險評估與威脅建模

  • 識別資產與威脅
  • 攻擊面分析
  • STRIDE 模型概述
  • 安全風險優先順序排定

III. ASP.NET 應用程式的 OWASP Top 10

1. 理解 OWASP Top 10

  • 存取控制失效 (Broken Access Control)
  • 加密失敗 (Cryptographic Failures)
  • 注入 (Injection)
  • 不安全設計 (Insecure Design)
  • 安全設定錯誤 (Security Misconfiguration)
  • 易受攻擊且過時的元件 (Vulnerable and Outdated Components)
  • 身分識別與驗證失敗 (Identification and Authentication Failures)
  • 軟體與資料完整性失敗 (Software and Data Integrity Failures)
  • 安全記錄與監控失敗 (Security Logging and Monitoring Failures)
  • 伺服器端請求偽造 (SSRF)

2. 應用 OWASP 建議

  • 安全編碼技術
  • 預防性控制措施
  • 安全配置實務
  • 真實案例示範

IV. 驗證與授權安全

1. 驗證基礎

  • ASP.NET 中的驗證機制
  • 密碼安全
  • 多重身分驗證 (MFA)
  • 工作階段管理
  • 身分識別管理

2. 授權與存取控制

  • 角色型授權 (Role-based authorization)
  • 要求型授權 (Claims-based authorization)
  • 政策型授權 (Policy-based authorization)
  • 防止特權提升
  • 保護敏感資源

V. 預防注入攻擊

1. 注入漏洞

  • SQL 注入
  • 命令注入
  • LDAP 注入
  • XML 注入
  • NoSQL 注入概述

2. 安全編碼技術

  • 參數化查詢
  • 輸入驗證
  • 輸出編碼
  • ORM 安全考量
  • 安全的資料庫存取實務

VI. 預防跨站腳本攻擊 (XSS)

1. 理解 XSS

  • 儲存型 XSS (Stored XSS)
  • 反射型 XSS (Reflected XSS)
  • DOM 型 XSS (DOM-based XSS)
  • 攻擊情境

2. XSS 預防

  • 輸出編碼
  • 輸入驗證
  • 內容安全政策 (CSP)
  • HTML 與 JavaScript 的安全處理
  • ASP.NET 用於預防 XSS 的安全功能

VII. 預防跨站請求偽造 (CSRF)

1. 理解 CSRF

  • CSRF 攻擊運作原理
  • 常見攻擊情境
  • 業務影響

2. CSRF 防護

  • 防偽代碼 (Anti-forgery tokens)
  • SameSite Cookie
  • 安全工作階段管理
  • ASP.NET 防偽機制

VIII. ASP.NET 應用程式的安全配置

1. ASP.NET 安全功能

  • 配置安全
  • 安全 HTTP 標頭
  • HTTPS 與 TLS 配置
  • 密鑰管理 (Secrets management)
  • 安全例外處理

2. 保護敏感資料

  • 資料保護 API
  • 憑證的安全儲存
  • 加密基礎
  • 金鑰管理

IX. 輸入驗證與安全資料處理

1. 使用者輸入驗證

  • 白名單與黑名單之比較
  • 伺服器端驗證
  • 客戶端驗證考量
  • 檔案上傳安全

2. 安全資料處理

  • 序列化安全
  • 反序列化風險
  • 資料完整性
  • 安全記錄實務

X. 滲透測試與安全驗證

1. 滲透測試方法論

  • 規劃安全評估
  • 漏洞識別
  • 利用漏洞的概念
  • 發現問題報告

2. 安全測試技術

  • 靜態應用程式安全測試 (SAST)
  • 動態應用程式安全測試 (DAST)
  • 互動式應用程式安全測試 (IAST)
  • 相依性與元件分析
  • 手動程式碼審查

XI. ASP.NET 應用程式的安全加固

1. 應用安全編碼實務

  • 安全驗證實施
  • 安全授權實施
  • 工作階段安全
  • 例外處理
  • 記錄與監控
  • 安全部署考量

2. 安全最佳實務

  • 安全編碼標準
  • 相依性管理
  • 修補程式管理
  • 持續的安全改進

XII. 實作安全工作坊

1. 識別與利用常見漏洞

  • 分析不安全的 ASP.NET 程式碼
  • 識別 OWASP Top 10 漏洞
  • 理解攻擊技術
  • 評估應用程式安全

2. 修復安全問題

  • 應用安全編碼修復
  • 驗證緩解措施
  • 測試修復後的應用程式
  • 安全編碼審查練習

XIII. 總結與課程回顧

1. 關鍵概念回顧

  • 安全設計原則
  • OWASP Top 10 緩解策略
  • ASP.NET 安全功能
  • 安全開發生命週期

2. 最終討論

  • 安全編碼最佳實務
  • 將安全融入開發團隊
  • 其他 OWASP 資源與工具
  • 問答與後續步驟

最低要求

具備 ASP.NET 經驗    
具備建立網頁應用程式的經驗    

客戶評論 (5)

即將到來的課程

課程分類