知道美河 | 上传资料 | VIP申请 | 精品课程 | 资料搜索 | 问题反馈 | 会员手册 | 积分消费 | 积分充值 | 帐号保护

seumit 发表于 2023-9-12 11:36:06

HTTP协议原理与实践精讲视频+课件实验环境(网安读懂Web通信底层)

地址:5号服务器---VIP资料下载七区\VIP专题教程一区
**** Hidden Message *****
HTTP协议原理与实践精讲视频+课件实验环境(网安读懂Web通信底层) 我看了一遍TCP/IP协议详解卷一,了解了TCP的运作机制。然后论文与日常安全工作均与HTTP有关。但是不知道HTTP协议如何进行学习。现在在看RFC2616,看得超郁闷啊。HTTP到底怎么学习呢?这套全套HTTP协议精讲视频+课件实验环境全是干货,可以帮你迅速掌握精通HTTP协议


1.HTTP概述
1)HTTP协议:用于实现客户端和服务器的通信
2)统一资源定位符URL:用于明确请求的目标服务器和网页
3)文本标记语言HTML:用于编写网页
4)URL和URI的区别
只要能唯一“标识资源”的就是URI,在URI的基础上给出其资源的访问方式的就是URL
例如“www.huawei.com/hcip-sec” -URI
例如“http://www.huawei.com/hcip-sec” -URL

2.什么是超文本传输协议-HTTP
1)经典C/S场景,也就是Client To Server
2)Client发送Request-请求,Server回复Response-应答
3)网页抓包工具:Fiddler Web Debugger
4)实操一:访问P1链接,并查看抓包请求和应答
Client-PC 用户名:admin 密码:Cisc0123
OpenSSL   用户名:root密码:Cisc0123
MySQL   用户名:root密码:Cisc0123

问题:如果出现OpenSSL和MySQL导入后,网卡无法打开怎么办?
原因是:克隆的Centos,网卡MAC地址和原有的MAC不匹配
1.查看网卡,不正常情况如下
lo      Link encap:Local Loopback
          inet addr:127.0.0.1Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNINGMTU:65536Metric:1
          RX packets:24 errors:0 dropped:0 overruns:0 frame:0
          TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1968 (1.9 KiB)TX bytes:1968 (1.9 KiB)

2.查看和修改70-persistent-net.rules(命令可以使用“Tab”补全)
vi /etc/udev/rules.d/70-persistent-net.rules
1)不正常的显示如下,有两个
# PCI device 0x8086:0x100f (e1000)
# SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:74:39:83", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:96:11:22", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

2)你需要将“eth0”这行删除
3)然后将第二个网卡信息,后面的eth0改为eth1
3)wq保存

3.修改网卡配置中的MAC
vi /etc/sysconfig/network-scripts/ifcfg-eth0

1)删除UUID
2)将HWADDR后面的MAC改为第二步中,第二个网卡信息的MAC地址

3.HTTP无状态化特性
1)无状态化特性指HTTP本身无法保存任何相关状态信息
例如,淘宝添加衣服到购物车,下一秒购物车还是空的
2)解决问题的方法有两种:
① 隐含参数:通过网页后台代码,将信息同步给下一个网页
② Cookie(后面讲)
3)实操2:访问链接P2,分析网页信息的同步过程

4.GET和POST
1)GET和POST都可以从服务器上获取网页/推送信息
2)不同之处在于,GET直接讲推送的信息包含在网址中发送,而POST则是有一个独立的存储空间
3)所以,绝大多数情况下,都会使用POST来实现数据的获取和信息的推送
4)实操3和实操4,访问链接P3和P4,分析GET和POST推送信息的区别

5.哑服务特性
1)命令行连接到HTTP服务器上后,HTTP服务器不会主动进行互动

6.瞬时协议特性
1)HTTP建立一个连接,发送一个请求和得到一个回复后,立刻断开,这回导致效率极低
2)解决问题的方法有两种:
   ① Keep Alive 持久连接 一个连接内可以按顺序发送多个请求和回复
   ② 管道化 一个连接内可以同时发送多个请求,同时得到多个回复

7.Cookie
1)能够实现HTTP信息存储
2)服务器依据客户端发送的相关信息生成Cookie,然后将Cookie发送给客户端
3)客户端后续只需要发送Cookie即可实现类似于免认证的功能
4)实操5:访问链接P5,分析Cookie的生成和使用

8.2XX系列状态码
1)200 代表一切正常,访问成功,无需执行任何操作
2)204 客户端发送请求和数据给服务器,服务器接收后发现无需执行任何更新,即回复204
3)206 客户端请求文件的某一个片段,服务器使用206进行回复
实操:访问链接P1,测试状态码200,并通过抓包分析
实操:访问链接P6,测试状态码204,并通过抓包分析

9.3XX系列状态码
1)301 永久重定向,即访问的资源已被转移到另一个目的,服务器通过301告诉并引导客户端访问正确的目的
2)302 临时重定向,常用于安全设备的用户认证,安全设备通过发送302要求客户端前往指定目的网页进行认证
3)303 与302结合使用,当用户认证成功,服务器发送303告知客户可继续访问下去
4)304 客户端发送请求,但网页没有任何更新,服务器回复304
实操:访问链接P7,测试状态码301,并通过抓包分析
实操:访问链接P9,测试META,并通过抓包分析

10.4XX系列状态码
1)400 当客户端发送一个服务器无法理解的请求时,服务器回复400
2)401 当客户端访问服务器网页,且该网页需要认证才能登陆时,服务器会发送401告知客户端先做认证
3)403 当客户端访问一个没有权限访问的网页时,服务器回复403
4)404 当客户端访问一个不存在的网页时,服务器回复404
实操:访问链接P10,测试状态码400,并通过抓包分析
实操:访问链接P11,测试状态码403,并通过抓包分析
实操:访问链接P12,测试状态码404,并通过抓包分析

11.5XX系列状态码
1)500 当服务器存在内部错误时,例如网页编写脚本错误,服务器给客户端回复500
2)503 当服务器的HTTP/HTTPS服务器没有开启时,服务器给客户端回复503,常见于服务器停机维护的情况

12.首部字段
1)一共三种类型的首部字段
   ① 通用首部字段:在请求包和响应包均会出现
   ② 请求首部字段:只会在请求包中出现
   ③ 响应首部字段:只会在响应包中出现

2)通用首部字段
Cache-Control:用于明确哪些信息可以缓存,哪些信息不能缓存(例如用户个人信息)
Connection:通过Connection字段来实现Keep-Alive功能
Upgrade:用于检测HTTP协议及其他协议是否可使用更高的版本进行通信
Warning:网页告警

3)请求首部字段
Accept:用于客户端告知服务器,能够接收的“媒体类型”,可通过优先级q来区分资源需求的先后顺序
字符集:网页文字的正常显示,需要字符集的支持
Accept-Charset:用于客户端告知服务器,所想要使用的字符集
Accept-Encoding:用于客户端告知服务器,所支持的压缩方式
Accept-Language:用于客户端告知服务器,所使用语言
Authorization:用于客户端告知服务器,客户端输入的认证信息
Host:用于客户端告知服务器,请求的资源所处的互联网主机名和端口号
Referer:用于客户端告知服务器请求的原始资源的URI,可直接被读取
User-Agent:通过“User-Agent”字段,客户端会将创建请求的浏览器和用户代理名称等信息传达给服务器
Location:将响应接收方引导至某个与请求URI位置不同的资源
Server:用于服务器告知客户端当前服务器上安装的HTTP服务器应用程序的信息,有信息泄露风险,请注意优化
WWW-Authenticate:服务器会告知客户端使用哪种认证方式

4)实体首部字段
Set-Cookie:服务器发给客户端
Cookie:客户端发给服务器
Set-Cookie字段:Path&Domain 决定了客户端能访问的范围
Secure 仅在HTTPS安全通信时才会发送Cookie
HTTPOnly 加以限制,使Cookie不能被JavaScript脚本(不安全)访问

13.HTTPS协议
1)主要使用TLS1.0\1.1\1.2版本来对HTTP流量进行保护,SSL2.0\3.0已经不再使用
2)TLS分为两层:上层和底层
上层主要分为4个部分
1> 握手协议,用于实现通信双方协商连接参数,并完成身份验证
2> 警报协议,目的是以简单的通知机制告知对端通信出现异常状况
3> 应用数据协议,应用数据协议携带着应用消息(原始数据)
4> 密钥规格变更协议,通知对端使用新协商的加密套件和密钥对数据进行保护
底层只有一个部分
5> 底层是记录协议,主要负责对上层的数据进行分块、添加散列值值、加密,传输给对端

3)HTTPS单向认证和双向认证
① 单向认证:服务器通过证书(身份证)来证明自己的合法性,客户端无需认证
② 双向认证:服务器和客户端都通过证书(身份证)来证明自己的合法性
实操:访问链接P16,来实现HTTPS的访问

14.HTTP认证
1)基础认证-明文,通过用户名密码来做认证
2)摘要认证-在基础认证之上,添加了散列值,通过散列值来进行验证,无需发送密码
3)SSL/TLS证书认证:使用证书(身份证)来执行认证
4)表单认证:网页链接到数据库,使用专用的数据库来执行认证
实操:访问链接P17、18、19,观察基础认证、摘要认证、表单认证的过程






软件注册码应该是:JU090-6039P-08409-8J0QH-2YR7F

chenxiwang 发表于 2023-9-12 13:27:21

内容比较丰富,先学习一下,安全很重要

liubenzun 发表于 2023-9-12 13:27:55

需要学习HTTP,这些是好资料啊

qianshuai 发表于 2023-9-18 10:50:19

看看

linux_lili 发表于 2023-11-3 11:32:02

非常感谢

xshh123 发表于 2023-12-6 23:56:14

never back down

moby 发表于 2023-12-8 17:46:37

谢谢分享EMB_10

xiaopang304 发表于 2023-12-16 21:46:43

感谢分享

jsj89297 发表于 2023-12-18 18:41:55

EMB_12

database3389 发表于 2023-12-18 20:08:28

不正常的显示如下

icebergman 发表于 2024-1-3 23:06:28

thanks a lot

sensedj 发表于 2024-1-4 16:29:55

HTTP协议原理

aassddzz 发表于 2024-1-10 15:02:17

学习

concio 发表于 2024-1-18 00:26:29

本帖最后由 concio 于 2024-1-18 00:27 编辑

good

jieke 发表于 2024-1-29 09:44:38

学习一下

wangjie_hb 发表于 2024-2-1 11:36:37

EMB_01

tfxygcuhv 发表于 2024-2-19 14:18:46


地址:5号服务器---VIP资料下载七区\VIP专题教程一区

kenxken 发表于 2024-3-16 14:11:18

kan kan

tinyo_wu 发表于 2024-3-28 09:55:34

不错的资料,谢谢分享

kobe1110shih 发表于 2024-4-14 23:07:35

感谢楼主分享。

kusa741 发表于 2024-7-23 20:59:21

EMB_17

hcier 发表于 2024-7-27 17:35:15

HTTP协议原理与实践精讲视频+课件实验环境(网安读懂Web通信底层) [复制链接]

ccjjzj 发表于 2024-8-9 21:46:58

不错支持一下

frank000 发表于 2024-9-26 12:50:50

谢谢分享                           

liyuwei2021 发表于 2024-9-26 14:02:59

滴答滴答滴答滴答滴答滴答哒哒哒哒哒哒哒哒哒

smsong 发表于 2024-10-6 20:54:34

好东西,多谢分享!
页: [1] 2
查看完整版本: HTTP协议原理与实践精讲视频+课件实验环境(网安读懂Web通信底层)