目录
web介绍
简介
HTTP知识
通信流程
域名系统DNS
DNS 的工作原理:
DNS 记录类型:
响应码
服务器类型
相关漏洞
HTTP请求
Get和Post区别
HTTP请求响应过程
HTTP请求响应包介绍
HTTP请求报文
响应数据包
常见的请求头部
请求数据:
常见的响应头部
Cookie和Session
web介绍
简介
Web(World Wide Web)即全球⼴域⽹,也称为万维⽹,它是⼀种基于超⽂本和HTTP的、全球性
的、动态交互的、跨平台的分布式图形信息系统。是建⽴在Internet上的⼀种⽹络服务,为浏览者在 Internet上查找和浏览信息提供了图形化的、易于访问的直观界⾯,其中的⽂档及超级链接Internet上的 信息节点组织成⼀个互为关联的⽹状结构。
简单来说,web是web⻚⾯的载体,我们通过浏览器上⽹都是Web
HTTP知识
HTTP超文本传输协议,是一种实现客户端和服务器之间的通信的响应协议,它的用作服务端和客户端之间的请求
URL:统一资源定位符
URI:统一资源标识符
https://www.xxx.com:80/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=x
协议://域名(主机):端口/访问得路径文件?参数名=参数值&参数2=参数值
通信流程

1:输⼊www.xxx.com
2:解析成IP地址:xxx.xxx.xxx.xxx
3:浏览器通过该IP访问web服务器获取web资源
4:再返回给客户端
5:最后呈现在⽤户⾯前(⻚⾯渲染)
域名系统DNS
简介
DNS是⼀个简单的请求-响应协议,是将域名和IP地址相互映射的⼀个分布式数据库,能够使
⼈更⽅便地访问互联⽹。DNS使⽤TCP和UDP协议的53端⼝
概括:DNS(域名系统)服务提供服务到ip地址之间的解析服务
DNS最基本也是最重要的作用就是进行域名和IP地址之间对应关系的记录和查询
这里详细描述一下dns的工作流程
域名系统 (DNS) 是互联网的电话簿。人类通过域名(如 example.com)访问信息,而计算机通过 IP 地址相互识别。DNS 将域名转换为 IP 地址,使浏览器能够加载网站。
DNS 的工作原理:
-
用户请求:当你在浏览器中输入域名时,会发送一个请求到 DNS 解析器。
-
递归查询:解析器先检查本地缓存中是否有该域名对应的 IP 地址。如果没有,会向根 DNS 服务器发送查询请求。
-
根服务器:根 DNS 服务器不会直接提供 IP 地址,而是指向 TLD(顶级域名)服务器,如 .com、.net 服务器。
-
TLD 服务器:TLD 服务器会指向权威 DNS 服务器,这个服务器存储了域名的实际 IP 地址。
-
权威 DNS 服务器:权威服务器返回域名的 IP 地址给 DNS 解析器。
-
返回结果:解析器将 IP 地址返回给用户的浏览器,浏览器用这个 IP 地址访问目标网站。
在对dns的记录类型做个补充
DNS 记录类型:
-
A 记录:将域名映射到 IPv4 地址。
-
AAAA 记录:将域名映射到 IPv6 地址。
-
CNAME 记录:将一个域名别名指向另一个域名。
-
MX 记录:指定邮件服务器。
-
PTR记录 :反向记录 、从IP地址到域名的记录
之后补充一个响应码,看看就行,需要的话随时对比
响应码
服务器类型
根服务器:
根服务器是DNS的核⼼,负责互联⽹顶级域名的解析,⽤于维护域的权威信息,并将DNS
查询引导到相应的域名服务器。
根服务器在域名树中代表最顶级的 "
.
" 域, ⼀般省略。
全球只有13台根服务器,13台IPv4根服务器的域名标号为a到m,即a.root-servers.org到
m.root-servers.org,所有服务器存储的数据相同,仅包含
ICANN(互联⽹名称与数字地址
分配机构)
批准的
TLD(顶级域)
域名权威信息。
权威服务器:
权威服务器上
存储域名Zone⽂件,ZONE⽂件是DNS上保存域名配置的⽂件
,
维护域内域
名的权威信息,递归服务器可以从权威服务器获得DNS查询的资源记录。
权威服务器需要在所承载的域名所属的TLD管理局注册,同⼀个权威服务器可以承载不同
TLD域名,同⼀个域也可以有多个权威服务器。
递归服务器:
递归服务器负责接收⽤户的查询请求,进⾏递归查询并响应⽤户查询请求。在初始时递归
服务器仅有记录了根域名的Hint⽂件。
相关漏洞
DNS劫持:
DNS劫持有多种⽅式,⽐较早期的攻击⽅式是通过攻击域名解析服务器,或是伪造DNS响应的
⽅法,来将域名解析到恶意的IP地址。
随着互联⽹应⽤的不断发展,出现了基于废弃记录的劫持⽅式。这种⽅式发⽣的场景是次级域
名的解析记录指向第三⽅资源,⽽第三⽅资源被释放后,解析记录并没有取消,在这种场景下,可
以对应申请第三⽅资源,以获取控制解析记录的能⼒。
拒绝服务:
DNS服务通常会开启UDP端⼝,当DNS服务器拥有⼤量⼆级域NS记录时,通过DNS的UDP反
射攻击可以实现⾼倍的拒绝服务。
HTTP请求
请求类型介绍:
HTTP 协议中共定义了⼋种⽅法或者叫“
动作
”来表明对 Request-URI 指定的资源的不同操
作⽅式:
GET POST PUT HEAD DELETE OPTIONS CONNECT TRACE
以下为常⽤的6种:
OPTIONS
:返回服务器所⽀持的HTTP请求⽅法。
HEAD
:与GET请求相⼀致的响应,但只返回头部信息,响应体将不会被返回。
GET
:向特定的资源发出请求。
POST
:向指定资源提交数据进⾏处理请求。数据被包含在请求体中。
PUT
:向指定资源位置上传其最新内容。
DELETE
:请求服务器删除指定资源。
Get和Post区别
1:URL可⻅性
Get传参⽅式是通过地址栏URL传递,是可以直接看到get传递的参数,get把请求的数据在 URL后通过?连接,通过&进⾏参数分割。
Post传参⽅式参数URL不可⻅,post将从参数存放在HTTP的包体内。
2:传输数据⼤⼩
Get传递数据是通过URL进⾏传递,对传递的数据⻓度是受到URL⼤⼩的限制,URL最⼤⻓
度是2048个字符。
Post没有⻓度限制。
3:后退⻚⾯
Get后退不会有影响,Post后退会重新进行提交
4:缓存
Get 请求可以被缓存,请求的记录会留在历史记录中。
Post 不可以被缓存,请求不会留在历史记录
5:编码⽅式
Get 请求只URL编码。
Post ⽀持多种编码⽅式。
6:字符类型
Get 只⽀持ASCII字符。
Post 没有字符类型限制。
HTTP请求响应过程
1:域名解析
2:发起TCP3次握⼿
3:建⽴TCP连接后发起HTTP请求
4:服务器端响应http请求,浏览器得到html代码
5:浏览器解析html代码,并请求html代码中的资源
6:浏览器对⻚⾯进⾏渲染呈现给⽤户
HTTP请求响应包介绍
HTTP请求报文
组成:
⼀个HTTP请求报⽂由四个部分组成:请求⾏、请求头部、空⾏、请求数据。
响应也是一样:响应
⾏、响应头、空⾏、响应数据
响应数据包
常见的请求头部
-
Host 指定请求的服务器域名或端口号
-
Referfer:先前网页的地址,从那个地址过来的
-
User-Agent:包含用户浏览器的信息
-
Content-length:请求内容的长度
-
Content-Type:请求与实体对应的类型
-
X-Forward-For:记录客户端的IP地址
-
Cookie:用户身份标识
请求头还有很多,如有需要可自行查询
服务器端响应http请求,浏览器得到html代码:
请求⾏由请求⽅法字段、URL字段和HTTP协议版本字段3个字段组成,它们⽤空格分隔。
⽐如 GET /data/info.html HTTP/1.1
⽅法字段就是HTTP使⽤的请求⽅法,⽐如常⻅的GET/POST
其中HTTP协议版本有两种:HTTP1.0/HTTP1.1 可以这样区别:
HTTP1.0对于每个连接都只能传送⼀个请求和响应,请求就会关闭,HTTP1.0没有
Host字段;⽽HTTP1.1在同⼀个连接中可以传送多个请求和响应,多个请求可以重叠和
同时进⾏,HTTP1.1必须有Host字段。
空行:
它的作⽤是通过⼀个空⾏,告诉服务器请求头部到此为⽌。
请求数据:
若⽅法字段是GET,则此项为空,没有数据;
若⽅法字段是POST,则通常来说此处放置的就是要提交的数据;
⽐如要使⽤POST⽅法提交⼀个表单,其中有user字段中数据为“admin”, password字段为
123456,那么这⾥的请求数据就是 user=admin&password=123456,使⽤&来连接各个字段
补充post请求:
常见的响应头部
-
allow :所支持的请求方式
-
Content-type:响应内容类型
-
Location:重定向的地址
-
Server:Web服务器软件名称
补充:
Cookie和Session
cookie和session都是用来跟踪浏览器用户身份的会话方式。(用户的身份标识)
Cookie:是一段保存在客户端的小文本;能够用来将用户活动过程中的状态信息保存到客户端,服务器可以获得该信息以便进行处理,跟踪到用户的状态。
Session:Session是存储在服务器(应用服务器)上的对象,该对象由服务器创建并维护;服务器为客户端与服务器的每一次会话过程都创建一个Session对象并维护