Course Code: net
Overview:

_

Course Outline:

.NET安全開發最佳實踐

課程目標:

  • 了解SDL安全開發生命周期
  • 了解OWASP Top TenWeb漏洞並知道如何避免它們
  • 了解Web漏洞和安全編碼實踐
  • 掌握.net framework  .net core 的遷移安全編碼最佳實踐
  • 掌握HTTP 2.0, TLS 1.3 的實戰經驗

培訓對象:

  • 開發工程師、測試工程師。

學時:

  • 2天,每日7小時,含一小時休息

課程安排

.NET安全開發最佳實踐
時間課程內容
 

SDL軟件安全開發生命周期概述

  • 軟件的發展和安全問題
  • 軟件安全問題産生的原因
  • 軟件安全開發概念
  • SDL軟件安全開發生命周期
  • 軟件安全開發方法
  • 軟件保障成熟度模型
  • SDL 重要性及發展
  • SDL 主要組成部分和階段

軟件安全需求

  • 安全需求分析方法
  • 安全需求來源
  • 安全需求類型及示例
  • 安全需求庫建設

威脅建模

  • 威脅建模的目的與意
  • 常見威脅建模方法
  • STRIDE 威脅建模流
  • 輕量級威脅建模

安全設計

  • 安全設計基礎
  • 軟件安全設計原則
  • 減少軟件受攻擊面
  • 軟件安全設計方法

安全編碼

  • 軟件漏洞含義及分類
  • 軟件安全編碼原則
  • OWASP TOP10漏洞原理及防禦
  • C# 安全編碼示例
  • Web 安全編碼示例
  • Web應用的安全隱患--注入型隱患-案例實戰
  • .net framework  .net core 的遷移安全編碼最佳實踐

Web安全設計之身份驗證

  • 安全口令的設計原則和要求
  • 用戶的雙重驗證機制
  • 驗證碼的有效使用與最佳實踐
  • 統一認證入口
  • 認證模塊應注意的事項
  • 用戶中心與管理中心分離部署
  • 防止會話劫持和跨站請求
  • 會話固定漏洞
  • 如何實施強身份認證
  • 用戶鎖定策略

Web安全設計之會話管理

  • 常用的會話維持方式介紹與原理
  • 多種會話維持方式的比較
  • 會話過程中應注意事項
  • 如何檢測非法會話?
  • 非法會話如何處理?
  • 會話失效機制
  • 服務端的業務流程的安全控制、順序執行、冪等性

Web安全設計之權限管理

  • 需授權操作的權限認證
  • 授權和用戶角色數據的安全存儲
  • 賬號與角色的最小責任授權
  • 分配最低權限的操作系統賬號與數據庫連接賬號

 

Web安全設計之敏感數據保護

  • 如何界定敏感數據
  • 敏感數據的存放位置
  • 敏感數據的加密存儲
  • 日志中敏感數據處理
  • 敏感數據的緩存
  • 敏感數據的安全傳輸

Web安全設計之安全審計

  • 安全與操作事件的日志記錄
  • 安全日志的訪問策略   
  • 日志模塊對硬件資源的限制
  • 日志的存儲機制和策略
  • 日志的安全備份策略

Web 安全設計之 Web Service  Rest Web Service

  • 輸入參數的校驗和過濾
  • 接口調用者的身份認證
  • 接口調用鑒權
  • https 安全協議
  • 客戶端IP鑒權
  • 日志記錄調用記錄

Web安全編程之輸入校驗

  • 輸入的有效性和合法性校驗
  • http 頭僞造
  • 客戶端和服務端的雙重校驗
  • SQL注入的攻防策略
  • 禁止從客戶端獲取參數執行操作系統命令

Web安全編程之輸出編碼

  • 服務端輸出到客戶端前編碼

Web安全編程之上傳下載  

  • 上傳文件類型、大小限制
  • 上傳文件的重命名       
  • 敏感數據文件放置位置要求

Web安全編程之異常處理

  • 生産環境異常的友好提醒
  • 記錄異常日志

Web安全編程之代碼注釋

  • 代碼注釋要求

Web安全設計之安全部署

  • Web服務器與應用服務器安全部署要求
  • Web應用根目錄安裝部署要求
  • 不同權限用戶對同一應用系統訪問策略
  • 用戶訪問增加安全訪問控制

HTTP/2概述

  • HTTP 的演變
  • HTTP/2 的主要功能
  • HTTP/2 的性能優勢
  • IIS10 上的 HTTP/2

TLS 1.3概述

  • TLS 1.3 中變化的快速概述和介紹
  • TLS 1.3部署應用實戰