Wireshark_HTTP_v7.0
Target
In this lab, we’ll explore several aspects of the HTTP protocol: the basic GET/response interaction, HTTP message formats, retrieving large HTML files, retrieving HTML files with embedded objects, and HTTP authentication and security.
实操
一、The Basic HTTP GET/response interaction
步骤
Let’s begin our exploration of HTTP by downloading a very simple HTML file - one that is very short, and contains no embedded objects. Do the following:
-
打开一个web浏览器
-
启动 Wireshark 数据包嗅探器,如入门实验中所述(但尚未开始数据包捕获)。 输入“http”(仅输入字母,不输入引号marks),以便仅捕获 HTTP
消息稍后将在数据包列表窗口中显示。 (我们只是对这里的HTTP协议感兴趣,不想看到所有的混乱捕获的数据包)。
-
等待一分钟多一点(我们很快就会知道为什么),然后开始
Wireshark 数据包捕获。 -
输入url http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file1.html
-
停止数据包捕获
结果
要有两条http message,GET和response。
然后就是这里我们只关注http内容
问题
-
都是HTTP 1.1
-
中文(简体)
-
自己的IP略。 gaia.cs.umass.edu server是128.119.245.12
-
200 OK
-
Lat-Modified: Thu, 08 Aug 2024 05:59:02 GMT\r\n
-
Content-Length: 128\r\n
-
并未发现有协议头在数据包列表窗口中未显示。
二、The HTTP CONDITIONAL GET/response interaction
步骤
- 打开浏览器,在设置中清空缓存
- 使用Wireshark开始抓包
- 在浏览器输入http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file2.html
- 快速输入同样的urlhttp://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file2.html或者点击刷新
- 停止抓包,输入http过滤其他。
结果
共4条记录
问题
-
第一个GET没有,第二个GET有
-
返回了的,因为后面有html的data
-
有, 后面没有其他首部行了
-
浏览器已经缓存了,只检测修改否,没有修改,返回给我304 Not modified
三、Retrieving Long Documents
步骤
- 打开浏览器并清空缓存
- 打开wireshark开始抓包
- 输入 http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file3.html
- 停止抓包,输入http过滤
结果
这里还要看下response的tcp层,会发现有4个frame。然后就是问题前面那一段话。
当 HTTP 响应消息太大,无法在一个 TCP 数据包中传输时,TCP 会将该响应分成多个数据包。Wireshark 工具会显示这些分割后的数据包,较新的版本通过“TCP segment of a reassembled PDU”来指示这些数据包是同一个响应的分片。早期版本的 Wireshark 使用“Continuation”一词来表示 HTTP 消息被分割成多个 TCP 数据包,但实际上 HTTP 协议中并没有“Continuation”这样的消息。
问题
-
一条。我的这里的数据包标号是1253
-
1253
-
200 OK
-
4个
四、 HTML Documents with Embedded Objects
步骤
- 打开浏览器并清空缓存
- 打开wireshark开始抓包
- 输入 http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file4.html
- 停止抓包,输入http过滤
结果
问题
-
3条。
128.119.245.12(原始网页,http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file4.html)
128.119.245.12(图1,http://gaia.cs.umass.edu/pearson.png)
178.79.137.164(图2,http://kurose.cslash.net/8E_cover_small.jpg) -
并行
五、HTTP Authentication
步骤
- 打开浏览器并清空缓存
- 打开wireshark开始抓包
- 输入 http://gaia.cs.umass.edu/wireshark-labs/protected_pages/HTTP-wireshark-file5.html
- 输入账号“wireshark-students”和密码“network”
- 停止抓包,输入http过滤
结果
问题
-
401 Unauthorized
-
Cache-Control和Authorization
附加:base64码验证
输入的用户名和密码在第二次HTTP的GET里Authorization头中,“Authorization: Basic ”的字符串(d2lyZXNoYXJrLXN0dWRlbnRzOm5ldHdvcms=)编码。但是只是一种编码,并没有加密。
可以直接利用python里的base64解码或者用文档中的网址直接解码。