首页 > 人才培养 > 本科教育 > 教学大纲 > 正文

《软件安全开发技术(Software Security Development Techniques)》教学大纲

    作者: 发布时间: 2025-11-05 15:21 访问次数:

软件安全开发技术(Software Security Development Techniques)》教学大纲

制定时间:2025年4月

一、课程基本信息

(一)适用专业:计算机科学与技术

(二)课程代码

(三)学分/课内学时:2学分/32学时

(四)课程类别:专业教育

(五)课程性质:选修/理论课

(六)先修课程:《C语言程序设计与应用》、《Web编程基础实训》、《面向对象的程序设计方法 》、《数据库原理及应用》

(七)后续课程:《企业级项目综合实训》、《软件工程工具综合训练》、《企业级应用开发》、《软件安全开发技术综合实训》

二、课程教学目标

《软件安全开发技术》是计算机科学与工程学院计算机专业的一门专业选修课,在培养学生计算机软件安全开发技术的基本理论、基本知识、基本技能及运用基本原理分析实际工程的影响因素,实践能力培养方面占据重要地位。

本课程的主要任务是通过课堂教学、实验教学等环节培养学生的软件开发安全技术以及在具体项目实践过程中的安全应用能力,使学生掌握Web开发过程中安全相关领域的基础概念与发展过程;掌握基于安全的Web开发技术的应用体系结构及基于安全的Web应用设计开发能力,包括:建立威胁建模-安全编码-持续监控的软件开发安全闭环思维,结合相关合规要求设计软件开发的安全方案,并对Web应用工程中涉及的具体安全问题展开分析、求解和应对,课程目标及能力要求具体如下:

目标1:在课程中全面讲解Web开发安全技术的相关知识,基础概念。让学生对Web项目的安全开发技术、Web安全开发工具及Web安全开发应用体系有清楚的了解,掌握Web安全开发技术在工程应用中的应用方法。

目标2:课程将指导学生在工程案例中使用Web安全开发技术的相关知识及概念,以提升学生的实际应用能力,让学生学会以Web安全开发技术的思想解决实际工程安全问题的方法,为后续课程的进一步的学习打下基础。

三、教学内容与方法

)教学内容

教学单元

教学内容

学习产出要求

推荐学时

推荐教学方式

支撑

课程目标

备注

1

Web安全开发基础

主要包括:Web安全开发技术的定义、发展历程及行业趋势;HTTP协议工作原理、安全机制;安全开发生命周期(SDL)各个阶段的安全实践;威胁建模(STRIDE)模型

了解Web安全开发技术的发展历史,理解Web安全开发技术的相关概念,掌握HTTP协议的安全机制及常见漏洞;熟悉SDL各个阶段的任务

3

讲授

1,2

1+1

2

身份与访问控制安全

主要包括:JSON Web Token实现原理、OAuth授权流程;Session与Token的区别、安全Cookie设置; RBAC模型中的角色定义、权限分配、动态权限管理

掌握JWT和OAuth的实现原理,能设计安全的会话管理机制;理解RBAC模型,能完成角色与权限的关联配置

6

讲授+案例+实验

1,2

4+2

3

输入验证与注入防御

主要包括:SQL注入/XSS/命令注入的攻击链路分析;参数化查询、HTML转义、输入白名单过滤等过滤技术;使用相关工具展开注入漏洞测试

掌握注入攻击的防御方法,能编写安全代码避免常见漏洞;能使用工具进行漏洞测试与修复

6

讲授+案例+实验

1,2

4+2

4

加密与密钥管理

主要包括:TLS原理中的握手协议、加密套件、证书验证;AES对称加密、RSA非对称加密实践;密钥生成、存储以及轮换策略

理解TLS协议原理,掌握加密算法的工程实践;能设计安全的密钥存储与轮换方案

5

讲授+案例+实验

1,2

3+2

5

Web日志分析与安全审计

主要包括:Web日志类型(访问日志/错误日志/安全日志);基于PCI DSS的日志留存要求、不同类型审计标准(PCI DSS)下的数据访问审计;日志审计工具集成应用

能分析不同日志类型的安全价值;掌握合规审计要点,能配置系统进行日志关联分析

6

讲授

1

4+2

6

安全编码规范及实践

主要包括:OWASP ASVS标准下的身份验证、会话管理、加密等安全验证标准;CWE/SANS 漏洞案例分析;使用工具扫描代码缺陷

熟悉OWASP ASV标准,能识别代码中的高风险漏洞;掌握代码审计工具的使用,能输出修复方案

3

讲授+案例+实验



7

安全测试

主要包括:安全测试工具链包含的内容,能用黑盒/白盒展开渗透测试、漏洞扫描;事件响应计划模板、备份恢复方案;展开相关定的案例模拟

掌握安全测试工具链,能制定应急响应计划;熟悉攻击事件分析与处置的方法

3

讲授+案例+实验

1,2

1+1

(二)教学方法

本课程在理论教学和项目案例教学的基础上,注重理论与实践的结合,注重学生开发安全项目能力的培养。通过加强实验上机来巩固学生对于Web安全开发技术的理解与应用,通过实验锻炼学生的动手能力,实验内容的设计将以目前比较常见的Web安全项目应用场景为实例,使学生体会Web安全项目的应用场景,能够为学生的后续课程学习打下坚实的基础。

1.课堂讲授

(1)采用案例式教学,让学生针对案例进行思考,让学生掌握学习方法,使学生能够真正理掌握Web安全开发技术的基本概论,认识Web安全开发技术的重要性,学会对案例进行剖析与设计,提高学习积极性,主动练习,从而培养学生的安全意识与设计能力,为后续后续课程的学习奠定基础。

(2)在教学内容上系统讲授Web安全开发技术栈的相关概念和应用场景,分析相关组件的工作机制,剖析Web项目安全开发技术的实现过程,演示相关技术的使用方法。通过本课程的学习,使学生能够掌握Web安全开发技术在实际工程中的应用方法,提升学生的项目开发能力。

(3)在教学过程中采用电子教案,多媒体教学、案例教学与传统板书相结合,提高课堂教学信息量,增强教学的直观性。

2.实验教学

实验教学的目的是让学生更好的理解Web安全开发技术的体系结构及相关原理,掌握Web安全开发技术的常用设计方法,提升学生的综合编程能力和项目安全设计能力。实验教学是本课程中重要的实践环节, 课程必做实验4个,各实验要求学生独立完成。实验成绩根据学生实验完成情况给出。

四、考核及成绩评定

(一)考核内容及成绩构成

课程目标

考核内容

成绩评定方式

成绩占总评分比例

目标成绩占当次考核比例

学生当次考核平均得分

目标达成情况计算公式

目标1:Web开发安全技术的相关知识,基础概念。让学生对Web项目的安全开发技术、Web安全开发工具及Web安全开发应用体系有清楚的了解,掌握Web安全开发技术在工程应用中的应用方法。

Web开发安全技术的相关知识,基础概念,HTTP协议安全、安全开发生命周期;会话管理概念;身份与访问控制相关概念;注入攻击原理;防御技术;加密算法;日志类型;测试流程;应急策略

平时作业

10%

100%

A1

(10%*A1+A2*15%+B*36%/60%)/60

 

会话管理;RBAC模型;

实验

10%

100%

A2

Web开发安全技术的相关知识,基础概念,HTTP协议安全、安全开发生命周期;会话管理概念;身份与访问控制相关概念;注入攻击原理;防御技术;加密算法;日志类型;测试流程;应急策略;安全编码规范

上机考试

36%

60%

B

目标2:课程将指导学生在工程案例中使用Web安全开发技术的相关知识及概念,以提升学生的实际应用能力,让学生学会以Web安全开发技术的思想解决实际工程安全问题的方法,为后续课程的进一步的学习打下基础。

安全需求评审;威胁建模工具的应用;合规审计,检查日志留存;使用工具扫描项目,修复漏洞

平时作业

5%

100%

A3

(5%*A3+A4*10%+B1*24%/40%)/40

 

输入验证与注入防御;加密与密钥实践;日志分析,识别异常流量;

实验

15%

100%

A4

SDL实践、安全需求评审、Token、身份验证、输入验证、注入防御、加密与密钥管理、日志分析、安全设计、安全编码实践、安全测试与应急响应

上机考试

24%

40%

B1

总评成绩(100%)= 平时作业(15%)+实验(25%)+机试(60%)

100%

——

——


(二)平时考核成绩评定

对应目标

目标1:在课程中全面讲解Web开发安全技术的相关知识,基础概念。让学生对Web项目的安全开发技术、Web安全开发工具及Web安全开发应用体系有清楚的了解,掌握Web安全开发技术在工程应用中的应用方法。

目标2:课程将指导学生在工程案例中使用Web安全开发技术的相关知识及概念,以提升学生的实际应用能力,让学生学会以Web安全开发技术的思想解决实际工程安全问题的方法,为后续课程的进一步的学习打下基础。

考查点

平时作业

实验

总评分占比

15%

25%

评分标准

100%

90%

90%≤作业测试分值≤100%

能够根据实验要求制定很好的实验方案,能正确熟练使用软件和Web安全技术完成实验。实验态度认真,操作能力强,操作、记录规范,沟通、协作很好。有很强的总结实验和撰写报告的能力,实验报告内容完整、正确,有很好的分析与见解。文本表述清晰,书写工整,格式规范。

89.9%

80%

80%≤作业测试分值<90%

能够根据实验要求制定良好的实验方案,能正确熟练使用软件和Web安全技术完成实验。实验态度认真,操作能力强,操作、记录规范,沟通、协作很好。有较强的总结实验和撰写报告的能力,实验报告内容完整、正确,有很好的分析与见解。文本表述清晰,书写工整,格式规范。

79.9

70%

70%≤作业测试分值<80%

能够根据实验要求制定实验方案,能较较准确的熟练使用软件和Web安全技术完成实验。实验态度较认真,操作能力一般,操作、记录规范,沟通、协作较好。有一定的总结实验和撰写报告的能力,实验报告内容完整、正确,有较好的分析与见解能力。文本表述较清晰,书写较工整,格式较规范。

69.9%

60%

60%≤作业测试分值<70%

基本能够根据实验要求制定实验方案,能够使用软件和Web安全技术基本完成实验。实验态度不太认真,操作能力不太强,操作、记录规范,沟通、协作一般。有一定的总结实验和撰写报告的能力,实验报告内容基本完整、正确,有一定的分析与见解能力。文本表述基本清晰,格式基本规范。

59.9%至

0

0≤作业测试分值<60%

不能够根据实验要求制定实验方案,不能较准确的熟练使用软件和Web安全技术完成实验。实验态度不认真,操作能力不强,操作、记录不规范,沟通、协作不好。总结实验和撰写报告的能力较差,实验报告内容不完整、不正确,分析与见解有偏差。文本表述清晰不够清晰,格式不够规范。

 

五、参考学习资料

(1)推荐教材:

《Web开发与安全》,杨同峰、殷立峰编著,清华大学出版社,ISBN:9787302604426

(2)参考教材:

    《Web安全开发指南》,[美] John Paul Mueller编著,温正东译,人民邮电出版社,ISBN: 9787115454089