1.WEB技术:
- 静态WEB
- 动态WEB:
- 应用程序
- 数据库
- 每人看到的内容不同
- 根据用户输入返回不同结果
2.WEB攻击面:
从web来说,应该从整体上考虑在整个web访问、构建构成中,需要哪些环节,然后在针对每个环节进行分析:
- Network:网络
- OS
- WEB Server
- App Server
- Web Application
- Database
- Browser
3.HTTP协议基础
3.1 明文传输
- 无内建的机密性安全机制
- 嗅探或代理阶段可查看全部明文信息
- https只能提高传输层安全(可以通过中间人劫持,将加密数据流一分为二,由中间人构造证书接收client请求,并由中间人在发给server,接收也是一分为二的过程)
3.2 无状态
- 每一次客户端和服务器端的通信都是独立的过程
- WEB由于需要跟踪客户端会话(多步通信)
不适用cookie的应用,客户端每次请求都要重新身份验证(不太实际)(cookie可以存放session id,与session不是一个概念) - Session用于在用户身份验证后跟踪用户行为轨迹(提供用户体验,但增加了攻击向量)
3.3 Cycle单元
请求/响应:一个http基本的单元就是一个请求对应一个响应
3.4 重要的header
- server响应header
- Set-Cookie:服务器发给客户端的Sesssion ID(Session ID的值放在Set-Cookie字段里返回给客户端,存在被窃取的风险)
- Content-Length:响应body部分的字节长度(暴力破解中,根据server返回给client返回页面的长度,可以判断是否破解成功)
- Location:重定向到另一个页面,可识别身份认证后允许访问的页面(用户登录成功后看到的页面)
- client请求header
- Cookie:客户端发回给服务器证明用户状态的信息(头=值,成对出现)
- Referrer:发起新请求之前用户位于哪个页面,服务器基于此头的安全限制很容易被修改绕过
3.5 状态码
服务端响应的状态码表示响应的结果类型(5大类50多个具体响应码)
- 100s:服务器响应的信息,通常表示服务器还有后续处理,很少出现
- 200s:请求被服务器成功接受并处理后返回的响应结果
- 300s:重定向,通常在身份认证成功后重定向到一个安全页面(301永久重定向/302临时重定向)
- 400s:表示客户端请求错误
- 401:需要身份验证
- 402:拒绝访问
- 404:目标未发现
- 500s:服务器内部错误(503:服务不可用)
网友评论