菜单

核心安全

相关源文件

目的与范围

核心安全模块提供所有计算机科学专业学生所需的基础网络安全知识。本模块建立关键的安全原则、安全编码实践和贯穿软件开发生命周期的漏洞识别技能。核心安全是核心CS课程的必修组成部分,建立在核心系统知识之上,并作为高级信息安全专业方向的先修课程。

有关基础知识之外的高级安全主题,请参阅高级信息安全。有关编程安全实现,请参阅核心编程

课程地位与学习流程

核心安全模块在OSSU课程进度中占据关键地位,要求完成基础系统知识的学习,同时为高级专业方向的学习奠定基础。

课程进度中的核心安全

来源: README.md240-262 README.md381-391 README.md263-304

课程结构和要求

核心安全包含四门课程,总计需要20-24周的时间,具体取决于所选的专业方向。

必修课程顺序

课程平台持续时间每周投入先决条件Discord频道
网络安全基础edX8周每周10-12小时XdY3AwTFK4
安全编码原理Coursera4周每周4小时5gMdeSK
识别安全漏洞Coursera4周每周4小时V78MjUS

特定语言的专业方向(选修其一)

课程平台持续时间每周投入Discord频道
C/C++安全漏洞Coursera4周每周5小时Vbxce7A
Java应用程序安全Coursera4周每周5小时QxC22rR

来源: README.md250-262

核心安全学习架构

本模块遵循结构化流程,从理论基础到实际漏洞识别,再到特定语言的实现安全。

知识领域映射

来源: README.md241-248

课程涵盖的主题

网络安全基础

  • 保密性、完整性、可用性(CIA三要素)
  • 安全设计原则和方法
  • 威胁与攻击分类与分析
  • 网络安全协议和机制
  • 密码学基础与应用

安全编码原理

  • 防御性编程技术
  • 输入验证和清理
  • 身份验证和授权机制
  • 安全通信协议
  • 错误处理和日志记录安全

识别安全漏洞

  • 常见漏洞类型和模式
  • 静态和动态分析技术
  • 安全测试方法
  • 漏洞评估框架
  • 修复计划和实施

特定语言安全方向

C/C++安全漏洞

  • 内存管理安全问题
  • 缓冲区溢出预防与检测
  • 格式字符串漏洞
  • 整数溢出/下溢处理
  • 指针算术安全注意事项

Java应用程序安全

  • Java安全模型和沙箱限制
  • 序列化和反序列化攻击
  • SQL注入和NoSQL注入预防
  • 跨站脚本(XSS)缓解
  • 身份验证绕过技术

来源: README.md241-248 README.md250-262

与其他课程领域的整合

核心安全作为系统知识与应用开发之间的桥梁,同时为高级安全专业方向奠定基础。

跨课程安全整合

来源: README.md240-304 README.md381-391

评估与进阶要求

学生必须完成所有三门必修课程以及一门特定语言的专业方向课程,方可满足核心安全的要求。本模块通过实践漏洞识别和安全编码练习,强调实践技能的培养。

完成标准

  • 通过三门必修课程的所有课程评估
  • 完成一门特定语言的安全课程
  • 展示实践的漏洞识别技能
  • 在编程作业中应用安全编码原则

进阶学习先修条件

完成核心安全课程将使学生能够进入

来源: README.md307-309 README.md381-391

社区支持与资源

Discord社区

核心安全课程维护着活跃的学生协作Discord频道

  • 网络安全基础:频道 XdY3AwTFK4
  • 安全编码原则:频道 5gMdeSK
  • 漏洞识别:频道 V78MjUS
  • C/C++安全:频道 Vbxce7A
  • Java安全:频道 QxC22rR

其他支持

有关课程的普遍性问题,请参阅获取帮助。有关高级安全职业指导,请咨询高级信息安全社区频道。

来源: README.md250-262 HELP.md1-10