软件安全 课程设计 实验指导书2017(整合)v1.31
软件安全课程设计实验指导书 本实验指导书旨在指导学生设计和实现一个软件安全实验系统,涵盖软件安全的多个方面,包括同源性检测、漏洞检测和安全分析。通过本实验,学生将掌握软件安全的基本概念和技术,并具备设计和实现软件安全系统的能力。 一、课程设计题目 本实验的课程设计题目是基于源代码的软件同源性分析与漏洞检测系统。学生需要设计和实现一个系统,可以对源代码进行同源性分析和漏洞检测,并提供图形界面展示结果。 二、课程编码和学时学分 本实验的课程编码为 130681,课程性质为必修,学时为 2 周,学分为 1 学分。 三、先修课程 本实验的先修课程包括 C 语言、汇编语言、数据结构和软件安全。 四、课程设计任务和要求 本实验的课程设计任务包括以下几个方面: 1. 同源性检测:使用字符串匹配进行同源性检测,分析源代码之间的拷贝比率,并提供图形界面展示结果。 2. 漏洞检测:检测源代码中的漏洞,包括栈缓冲区溢出、堆缓伏区溢出、整数宽度溢出、整数运算溢出、整数符号溢出、格式化字符串漏洞等,并提供图形界面展示结果。 3. 跨语言同源性检测:验证在软件版权保护中,是否检测到了有版权的代码,并提供图形界面展示结果。 4. 系统界面:提供图形界面展示所有功能的结果。 五、实验过程 实验过程包括以下几个步骤: 1. 利用字符串匹配进行同源性检测 2. 利用控制流程图 CFG 进行源代码同源性检测 3. 跨语言同源性检测 4. 检测源代码中的漏洞 5. 提供图形界面展示结果 六、实验指导 实验指导包括以下几个方面: 1. 实验设计:指导学生设计和实现一个软件安全实验系统。 2. 实验实施:指导学生实施实验,包括同源性检测、漏洞检测和系统界面设计。 3. 实验结果分析:指导学生分析实验结果,包括同源性检测结果和漏洞检测结果。 七、同源性检测技术 同源性检测技术主要有三类方向:基于文本的同源性比对、基于单词(token)的同源性比对、基于源代码语法结构的比对。基于文本的同源性鉴别的目的,是查找出文本上的代码抄袭。常见文本抄袭手段有文本的完全拷贝、增加删除行、顺序无关代码块调换等。典型的基于文本相似性的鉴别技术有:基于子串匹配的方法,基于哈希表的方法等。 八、漏洞检测技术 漏洞检测技术主要包括栈缓冲区溢出检测、堆缓伏区溢出检测、整数宽度溢出检测、整数运算溢出检测、整数符号溢出检测、格式化字符串漏洞检测等。这些技术可以检测源代码中的漏洞,并提供图形界面展示结果。 九、结论 本实验指导书旨在指导学生设计和实现一个软件安全实验系统,涵盖软件安全的多个方面,包括同源性检测、漏洞检测和安全分析。通过本实验,学生将掌握软件安全的基本概念和技术,并具备设计和实现软件安全系统的能力。
剩余24页未读,继续阅读
- 粉丝: 26
- 资源: 320
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
评论0