Tương tác cơ bản giữa GET/phản hồi của HTTP a, Thực hành Bước 1: Khởi động trình duyệt web.. Nhập "http" vào cửa sổ hiển thị bộ lọc để ỉ hiển thị các thông điệp HTTP đã bắt sau này tro
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA AN TOÀN THÔNG TIN
Môn học: AN TOÀN MẠNG BÁO CÁO BÀI THỰC HÀNH SỐ 1
Sinh viên: Nguyễn Văn Quyến
Mã sinh viên: B21DCAT161
Giảng viên: Nguyễn Ngoc Điệp Nhóm môn học: 04
Hà Nội, ngày 20 08 / /2024
Trang 2Mục L c ụ
I Wireshark HTTP 2
1.1 Tương tác cơ bản giữa GET/phản hồi của HTTP 2
1.2 Tương tác CONDITIONAL GET/response HTTP 4
1.3 Tải về dữ ệu lớn li 6
1.4 Các tệp HTML với các đối tượng nhúng 8
1.5 Xác thực và Bảo mật HTTP 9
II Wireshark TCP 11
2.1 Bắt dữ ệu truyền TCP số ợng lớn từ máy tính của bạn đến máy chủ từ xa li lư 11
2.2 Một cái nhìn đầu tiên về bản ghi đã ghi 13
2.3 Nh ững điều cơ bản về TCP 14
2.4 Kiểm soát tắc nghẽn TCP trong thực tiễn 19
Trang 3Bài 1: Thực hành phân tích HTTP, TCP sử dụng Wireshark
I Wireshark HTTP
1.1 Tương tác cơ bản giữa GET/phản hồi của HTTP
a, Thực hành
Bước 1: Khởi động trình duyệt web
Bước 2: Khởi động phần mềm bắt gói Wireshark(chưa bắt đầu bắt gói) Nhập "http" vào cửa sổ hiển thị bộ lọc để ỉ hiển thị các thông điệp HTTP đã bắt sau này trong cửa sổ ệt kê gói.ch li
Bước 3: Chờ hơn một phút, sau đó bắt đầu bắt gói bằng Wireshark
ớc 4: Nhập vào trình duyệt địa chỉ sau: http://gaia.cs.umass.edu/wireshark- labs/HTTP-Bư
wireshark-file1.html Trình duyệt sẽ hiển thị tệp HTML đơn giản, chỉ có một dòng
b, Trả lời câu hỏi
Trang 41 Is your browser running HTTP version 1.0 or 1.1? What version of HTTP is the server running?
Trình duyệt đang chạy phiên bản HTTP/1.1 Máy chủ cũng chạy phiên bản HTTP/1.1
2 What languages (if any) does your browser indicate that it can accept to the server?
Trình duyệt có thể ấp nhận các ngôn ngữ như vi, en-ch US
3 What is the IP address of your computer? Of the gaia.cs.umass.edu server?
Địa chỉ IP của máy tính là 192.168.30.114
Địa chỉ IP của máy chủ gaia.cs.umass.edu là 128.119.245.12
4 What is the status code returned from the server to your browser?
Mã trạng thái trả về từ máy chủ là 200 OK HTTP/1.1 200 OK
5 When was the HTML file that you are retrieving last modified at the server?
Last-Modified: Mon, 19 Aug 2024 05:59:02 GMT
Trang 56 How many bytes of content are being returned to your browser?
Số byte nội dung được trả về cho trình duyệt là 128 byte
7 By inspecting the raw data in the packet content window, do you see any headers within the data that are not displayed in the packet-listing window? If so, name one
Có header như "Connection: keep-alive" trong nội dung gói tin mà không hiển thị trong danh sách gói tin của Wireshark
1.2 Tương tác CONDITIONAL GET/response HTTP
a Thực hành
Bước 1: Khởi động trình duyệt web và đảm bảo bộ nhớ đệm của trình duyệt đã được xóa Bước 2: Khởi động phần mềm bắt gói Wireshark
Bước 3: Nhập URL sau vào trình duyệt: http://gaia.cs.umass.edu/wireshark- labs/HTTP-wireshark-file2.html Trình duyệt sẽ hiển thị một tệp HTML rất đơn giản với năm dòng
b, Trả lời câu hỏi
Trang 68 Inspect the contents of the first HTTP GET request from your browser to the server Do you see an “IF-MODIFIED-SINCE” line in the HTTP GET?
Trong yêu cầu GET đầu tiên, không có dòng "IF-MODIFIED-SINCE" nào
9 Inspect the contents of the server response Did the server explicitly return the contents
of the file? How can you tell?
Máy chủ đã trả lại nội dung của tệp HTML, điều này được chứng minh bởi sự hiện diện của phần thân (body) HTML trong phản hồi Điều này có thể được xác nhận bằng cách kiểm tra phần
"Line-based text data: text/html" trong phản hồi:
10 Now inspect the contents of the second HTTP GET request from your browser to the server Do you see an “IF-MODIFIED-SINCE:” line in the HTTP GET? If so, what information follows the “IF-MODIFIED-SINCE:” header?
Trang 7Trong yêu cầu GET thứ hai, có một dòng "IF-MODIFIED-SINCE" theo sau là ngày giờ:
If-Modified-Since: Mon, 19 Aug 2024 05:59:02 GMT
11 What is the HTTP status code and phrase returned from the server in response to this second HTTP GET? Did the server explicitly return the contents of the file? Explain
Mã trạng thái là 304 Not Modified Điều này có nghĩa là tệp trên máy chủ không thay đổi kể từ thời điểm "IF-MODIFIED-SINCE", do đó máy chủ không gửi lại nội dung tệp
1.3 Tả về dữ ệu lớn i li
a, Thực hành
Bước 1: Khởi động trình duyệt web và đảm bảo bộ nhớ đệm của trình duyệt đã được xóa Bước 2: Khởi động phần mềm bắt gói Wireshark
Bước 3: Nhập URL sau vào trình duyệt: http://gaia.cs.umass.edu/wireshark- labs/HTTP-wireshark-file3.html Trình duyệt sẽ hiển thị văn bản khá dài về "Hiến chương quyền lợi của Hoa Kỳ"
Trang 8Bước 4: Dừng bắt gói Wireshark và nhập "http" vào cửa sổ hiển thị bộ lọc để chỉ hiển thị các thông điệp HTTP đã bắt được
b, Trả lời câu hỏi
12 How many HTTP GET request messages were sent by your browser?
Trình duyệt đã gửi một yêu cầu GET HTTP để lấy tài liệu (packet 51)
13 How many data-containing TCP segments were needed to carry the single HTTP response?
4 TCP segments
Trang 914 What is the status code and phrase associated with the response to the HTTP GET request?
Mã trạng thái là 200 OK
15 Are there any HTTP status lines in the transmitted data associated with a TCP-induced
“Continuation”?
Không có dòng trạng thái HTTP nào liên quan đến một “Continuation” do TCP gây ra trong dữ liệu truyền
1.4 Các tệp HTML với các đối tượng nhúng
a, Thực hành
Bước 1: Khởi động trình duyệt web và đảm bảo bộ nhớ đệm của trình duyệt đã được xóa Bước 2: Khởi động phần mềm bắt gói Wireshark
Bước 3: Nhập URL sau vào trình duyệt: http://gaia.cs.umass.edu/wireshark- labs/HTTP-wireshark-file4.html
ớc 4: Trình duyệt sẽ hiển thị một tệp HTML ngắn với hai hình ảnh Hai hình ảnh này đượ
tham chiếu trong tệp HTML cơ bản Nghĩa là, bản thân các hình ảnh không nằm trong tệp HTML; thay vào đó, các URL cho các hình ảnh này được chứa trong tệp HTML đã tải xuống
Trang 10b, Trả lời câu hỏi
16 How many HTTP GET request messages were sent by your browser? To which Internet addresses were these GET requests sent?
Trình duyệt của bạn đã gửi tổng cộng 3 yêu cầu GET Các yêu cầu này được gửi đến các địa chỉ
IP sau:
• 128.119.245.12 (gaia.cs.umass.edu)
• 178.79.137.164
17 Can you tell whether your browser downloaded the two images serially, or whether they were downloaded from the two web sites in parallel? Explain
Dựa vào thời gian và thứ tự gửi yêu cầu, trình duyệt đã tải về hai hình ảnh theo tuần tự, chứ không phải song song, yêu cầu tải về hình ảnh 8E_cover_small.jpg chỉ được gửi sau khi hình ảnh pearson.png đã được tải về hoàn tất
1.5 Xác thực và Bảo mật HTTP
a, Thực hành
Trang 11Bước 1: Đảm bảo bộ nhớ cache của trình duyệt đã được xóa và đóng trình duyệt Sau đó, khởi động lại trình duyệt
Bước 2: Khởi động công cụ bắt gói tin Wireshark
Bước 3: Nhập URL sau vào trình duyệt:
http://gaia.cs.umass.edu/wireshark-labs/protected_pages/HTTP-wiresharkfile5.html
Bước 4: Nhập tên người dùng và mật khẩu được yêu cầu vào hộp thoại hiện ra
b, Trả lời câu hỏi
18 What is the server’s response (status code and phrase) in response to the initial HTTP GET message from your browser?
Mã trạng thái trả về là 401 Unauthorized, điều này có nghĩa là máy chủ yêu cầu thông tin xác thực
để truy cập tài nguyên
19 When your browser sends the HTTP GET message for the second time, what new field
is included in the HTTP GET message?
Trang 12Trong yêu cầu GET thứ hai, một trường mới "Authorization" đã được thêm vào header, chứa thông
tin xác thực cần thiết: Authorization: Basic YWRtaW46MTIzNA==
II Wireshark TCP
2.1 Bắt dữ ệu truyền TCP số ợng lớn từ máy tính của bạn đến máy chủ từ li lư
xa
Bước 1: Khởi động trình duyệt web Truy cập vào: http://gaia.cs.umass.edu/wiresharklabs/alice.txt
và tải xuống một bản sao ASCII của Alice in Wonderland Lưu tệp này ở đâu đó trên máy tính Bước 2:Tiếp theo, truy cập vào http://gaia.cs.umass.edu/wiresh ark-labs/TCP-wireshark-file1.html Bước 3: Sử dụng nút "Browse" trong biểu mẫu này để nhập tên tệp (đường dẫn đầy đủ) trên máy tính của bạn chứa Alice in Wonderland (hoặc thực hiện việc này thủ công) Đừng nhấn nút “Upload alice.txt file” ngay
Trang 13Bước 4: Bây giờ, khởi động Wireshark và bắt đầu thu thập gói tin (Capture -
> Options) và sau đó nhấn OK trên màn hình Wireshark Packet Capture Options (chúng ta sẽ không cần chọn tùy chọn nào ở đây)
Bước 5: Quay lại trình duyệt của bạn, nhấn nút “Upload alice.txt file” để tải tệp lên máy chủ gaia.cs.umass.edu Sau khi tệp được tải lên, một thông báo chúc mừng ngắn sẽ được hiển thị trong cửa sổ trình duyệt của bạn
Trang 142.2 Một cái nhìn đầu tiên về bản ghi đã ghi
1 What is the IP address and TCP port number used by the client computer (source) that
is transferring the file to gaia.cs.umass.edu?
IP address: 192.168.30.114
Port: 6146
2 What is the IP address of gaia.cs.umass.edu? On what port number is it sending and receiving TCP segments for this connection?
IP address: 128.119.245.12
Port: 80
3 What is the IP address and TCP port number used by your client computer (source) to transfer the file to gaia.cs.umass.edu?
IP address: 192.168.30.114
Port: 6146
Trang 152.3 Nh ững điều cơ bản về TCP
4 What is the sequence number of the TCP SYN segment that is used to initiate the TCP connection between the client computer and gaia.cs.umass.edu? What is it in the segment that identifies the segment as a SYN segment?
Sequence Number (raw): 372808251
Trang 165 What is the sequence number of the SYN-ACK segment sent by gaia.cs.umass.edu to the client computer in reply to the SYN? What is the value of the ACKnowledgement field
in the SYN-ACK segment? How did gaia.cs.umass.edu determine that value? What is it
in the segment that identifies the segment as a SYN-ACK segment?
Sequence Number (raw): 1340737775
Acknowledgment number (raw): 81962090
Acknowledgment number của SYN-ACK = Sequence Number của ACK tiếp theo
Trang 176 What is the sequence number of the TCP segment containing the HTTP POST command? Note that in order to find the POST command, you’ll need to dig into the packet content field at the bottom of the Wireshark window, looking for a segment with
a “POST” within its DATA field
Sequence Number (raw): 372808252
Trang 18Sử dụng file tcpethereal-trace-1 trong zip file
labs/wireshark-traces.zip
7 Consider the TCP segment containing the HTTP POST as the first segment in the TCP connection What are the sequence numbers of the first six segments in the TCP connection (including the segment containing the HTTP POST)? At what time was each segment sent? When was the ACK for each segment received? Given the difference between when each TCP segment was sent and when its acknowledgement was received, what is the RTT value for each of the six segments? What is the EstimatedRTT value (see page 249 in text) after the receipt of each ACK? Assume that the value of the EstimatedRTT is equal to the measured RTT for the first segment, and then is computed using the EstimatedRTT equation on page 249 for all subsequent segments
232129013 thời điểm 0,026417 nhận ACK lúc 0,053937,
232129578 thời điểm 0,041737 nhận ACK lúc 0,077294,
232131038 thờ điểm 0,054026 nhận ACK lúc 0,124085,i
232132498 thời điểm 0,054690 nhận ACK lúc 0,169118,
232133958 thời điểm 0,077045 nhận ACK lúc 0,217299, và 232135418 thời điểm 0,078157 nhận ACK lúc 0,267802
Giá trị RTT: RTT (Round-Trip Time) có thể tính bằng cách lấy thời gian nhận ACK trừ ời gian th gửi gói tin
Giá trị EstimatedRTTn=(1−α)×EstimatedRTTn−1+α×RTTn
8 What is the length of each of the first six TCP segments?
Độ dài củ 6 TCP segments đầu tiên là: 565, 1460, 1460, 1460, 1460, 1460a
Trang 199 What is the minimum amount of available buffer space advertised at the receiver for the entire trace? Does the lack of receiver buffer space ever throttle the sender?
Số ợng bộ đệm khả dụng tối thiểu được quảng cáo tại bên nhận cho toàn bộ bản ghi là 17529 lư bytes
việc thiếu không gian bộ đệm của bên nhận không bao giờ làm chậm máy gửi vì độ dài segment nhỏ hơn window size
10 Are there any retransmitted segments in the trace file? What did you check for (in the trace) in order to answer this question?
Các gói tin có số sequence tăng lên do đó không có các retransmitted segments
11 How much data does the receiver typically acknowledge in an ACK? Can you identify cases where the receiver is ACKing every other received segment (see Table 3.2 on page
257 in the text)?
Người nhận thường xác nhận 1460 bytes dữ ệu trong một ACK, không thể xác định các trường li hợp nơi người nhận đang ACK mỗi đoạn dữ ệu nhận đượli c
Trang 2012 What is the throughput (bytes transferred per unit time) for the TCP connection? Explain how you calculated this value
Tổng data = 164091 – 1 = 164090
first TCP segment = 1
last TCP segment = 164091
Transmision time first segment = 0.026477s
Transmision time last segment = 5.455830s
K/c = 5.455830 - 0.026477 = 5.4294
Throughput = 164090 / 5.4294 = 3022,249235642981
2.4 Kiểm soát tắc nghẽn TCP trong thực tiễn
13 Use the Time-Sequence-Graph(Stevens) plotting tool to view the sequence number versus time plot of segments being sent from the client to the gaia.cs.umass.edu server Can you identify where TCP’s slow-start phase begins and ends, and where congestion avoidance takes over? Comment on ways in which the measured data differs from the idealized behavior of TCP that we’ve studied in the text
Sử dụng công cụ vẽ đồ ị trong Wireshark để xác định giai đoạn "slow start" và "congestion th avoidance" "Slow start" thường bắt đầu từ khi kết nối được thiết lập và tiếp tục cho đến khi cửa
sổ kích thước nhận được đầy đủ Sau đó, "congestion avoidance" sẽ bắt đầu khi tốc độ tăng chậm
lại