前言
自学网络安全的第二天
正文
今天就主要是Web架构安全分析,这几天全是理论,打基础
主要是面对靶场实在不知道是从何下手,碰到很多东西都不知道是什么怎么用,直接看答案又浪费资源了
Web工作机制
P.S. ARP(Address Resolution Protocol)是一种网络协议,用于将IP地址解析为物理MAC地址,以便在局域网中进行通信。
Host文件是一个文本文件,用于在计算机网络中将域名映射到相应的IP地址。它可以被操作系统用来在域名解析之前先检查本地的映射关系,从而快速地将域名解析为对应的IP地址。Host文件通常位于操作系统的系统文件夹中,例如Windows系统中的C:\Windows\System32\drivers\etc\hosts文件。
- 查看本地缓存
- 查看Host文件
- IP/ARP(获取mac地址)
- 域名DNS解析(获取IP地址)
- 网关 路由
- 到达服务器主机
- 访问80 443端口
- 3次握手建立连接
- 客户端发送http数据包
- 服务端进行http响应
- .html文件直接发送
- .php文件进行解析(e.g. MySQL)
- .php运行结果(html)发送
Web容器——常见的有:Apache(php) IIS(.net) Nginx(反向代理能隐藏内网IP,进行负载均衡)
中间件服务器——Apache服务器只能进行Web服务,需连接php文件
HTTP协议——超文本传输,浏览器与Web服务器的通信协议
URL——统一资源定位符
schema://login:password@address:port/path/to/resource/?query_string#fragment
schema(协议如ftp,https)login(用户名,默认可为空)fragment(锚点,实现页面内定位)
URL编码——URL中允许出现字符有限制,会被百分号编码(%+ASCII码的十六进制)
报文分析工具——HTTP协议规范要求:F12,wireshark,fiddler,burpsuite
HTTP协议规范和要求
请求报文解析
请求行——方法 资源路径 协议/版本
请求头——报文第二行到第一个空行为止(响应头同理)
- Host 请求资源主机端口号
- User-Agent 浏览器指纹
- Refer 当前URL的上一个URL(如果存在跳转)
- Location 重定向目标页面
- Cookie 请求者的身份认证信息
- Accept-Charset 用于指定客户端接受的字符集
- Content-Type 向接收方指定数据类型
- Content-Length 指明实体正文长度
- Last-Modified 指示资源最后修改时间和日期
请求正文(请求方式)
- GET,请求发送资源,没有请求正文
- POST,提交参数表单
- HEAD,在服务器响应中只返回首部
- PUT,向服务器写入文档
- TRACE,回显浏览器请求
- OPTIONS,请求告知支持的功能
- DELETE,删除请求所指定的资源
响应报文解析
状态行——协议/版本 状态代码 描述短语
状态代码 100~199信息性状态码 200~299成功状态码 300~399重定向状态码 400~499客户端错误状态码 500~599服务器错误状态码
其他同理
同源策略——URL主机,schema,端口号 要一致,用于保护iframe内文档,ajax的xmlhttprequest访问的url也受同源策略的限制
cross-origin denied 用于防跨站脚本(js代码)攻击(XSS)——js代码只能读同一个域下面的网页
