BÀI TẬP THỰC HÀNH SỐ MÔN HỌC: NHẬP MÔN MẠNG MÁY TÍNH GIAO THỨC HTTP Trong thực hành này, khám phá vài khía cạnh giao thức HTTP: thông điệp GET/response, cấu trúc HTTP header, truy cập file HTML dài, truy cập file HTML có đính kèm đối tượng, xác thực HTTP bảo mật HTTP GET/response Chúng ta bắt đầu tìm hiểu HTTP cách download file HTML đơn giản Ghi bạn khơng thể chạy Wireshark Internet thật mở file http-ethereal-trace-1 có sẵn thư mục wireshark-traces Thực bước sau có kết nối Internet: Khởi động trình duyệt web Khởi động Wireshark gõ “http” vào display-filter window để Wireshark hiển thị thơng điệp HTTP Bắt đầu bắt gói tin Gõ vào trình duyệt web: http://gaia.cs.umass.edu/wireshark-labs/HTTPwireshark-file1.html Dừng bắt gói tin Cửa sổ Wireshark lúc giống hình CuuDuongThanCong.com https://fb.com/tailieudientucntt Hình 1: Cửa sổ Wireshark sau trang web http://gaia.cs.umass.edu/wireshark- labs/ HTTP- wireshark-file1.html hiển thị trình duyệt Ví dụ hình cho thấy packet-listing window chứa thông điệp HTTP bắt: thông điệp GET (từ trình duyệt gửi đến gaia.cs.umass.edu) thơng điệp response từ server đến trình duyệt Packet-contents window hiển thị chi tiết thông điệp chọn (trong trường hợp thông điệp HTTP OK chọn) Tạm thời quan tâm đến HTTP Bằng cách quan sát HTTP GET HTTP response, trả lời câu hỏi sau: Trình duyệt sử dụng phiên HTTP 1.0 hay 1.1? Phiên HTTP server sử dụng bao nhiêu? Trình duyệt hỗ trợ ngơn ngữ nào? Địa IP máy tính bạn bao nhiêu? Của gaia.cs.umass.edu server bao nhiêu? Mã trạng thái (status code) trả từ server gì? Thời điểm file HTML thay đổi lần cuối server lúc nào? Server trả cho trình duyệt bytes nội dung? Bằng cách xem xét thiệu thô packet content window, có phần CuuDuongThanCong.com https://fb.com/tailieudientucntt liệu khơng hiển thị packet-details window hay khơng? Nếu có, cho biết HTTP GET/response có điều kiện Hầu hết web browsers hỗ trợ caching thực HTTP GET có điều kiện Trước thực bước sau, xóa cache trình duyệt (đối với Firefox, chọn Tools>Clear Recent History chọn Cache box Internet Explorer chọn Tools>Internet Options->Delete File) Ghi bạn chạy Wireshark Internet thật mở file http-ethereal-trace-2 thư mục wireshark-traces Thực bước sau có kết nối Internet: Khởi động trình duyệt cần đảm bảo cache trình duyệt xóa Khởi động Wireshark bắt đầu bắt gói tin Từ trình duyệt, truy cập đến địa sau http://gaia.cs.umass.edu/wiresharklabs/HTTP-wireshark-file2.html Trình duyệt hiển thị file HTML đơn giản gồm có dịng Nhanh chóng nhập URL truy cập đến lần (hoặc chọn refresh button trình duyệt) Dừng bắt gói tin nhập “http” vào cửa sổ display-filter để hiển thị thông điệp HTTP Trả lời câu hỏi sau: Xem xét nội dung HTTP GET Bạn có thấy dịng “IFMODIFIED-SINCE” hay khơng? Xem xét nội dung phản hồi từ server Server có thật trả nội dung file HTML hay không? Tại sao? 10 Xem xét nội dung HTTP GET thứ Bạn có thấy dịng “IFMODIFIED-SINCE” hay khơng? Nếu có, giá trị IF-MODIFIED-SINCE gì? CuuDuongThanCong.com https://fb.com/tailieudientucntt 11 Mã trạng thái HTTP trả từ server tương ứng với HTTP GET thứ gì? Ý nghĩa gì? Server có thật gửi nội dung file hay khơng? Giải thích Truy cập trang dài Trong ví dụ chúng ta, trang truy cập files HTML ngắn đơn giản Chúng ta xem xét điều xảy download file HTML dài Ghi bạn chạy Wireshark Internet thật mở file http-ethereal-trace-3 thư mục wireshark-traces Thực bước sau có kết nối Internet: Khởi động web browser đảm bảo cache xóa Khởi động Wireshark bắt đầu bắt gói tin Từ trình duyệt, truy cập đến địa sau: http://gaia.cs.umass.edu/wiresharklabs/HTTP-wireshark-file3.html Dừng bắt gói tin nhập “http” vào display-filter window để hiển thị thông điệp HTTP Trong packet-listing window, bạn thấy theo sau HTTP GET nhiều gói tin TCP phản hồi Ở trường hợp chúng ta, file HTML có nội dung dài, 4500 bytes lớn để chứa gói tin TCP Chính HTTP response TCP tách thành nhiều gói nhỏ, gói chứa TCP segment Trong phiên Wireshark gần đây, Wireshark xác định mỗt TCP segment gói tin riêng biệt thông điệp HTTP response phân rã thành nhiều gói tin TCP xác định dịng “TCP segment of reassembled PDU” cột Info Các phiên Wireshark cũ sử dụng “Continuation” Trả lời câu hỏi sau 12 Trình duyệt gửi HTTP GET? Dịng “THE BILL OF RIGHTS” chứa gói tin phản hồi thứ mấy? CuuDuongThanCong.com https://fb.com/tailieudientucntt 13 Gói tin phản hồi thứ chứa mã trạng thái ý nghĩa nó? 14 Mã trạng thái ý nghĩa HTTP response gì? 15 Cần TCP segments để chứa hết HTTP response nội dung The Bill of Rights? Văn HTML có chứa đối tượng Chúng ta xem điều xảy trình duyệt download file HTML có chứa đối tượng (ví dụ hình ảnh) lưu trữ hay nhiều server khác Ghi bạn chạy Wireshark Internet thật mở file http-ethereal-trace-4 thư mục wireshark-traces Thực bước sau có kết nối Internet: Khởi động web browser đảm bảo cache xóa Khởi động Wireshark Từ trình duyệt, truy cập đến địa sau: http://gaia.cs.umass.edu/wiresharklabs/HTTP-wireshark-file4.html Trình duyệt hiển thị file HTML chứa hình ảnh Các hình ảnh khơng lưu trữ server hành trình duyệt phải truy cập hình ảnh từ server khác Hình ảnh thứ truy cập từ website www.aw-bc.com Hình ảnh thứ truy cập từ www.manic.cs.umass.edu Dừng bắt gói tin nhập “http” vào display-filter window để hiển thị thông điệp HTTP Trả lời câu hỏi sau: 16 Trình duyệt gửi HTTP GET? Đến địa IP nào? 17 Trình duyệt download file hình ảnh hay song song? Giải thích? Chứng thực HTTP Truy cập vào website bảo vệ password quan sát chuỗi thông điệp CuuDuongThanCong.com https://fb.com/tailieudientucntt HTTP trao đổi trình duyệt website Website http://gaia.cs.umass.edu/wireshark-labs/protected_pages/HTTP-wireshark-file5.html bảo vệ password với username “wireshark-students” (khơng có ngoăc kép), password “network” (khơng có ngoăc kép) Ghi bạn chạy Wireshark Internet thật mở file http-ethereal-trace-5 thư mục wireshark-traces Thực bước sau có kết nối Internet: Khởi động trình duyệt đảm bảo cache xóa Khởi động Wireshark bắt đầu bắt gói tin Từ trình duyệt, truy cập đến địa sau http://gaia.cs.umass.edu/wiresharklabs/protected_pages/HTTP-wireshark-file5.html Nhập username password Dừng bắt gói tin nhập “http” vào display-filter window để hiển thị thông điệp HTTP Kiểm tra kết Wireshark Bạn đọc thêm chứng thực HTTP từ http://frontier.userland.com/stories/storyReader$2159 Trả lời câu hỏi sau: 18 Mã trạng thái ý nghĩa HTTP response tương ứng với HTTP GET gì? 19 Khi trình duyệt gửi HTTP GET lần thứ 2, trường liệu nào xuất HTTP GET? Username password biểu diễn dạng Base64 (hệ 64) không mã hóa Để kiểm tra, truy cập http://www.motobit.com/util/base64-decoder-encoder.asp nhập d2lyZXNoYXJrLXN0dWRlbnRz, sau giải mã để xem username Nhập Om5ldHdvcms=, sau giải mã để xem password Bởi download Wireshark thực bắt trộm gói tin có khả giải mã từ Base64 sang ASCII (chúng ta vừa thực hiện) nên mật gửi qua địa WWW khơng an tồn CuuDuongThanCong.com https://fb.com/tailieudientucntt ... lời câu hỏi sau: Trình duyệt sử dụng phiên HTTP 1. 0 hay 1. 1? Phiên HTTP server sử dụng bao nhiêu? Trình duyệt hỗ trợ ngơn ngữ nào? Địa IP máy tính bạn bao nhiêu? Của gaia.cs.umass.edu server... Bạn đọc thêm chứng thực HTTP từ http://frontier.userland.com/stories/storyReader$ 215 9 Trả lời câu hỏi sau: 18 Mã trạng thái ý nghĩa HTTP response tương ứng với HTTP GET gì? 19 Khi trình duyệt... thông điệp HTTP Trả lời câu hỏi sau: 16 Trình duyệt gửi HTTP GET? Đến địa IP nào? 17 Trình duyệt download file hình ảnh hay song song? Giải thích? Chứng thực HTTP Truy cập vào website bảo vệ