课程主页: https://www.coursera.org/learn/identifying-security-vulnerabilities-c-programming
在现代软件开发中,安全性已成为一个至关重要的话题。Coursera 上的《C/C++ 编程中的安全漏洞识别》课程正是应对这一挑战的理想选择。这门课程建立在《安全编码原理》和《识别安全漏洞》这两门课程所学的技能和编码实践之上,旨在帮助开发人员识别和修复脆弱的 C++ 库代码。
课程采用集中注意力的技术,促使学员思考“需要注意什么”和“从哪里入手”来评估和最终修复代码中的漏洞。通过这个课程,您将学习如何使您的程序准确执行,并抵御各种攻击。
### 课程大纲
1. **用户、权限和环境变量**:本模块将教您如何在运行程序或子程序时管理用户和权限。您将了解在 Linux(及类 UNIX)系统上的不同权限类型,并能识别程序 shell 如何保持环境设置。
2. **验证与确认、缓冲区与数值溢出、输入注入**:在此模块中,您将学习如何进行输入检查,即验证与确认的过程,并避免程序中的缓冲区溢出和数值溢出。此外,您将了解输入注入(如跨站脚本和 SQL 注入)的检测及其后果。
3. **文件、子进程和竞争条件**:该模块将帮助您理解文件与子进程的互动,创建子进程和 Shell 脚本,并识别和防止程序中的竞争条件。
4. **随机性、密码学和其他主题**:在这个模块中,您将识别伪随机性与实际随机性的差别,学习如何应用随机性以及生成随机数。您将分析密码学的用法和重要性,包括如何处理敏感信息和防范字符串攻击。
该课程适合那些想要提升自己安全编码能力的开发者。不论您是初学者还是有经验的程序员,通过这个课程,您都将掌握识别和修复 C/C++ 编程中的安全漏洞所需的实用技能。无论是在个人项目中,还是在职业生涯中,对这些技能的掌握都将极大提升您的竞争力。
课程主页: https://www.coursera.org/learn/identifying-security-vulnerabilities-c-programming