J2EE & Java黑客大曝光:开发安全的Java应用程序

J2EE & Java黑客大曝光:开发安全的Java应用程序
作 者: Art Taylor Randy Layman Brian Buege 张伟 张华平 赵金东 张伟
出版社: 清华大学出版社
丛编项: 《黑客大曝光》畅销书系列
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 网络安全
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  ArtTaylorl,Sun认证Java程序员和计算机系统讲师,在计算机领域的从业经历超过18年。他是Java语言的第一批使用者,曾在写过众多与Java技术相关的书籍。BrianBuege,在计算机行业工作了11年的独立顾问,是一位经过认证的Java程序员和开发者,Sun认证Java讲师。RandyLayman,从事Java企业系统开发长达5年,在企业应用开发方面有丰富经验。

内容简介

本书以循序渐进的方式教授您如何防御最新的基于Java的攻击,让您透彻理解黑客的邪恶方法和思考过程。通过贯穿全书的Java和J2EE实际可用代码,您将目睹真实世界中的黑客事件并学习相应对策。ArtTaylorl,Sun认证Java程序员和计算机系统讲师,在计算机领域的从业经历超过18年。他是Java语言的第一批使用者,曾在写过众多与Java技术相关的书籍。BrianBuege,在计算机行业工作了11年的独立顾问,是一位经过认证的Java程序员和开发者,Sun认证Java讲师。RandyLayman,从事Java企业系统开发长达5年,在企业应用开发方面有丰富经验。随着Java应用程序的广泛应用,Java安全问题日益错综复杂。本书作者通过来自现实世界的攻击案例,暴露黑客攻击Java应用程序的方法和手段,提出防御措施与方案,使您未雨绸缪,先人一步。本书首先从Java及J2EE体系结构和基本安全机制入手,阐述Java认证和授权服务、Java密码系统扩展和Java安全套装接字扩展等安全包,书中引用一个完整清晰的示例项目,通过研究它的不同版本,包括独立应用版本、二层应用版本、基于Web的版本和基于EJB的版本,展示Java及J2EE应用在不同环境下可能遭遇的各种安全问题,并及时提出应对策略。本书是开发Java安全应用的宝典,关注的是与应用开发者息息相关的问题。本书面向熟悉Java语言的应用开发人员,对于网络管理员和想了解如何保持J2EE和JavaWeb应用安全的专业人员也不失为一本难觅的参考书。

图书目录

第1部分 J2EE体系结构和技术简介

第1章 Java基础:安全性起步

1. 1 Java的过去和现在

1. 2 Java的语言体系结构

1. 2. 1 Java虚拟机

1. 2. 2 被解释的语言--Java字节码

1. 2. 3 Java的类加载器和内置安全性

1. 2. 4 其他语言特性

1. 3 Java的安全体系结构

1. 3. 1 保护域

1. 3. 2 Java类加载的安全控制

1. 3. 3 Java的权限

1. 4 Java的安全策略

1. 4. 1 Java安全属性文件

1. 4. 2 Java安全策略文件

1. 4. 3 安全管理器的检查

1. 5 Java的principal和subject

1. 6 小结

第2章 JAAS. JCE和JSSE简介

2. 1 Java的认证和授权服务 JAAS

2. 1. 1 JAAS的体系结构

2. 1. 2 JAAS的认证

2. 1. 3 JAAS的授权

2. 2 Java加密

2. 2. 1 加密基础

2. 2. 2 Java密码系统扩展 JCE

2. 2. 3 keytool实用程序

2. 3 Java安全套接字扩展 JSSE

2. 3. 1 SSL基础

2. 3. 2 库和证书的安装

2. 3. 3 JSSE演示程序

2. 4 保护JAR文件

2. 4. 1 jarsigner实用程序

2. 4. 2 封装指令

2. 5 小结

第3章 J2EE的体系结构与安全

3. 1 中间件和分布式软件组件

3. 1. 1 中间件开发

3. 1. 2 多层应用开发

3. 1. 3 多层环境

3. 1. 4 J2EE多层技术

3. 2 Web层组件:servlet和JSP

3. 2. 1 servlet

3. 2. 2 JSP

3. 2. 3 JSP的使用

3. 3 业务层组件:EJB

3. 3. 1 EJB容器提供的服务

3. 3. 2 EJB的类型

3. 3. 3 EJB的部署

3. 3. 4 J2EE的开发角色

3. 3. 5 EJB的开发

3. 4 其他的J2EEAPl

3. 5 EJB安全体系结构

3. 5. 1 Principal和角色

3. 5. 2 声明性安全机制和程序化安全机制

3. 5. 3 系统级安全性

3. 6 表现层的安全

3. 7 业务层的安全

3. 7. 1 安全角色定义

3. 7. 2 角色的映射

3. 7. 3 分配principal到角色

3. 7. 4 资源的安全

3. 8 小结

第2部分 Java应用和网络安全

第4章 使用加密和认证保护应用程序

4. 1 应用程序的安全性:过程

4. 1. 1 系统级与应用级的安全

4. 1. 2 应用级安全技术

4. 2 本地存储数据的危险性

4. 3 小结

第5章 软件盗版和代码授权方案

5. 1 代码滥用的危险

5. 1. 1 另一个授权策略

5. 1. 2 密钥存储

5. 2 小结

第6章 字节码的暴露

6. 1 逆向工程的危险性

6. 2 嵌入串的危险性

6. 3 小结

第7章 攻击Java客户/服务器应用:另一个可攻击的层

7. 1 客户/服务器实现

7. 2 客户/服务器结构面临的威胁

7. 2. 1 数据库防护:应用数据库安全

7. 2. 2 保护数据库连接

7. 2. 3 保护客户层

7. 2. 4 保护基于applet的客户

7. 2. 5 保护基于WebStart的客户

7. 3 小结

第8章 Java网络应用:对安全缺陷的潜在攻击

8. 1 RMI的危险

8. 1. 1 原始的RMI应用

8. 1. 2 加密账号和余额

8. 1. 3 在客户端和服务器之间使用SSL连接

8. 1. 4 实现询问/响应认证

8. 1. 5 使用认证的信道

8. 2 远程加载类和JAR文件的危险

8. 3 小结

第3部分 Web层和业务层的J2EE安全性

第9章 开发JavaWeb层组件

9. 1 示例应用:启用Web

9. 2 小结

第10章 动摇其基础:Web容器的优缺点

10. 1. 1 允许浏览目录

10. 1. 2 invokerservlet

10. 1. 3 窃取会话

10. 1. 4 产生一个服务器密钥

10. 1. 5 在Tomcat中启用HTTPS

10. 1. 6 测试安装

10. 1. 7 增加传输保证

10. 1. 8 客户证书认证

10. 1. 9 配置Tomcat使用SSL客户认证

10. 1. 10 使用客户端证书的容器认证

10. 1. 11 处理重叠的应用角色

10. 2小结

第11章 JavaWeb服务的安全机制

11. 1 Java中的Web服务

11. 1. 1 Web服务技术

11. 1. 2 Web服务开发包

11. 2 使用Web服务的应用程序实现

11. 2. 1 退休程序Web服务组件:服务器端

11. 2. 2 退休程序Web服务组件:客户端

11. 3 Web服务应用的弱点

11. 3. 1 请求SSL连接

11. 3. 2 实现HTTP认证

11. 3. 3 禁用WSDL分发

11. 3. 4 启用程序授权

11. 3. 5 作为上下文参数传递数据库口令

11. 4 Web服务的工作流安全性

11. 5 Web服务安全的未来

11. 5. 1 SOAP安全扩展:数字签名

11. 5. 2 WS-Security

11. 6 小结

第12章 EJB:业务层的安全

12. 1 EJB应用实现

12. 1. 1 EJB的持续服务

12. 1. 2 获取和设置余额方法

12. 1. 3 Bean

12. 2 EJB应用的弱点

12. 3 使用消息驱动的bean时常见的缺陷

12. 4 小结