您的位置:首页 > 理论基础 > 计算机网络

[Computer and Network Security] HTTP and Session Management

2016-02-01 14:23 495 查看
TOP 10 Web Attacks

1.Injection

2.Cross-Site Scripting

3.Broken Authentication and Session Management

4.Insecure Direct Object References

5.Cross-Site Request Forgery

6.Security Misconfiguration

7.Insecure Cryptographic Storage

8.Failure to Restrict URL Access

9.Insufficient Transport Layer Protection

10.Unvalidated Redirects and Forwards

一、HTTP基础

同源策略:

SOP防止来自一个源的documents和脚本去获得或设置来自另一个源的document,origin=protocol://host:port

例子:
http://store.company.com/dir2/other.html http://store.company.com/dir/inner/another.html 同源
https://store.company.com/secure.html 不同源,协议不同
http://store.company.com:81/dir/etc.html 不同源,端口不同
http://news.company.com/dir/other.html 不同源,主机不同

HTTP的状态:

HTTP本身是无状态的:HTTP消息在交换的过程中不存储HTTP请求的任何状态,服务器仅仅是简单地以HTTP请求为根据返回HTP响应。

会话管理:允许以web为基础的系统去创建会话,以便当用户想要做某个动作时,不必再重新认证,简单地讲就是保持状态,三种方法:GET,POST,cookies

GET:将状态信息编码进查询串,http://somesite.com/admin.php?sessionID=12345678

POST:通过表单向页面传递数据,例如,可以包含一个名叫sessionID的隐藏域来表明一个独特的会话

Cookies:cookies就是HTTP状态的令牌(或者叫记号,token),token的形式是name=value。

持久型cookies:存在于浏览器的本地硬盘中(又称cookie jar),有一个过期日期指定这个cookie能保存多久。

会话cookies:存在于内存中,当浏览器关闭时它就过期了。

用户与服务器交互

1.服务器在响应消息中把"cookie"发送给客户端 Set-cookie:sid=12345678

2.客户端在后来的请求中展示cookie,cookie:sid=12345678

3.服务器将传送来的cookie与服务器端保存的信息做匹配,例如,用于认证,或者记住用户的喜好,以及优先选项。

cookies的安全问题

HTTP的信息是明文传送,因此cookies也是。

机密性:攻击者能够读取到会话的状态。

完整性:攻击者可以改变会话状态。

重放:攻击者可以重放cookies(例如,认证凭据)。

二、HTTPS

HTTPS(HTTP with TLS)加密所有的东西,包括cookies,HTTP头部,以及HTTP消息内容。

HTTPS的特征:服务器验证(Server authentication),完整性保护(Integrity protection),机密性保护(Confidentiality protection),有选择性的客户端验证(Optional Client authentication)

使用https://代替http://,使用端口443代替端口80

SSL/TLS

HTTPS是建立在SSL上,SSL(安全套接层;Secure Socket Layer)提供了一种传输层的安全服务,现在是版本3。SSL后来作为TLS(Transport Layer Security,传输层安全)而成为因特网标准,使用TCP来提供一个可靠的点对点服务。SSL由两层组成。

总结:

HTTP的会话管理将状态信息包括进了无状态的HTTP中,Cookies是主要的状态信息组件,需要被合理地保护。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: