西安阎良区学编程的正规学校,软件(代码)安全开发实战培训

珠海市澜信教育
西安阎良区学编程的正规学校,软件(代码)安全开发实战培训
学习目标

课程大纲
模块
学习内容
第一天
安全编码概论
SEI CERT安全编码原则
1.安全编码十大基本原则:
(1)验证输入(2)注意编译器警告(3)符合安全策略的安全架构和设计(4)保持代码简单
(5)默认拒绝(6)坚持最小权限原则(7)清理发送到其它系统的数据(8)深度防御
(9)采用有效的检测技术(10)采用安全编码标准
2.推荐安全编码实践:
(1)定义安全需求(2)进行威胁建模(3)尽早进行安全测试(4)尽可能多的进行安全测试
SEI CERT Java安全编码规范
3.通用安全编码原则
4.Java安全编码规范:
(1)输入验证和数据净化(IDS)(2)声明和初始化(DCL)(3)表达式(EXP)
(4)类型与运算(NUM)(5)面向对象(OBJ)(6)方法(MET)(7)异常行为(ERR)
(8)可见性和原子性(VNA)(9)锁(LCK)(10)线程API(THI)(11)线程池(TPS)
(12)与线程安全相关的其他规则(TSM)(13)输入输出(FIO)(14)序列化(SER)
(15)平台安全性(SEC)(16)运行环境(ENV)(17)Java本地接口(JNI)
(18)其他(MSC)(19)安卓(DRD)
WEB工程代码审计
(1)SQL注入(2)命令注入(3)XML注入(4)XSS跨站脚本(5)XML外部实体(XXE)
(6)不安全的反序列化(7)不正确的直接对象引用(8)错误的认证和会话管理
(9)跨站请求伪造CSRF及SSRF(10)敏感数据泄露(11)缺少功能层面的访问控制
(12)安全配置错误 (13)不足的日志记录和监控(14)线程安全问题
(15)文件上传和下载 (16)不安全的加密存储和传输
Java代码审计实例
(1)参数化查询的方法正确和错误的使用(2)输入和输出验证错误
(3)敏感数据(手机验证码)泄露(4)密码找回漏洞(5)任意用户注册
(6)错误的逻辑判断条件(7)万能验证码(8)用户权限控制错误
(9)直接构造数据包访问页面功能(10)敏感信息(SMSSDK TOKEN)泄露(11)TOP10漏洞
第二天
软件开发安全生命周期
(1)了解安全需求的来源(2)了解安全需求分析的方法(3)了解威胁建模的方法
(4)了解软件成熟度的模型(5)了解软件开发生命周期的概念(6)了解安全架构设计
(7)了解代码安全测试(8)了解模糊测试和渗透测试(9)了解ASVS
(10)了解安全编码规范(11)了解开发安全管理
安全软件开发生命周期管控介绍
应用系统安全需求分析与设计
(1)介绍应用系统安全需求分析方法(2)介绍应用系统安全设计方法
(3)介绍应用系统安全需求与设计管控措施
应用系统安全开发与测试
(1)介绍应用系统安全开发最佳实践(2)介绍应用系统安全测试方法
(3)介绍应用系统安全开发与测试框架(4)介绍应用系统安全开发与测试管控措施
应用系统安全上线与运维
(1)介绍应用系统安全上线环境要求(2)介绍应用系统安全运维要求
(3)介绍应用系统SOC平台应用技术(4)介绍集中认证,账户管理,审计平台技术
(5)代码安全与开发安全管理
安全开发基础概念和安全开发整体实施概念
应用程序安全验证标准
(1)安全架构、设计与威胁建模(Architecturedesign and threat modelling)
(2)身份鉴别(Authentication)(3)会话管理(Session Management)
(4)访问控制(Access Control)(5)恶意输入处理(Malicious input handling)
(6)加密支撑组件(Cryptography at rest)
(7)错误管理及记录(Error Handling and Logging)
(8)数据保护(Data Protection)(9)通讯相关(Communications)
(10)HTTP安全配置(HTTP Security configuration)
(11)恶意代码控制(Malicious Controls)(12)业务逻辑(Business logic)
(13)文件和资源调用安全(File and resources)
(14)移动安全(Mobile Security)(15)Web服务(Web services NEW for 3.0)
(16)安全配置(security Configuration NEW for 3.0)
APP移动应用安全开发指南
(1)移动应用安全测试指南MSTG(2)架构,设计和威胁建模要求(3)数据存储和隐私要求
(4)加密要求(5)身份验证和会话管理(6)网络通信要求(7)平台交互要求
(8)代码质量和编译要求(9)韧性要求
查看更多...

编程培训

学习目标

掌握前沿技术,增加就业

课程内容

编程是编定程序的中文简称,就是让计算机代码解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。
机器语言:在计算机系统中,一条机器指令规定了计算机系统的一个特定动作。
汇编语言:文件系统驱动编程流程,为了解决使用机器语言编写应用程序所带来的一系列问题,人们首先想到使用助记符号来代替不容易记忆的机器指令。

适用对象


零基础及以上学员均可

课程亮点

1.涉猎行业广、就业方向多
2.就业指导,打造真实教学成果

培训方式

1.实战项目,线下实操
2.在线网课





学习目标