第七章 确保Web安全的HTTPS
一、HTTP的不足
通讯使用明文(不加密),内容可能被监听
不验证通讯方的身份,所以可能遭遇假装
没法验证报文的完整性,因此有可能已遭篡改
二、通讯加密
三、经过查看对手的证书(SSL支持,第三方提供),来验证通讯方
四、HTTP经常使用MD5和SHA-1等散列值校验方法来确认文件的数字签名,可是这须要用户亲自检查,浏览器没法自动帮用户检查。SSL提供认证和加密处理及摘要功能。
五、HTTP + 加密 + 认证 + 完整性保护 = HTTPS
六、共享秘钥加密(加密和解密用同一把秘钥)
七、公开秘钥加密(发送秘文的一方利用对方的公开秘钥进行加密处理,对方收到被加密的信息后,利用本身的私有秘钥进行解密)
八、HTTPS采用混合加密机制(在交换秘钥环节使用公开秘钥加密方式,以后的通讯交换报文阶段则使用共享秘钥加密方式)
九、数字证书的业务流程:首先,服务器的运营人员向数字证书认证机构提出公开秘钥的申请;数字证书机构在判明提出申请者的身份以后,会对已申请的公开秘钥作数字签名;而后,分配这个已经签名的公开秘钥,并将该公开秘钥放入公钥证书后绑定在一块儿;服务器会将这份公钥证书发送给客户端,以进行公开秘钥加密方式通讯;客户端可以使用数字证书认证机构颁发的公开秘钥,对那张证书上的数字签名进行验证,认证经过,证实服务器的公开秘钥是值得信赖的。
第八章 确认访问用户身份的认证
一、认证,只有登录者本人才知道的信息
1 密码:只有本人知道的字符串信息
2 动态令牌:仅限本人持有的设备内显示的一次性密码
3 数字证书:仅限本人(终端)持有的信息
4 生物认证: 指纹或者虹膜等本人的生理信息
5 IC卡等:仅限本人持有的信息
二、HTTP/1.1使用的认证方式
BASIC认证(基本认证,明文)
DIGEST认证(摘要认证)
SSL客户端认证
FormBase认证(基于表单认证)
三、基于表单验证,会涉及Session管理及Cookie应用
第九章 基于HTTP的功能追加协议
一、消除HTTP瓶颈的SPDY,旨在解决HTTP的性能瓶颈,缩短Web页面的加载时间
二、解决瓶颈的方法
1 Ajax 异步JS达到局部刷新,传输数据变少
2 Comet 一旦服务器有内容更新了,Comet不会让请求等待,直接返回响应,若是没有更新,Comet会将响应置于挂起状态。这是一种延迟应答,模拟实现服务器端向客户端推送的功能。
三、SPDY没有彻底改写HTTP,而是在TCP/IP的应用层与运输层之间经过新加会话层的形式运做。同时。考虑到安全性,规定通讯中使用SSL。使用SPDY得到如下功能:
多路复用,单一TCP链接,能够无限制处理多个HTTP请求
赋予请求优先级
压缩HTTP首部
推送功能,支持服务器主动向客户端推进数据的功能
服务器提示功能,服务器能够主动提示客户端请求所需的资源,在资源已缓存等状况下,能够避免发送没必要要的请求
四、使用浏览器进行双全工通讯的WebSocket,WebSocket是创建在HTTP基础上的协议,所以链接的发起方还是客户端,一旦创建通讯链接,不论服务器或者客户端,任意一方均可直接向对方发送报文。(客户端发送HTTP链接握手请求,在Upgrade字段设置为WebSocket协议,通知服务器更新链接协议)
五、期盼已久的HTTP/2.0(7项技术讨论)
1 多路复用
2 TLS义务化
3 协商
4 客户端拉拽 服务端推送
5 压缩
6 流量控制
7 WebSocket
第十章 构建Web内容的技术
一、HTML
二、CGI 指Web服务器在接收到客户端发送来的请求后转给程序的一组机制。在CGI的做用下,程序会对请求内容做出相应的动做。
第十一章 Web的攻击技术
一、为服务器为目标的主动攻击,指攻击者经过直接访问Web应用,把攻击代码传入的攻击方式。
典型的攻击方式有,SQL注入攻击和OS命令注入攻击
二、以服务器为目标的被动攻击,指利用圈套策略执行攻击代码的攻击模式,在被攻击工程中,攻击者不直接对目标Web应用访问发起攻击。
典型的攻击方式有,跨站脚本攻击和跨站请求伪造