联系我们

课程大纲

1. IT安全与安全编码

  • 基本安全原则:在Java应用程序中理解机密性、完整性和可用性(CIA)。
  • 安全软件开发生命周期(SSDLC):从需求到部署的集成安全。
  • 安全编码范式:深度防御、最小权限和故障安全默认值。
  • 标准漏洞分类:理解CWE(常见弱点枚举)和OWASP。

2. Web应用程序安全

  • 深入探讨OWASP十大漏洞:详细分析注入、身份验证漏洞和敏感数据泄露。
  • 跨站脚本攻击(XSS):在Java/JSP中的反射型、存储型和DOM型XSS场景。
  • 跨站请求伪造(CSRF):攻击机制及Anti-CSRF令牌的实现。
  • 会话管理:Cookie安全、会话固定和超时管理。
  • API安全:保护REST和SOAP端点免受滥用。

3. Web服务安全

  • Web服务与传统Web应用的区别:攻击面的不同。
  • 传输层安全:为Java客户端和服务器配置SSL/TLS。
  • 消息安全:在负载级别确保完整性和机密性。
  • 身份验证标准:OAuth 2.0、OpenID Connect和JWT(JSON Web令牌)的实现。

4. XML安全

  • XML解析漏洞:防止XML外部实体(XXE)攻击。
  • XML模式验证:严格模式实施的最佳实践。
  • XML数字签名:实现签名以确保不可否认性。
  • XML加密:加密XML内容的标准方法。

5. Java安全基础

  • Java安全架构:java.security包和提供者架构。
  • 安全提供者:安装和配置如Bouncy Castle等提供者。
  • 访问控制:策略文件、权限和安全管理器(传统与现代)。
  • 密钥库管理:创建和管理用于证书的密钥库和信任库。

6. 实用密码学

  • 加密算法:对称加密(AES)、非对称加密(RSA、ECC)和哈希算法(SHA-256/512)概述。
  • 随机数生成:java.util.Randomjava.security.SecureRandom的危险性。
  • 密钥管理:密钥生成、存储和轮换策略。
  • Java加密架构(JCA):使用CipherMessageDigestMac类。
  • Java加密扩展(JCE):理解策略文件和无限制强度管辖。

7. Java安全服务

  • Java中的SSL/TLS:使用SSLSocketFactoryHttpsURLConnection
  • 信任管理器:为私有PKI环境自定义信任验证。
  • 认证器:使用Authenticator.getDefault()进行编程式认证。
  • 证书解析:以编程方式读取和分析X.509证书。

8. Java EE安全

  • 声明式安全:使用web.xml和注解实现基于角色的访问控制(RBAC)。
  • 编程式安全:使用HttpServletRequest.isUserInRole()getRemoteUser()
  • JAAS(Java认证和授权服务):配置login.conf并实现LoginModule
  • Servlet安全:容器管理的安全约束和认证方法(FORM、BASIC、DIGEST)。

9. 常见编码错误和漏洞

  • 不安全的反序列化:ObjectInputStream的风险及绕过安全检查。
  • 命令注入:缓解操作系统级执行漏洞。
  • 路径遍历:清理文件系统输入以防止目录遍历。
  • 反射滥用:与java.lang.reflect相关的风险及绕过访问控制。
  • 硬编码凭证:从源代码中识别和移除敏感信息。
  • 密码学实现错误:使用ECB模式、弱密钥或静态IV。

10. 知识来源

  • 静态分析工具:使用SonarQube、Checkmarx和Fortify进行自动扫描。
  • 动态分析工具:Burp Suite和OWASP ZAP概述。
  • CVE数据库:如何跟踪和应对新的Java框架漏洞。
  • 推荐阅读:书籍、文档和安全编码检查清单列表。

要求

无。

 21 小时

客户评论 (4)

即将举行的公开课程

课程分类