Tìm hiểu lý thuyết - Giao thức ARP Address Resolution Protocol là một giao thức trong mạng máy tính được sử dụng để ánh xạ địa chỉ IP Logic Address thành địa chỉ MAC Physical Address..
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA AN TO N THÔNG TIN
BỘ MÔN CƠ S AN TON THÔNG TIN
Giảng viên : Đinh Trưng Duy
Sinh viên : Đặng Thị Hồng Vân
Mã sinh viên : B22DCAT311
Nhóm lớp : 02
Số điện thoại : 0386516004
Hà Nội – 2024
Trang 22
Mục l c ụ
Bài 1: Các giao th c mứ ạng cơ bả 3n
Bài 2: Phát hi n các l h ng b o mệ ỗ ổ ả ật s d ng công c rà quét nmap ử ụ ụ 8
Bài 3: S d ng công c truy c p t xa telnetử ụ ụ ậ ừ 11
Bài 4: Gi i thi u v Wiresharkớ ệ ề 15
K t lu nế ậ 20
Trang 3Bài 1: Các giao thức mạng cơ bản
1 Tìm hiểu lý thuyết
- Giao thức ARP (Address Resolution Protocol) là một giao thức trong mạng máy tính được sử dụng để ánh xạ địa chỉ IP (Logic Address) thành địa chỉ MAC (Physical Address) Hoạt động trong các mạng sử dụng giao thức TCP/IP, đặc biệt là Ethernet
- Lệnh ping là một công cụ dòng lệnh được sử dụng để kiểm tra khả năng kết nối giữa hai thiết bị trong mạng
- TCP/IP (Transmission Control Protocol/Internet Protocol) là bộ giao thức được sử dụng làm nền tảng cho các kết nối mạng, bao gồm Internet Bộ giao thức TCP/IP định nghĩa cách thức các thiết bị kết nối và giao tiếp với nhau qua mạng
- Tiện ích tcpdump là một công cụ dòng lệnh mạnh mẽ được sử dụng để chụp
và phân tích lưu lượng mạng cho phép ghi lại và phân tích các gói tin đi qua một giao diện mạng
2 Nội dung thực hành
- Khởi độ ng bài lab b ng lệnh: labtainer network-basics ằ
Sau khi khởi động xong hai terminal o s xu t hi n, ả ẽ ấ ệ 1 terminal mang tên “box1” đóng vai trò máy tính 1 và 1 terminal mang tên “box2” đóng vai trò máy tính 2, hai máy tính k t n i vế ố ới nhau qua m ng o có thạ ả ể coi như kế ối qua dây cáp Ethernet t n
Trang 44
Nhiệm vụ 1: Khám phá
Trên terminal box1 và box2 ử ụs d ng l nh: ệ ip addr để kiểm tra địa chỉ IP trên
cả hai máy tính để làm quen với các giao diện mạng Chúng ta sẽ tập trung vào mục thứ hai trong m i k t qu hi n th t l nh ip addr, t c là các m c eth0 Giá ỗ ế ả ể ị ừ ệ ứ ụ trị link/ether, ví dụ như giá trị 02:42:ac:00:00:03, là địa chỉ MAC c a giao di n m ng ủ ệ ạ
xu t hiấ ện trong các tiêu đề gói Ethernet Thông thường, các địa chỉ MAC được gắn
v i ph n c ng v t lý, ví dớ ầ ứ ậ ụ như giao diện Ethernet Trong bài th c hành này, m ng ự ạ
là ảo, và địa chỉ MAC cũng là ảo
Box1
Box2 Địa ch khác cỉ ần quan tâm được gắn nhãn inet, ví d ụ như 172.0.0.3/24 Đây là địa chỉ IPv4 xuất hiện trong tiêu đề gói IP Trong ví dụ này, /24 cho biết subnet liên kết
v i giao di n này là ớ ệ 172.0.0, và địa ch cỉ ủa máy tính trên subnet đó là 3 Giá tr theo ị sau dấu g ch chéo cho b n biạ ạ ết có bao nhiêu bit trong địa ch ỉ IP 32 bit được sử ụ d ng
để đặ t tên cho subnet S bit còn lại đư c sử dố ợ ụng đểđặt tên cho thiết b trên subnet ị Các địa chỉ IP được mô tả ở trên cho phép các máy tính đặt tên cho nhau, và do
đó có thể giao tiếp Tuy nhiên, ở tầng thấp nhất, tức là tầng liên kết (link layer) giao tiếp tr c ti p vự ế ới phương tiện v t lý hoậ ặc ảo, các địa ch ỉ MAC được sử ụng để d giao tiếp Vì v y, cậ ần có cách để ị dch địa ch IP sang địa chỉỉ MAC
Nhiệm v 2: ARP ụ
Trên box 2 sử d ng l nh ụ ệ arp -a để xem b ng ánh x hi n t ả ạ ệ ại:
Trang 5S không hi n th gì vì bẽ ể ị ảng ARP đang trống Khi hai máy tính c a chúng ta mủ ới
khở ội đ ng, chúng không biết địa ch MAC c a nhau ỉ ủ
Trên box 1 th c hi n l nh ự ệ ệ sudo tcpdump -vv -n - -i eth0e để thực hi n giám sát ệ lưu lượng mạng
Trên box2, s d ng lử ụ ệnh ping ping box1: để
ping 172.0.0.2 -c 2
S d ng ử ụ Ctrl+C để thoát kh i tcpdump trên box1: ỏ
Sau đó sử dụng lệnh arp -a trên cả hai box để xem nội dung hiện tại của bảng ARP Nh ng mữ ục ARP này cho phép hai box định địa ch cho nhau mà không cỉ ần
l p lặ ại yêu cầu/ph n hả ồi ARP:
Nhiệm vụ con 2.1: Tin tưởng vào phản hồi ARP
Nhiệm vụ con 2.2: Giao ti p ngoài subnet ế
Nhiệm v 3: TCP ụ
Trong phần này chúng ta s xem xét ng n g n mẽ ắ ọ ột số gói IP trông một phiên TCP Trên box1 sử d ng l nh ụ ệ sudo tcpdump nhưng không dùng tùy chọ –e:n
sudo tcpdump -vv -n -i eth0
Trang 66
Sau đó, trên box2, khởi tạo một phiên SSH tới box1:
ssh 172.0.0.2
Điều này dẫn đến các gói IP bao g m giao thồ ức TCP, cho chúng ta bi t r ng ế ằ giao thức TCP đang được sử ụng Thông tin địa chỉ trong gói đầ d u tiên, ví d : ụ 172.0.0.3.34104 > 172.0.0.2.22
cho chúng ta biết gói tin được g i t box2 Sử ừ ố cuối cùng trong địa ch ỉ của box2, trong trường h p này là 34014, là m t c ng tợ ộ ổ ạm thời của TCP sẽ được
s d ng cho phiên này Sử ụ ố cuối cùng trong địa ch c a box1 22, là cỉ ủ là ổng được
s d ng b i giao th c SSH Giá tr Flags trong d u ngoử ụ ở ứ ị ấ ặc vuông trên gói đầu tiên
là [S], cho thấy đây là một gói SYN, tức là gói đầu tiên trong ba gói bắt tay để
kh i t o m t phiên TCP Gói th hai là t box1 n ở ạ ộ ứ ừ đế box2 Lưu ý các số cổng Giá trị Flags trên gói th hai là [S.], cho thứ ấy đây là một gói SYN-ACK, t c là gói th ứ ứ hai trong b t tay Gói th ba hoàn thành b t tay v i mắ ứ ắ ớ ột gói ACK được gửi
t box2 n box1 Giá tr Flags ch ừ đế ị ỉ là một d u chấ ấm, thể hiện không có c nào ờ Giá tr ị seq 1, ack 1 trong gói th ba cho thứ ấy đây là ack và rằng s ố thứ ự ủa t c phiên TCP bắt đầu từ 1 Điều này hoàn thành b t tay và các gói ti p theo là mắ ế ột
Trang 7ph n cầ ủa phiên đáng tin cậy trong đó giao thức TCP đảm b o r ng các gói tin ả ằ không b mị ất và được s p xắ ếp đúng thứ ự để t giao cho ng dứ ụng, trong trường
h p này là m t SSH client và SSH server Khái ni m v vi c các gói tin b mợ ộ ệ ề ệ ị ất
ho c sai th t có thặ ứ ự ể dường như khó xảy ra khi xem xét ví dụ đơn giản v hai ề box của chúng ta Nhưng hãy xem xét các máy tính ở hai bên đối diện c a th giủ ế ới trao đổi thông tin bằng cách sử dụng các đường dẫn router có thể thay đổi trong thời gian phiên TCP
K t thúc bài lab:ế Trên terminal đầu tiên s d ng l nh: ử ụ ệ
stoplab network-basics
Kiểm tra kết quả bài lab:
Trang 88
Bài 2: Phát hiện các lỗ hổng bảo mật sử dụng công cụ rà quét nmap
1 Tìm hiểu lý thuyết
- Lỗ hổng bảo mật (Vulnerability) là một điểm yếu hoặc sai sót trong hệ thống, phần mềm hoặc cấu hình mạng mà kẻ tấn công có thể khai thác để gây
ra các hậu quả tiêu cực như: xâm nhập trái phép, chiếm quyền kiểm soát, phá hoại hoặc làm gián đoạn dịch vụ
- Công cụ nmap (Network Mapper) là một công cụ mã nguồn mở mạnh
mã được sử dụng để quét mạng và phát hiện thông tin về hệ thống bao gồm: cổng mở, dịch vụ đang chạy trên các cổng, hệ điều hành và phiên bản phần mềm, lỗ hổng bảo mật tiềm ẩn
- Ứng dụng của nmap trong phát hiện lỗ hổng: phát hiện các dịch vụ dễ
bị tấn công, kiểm tra cấu hình mạng và cổng mở, xác định phiên bản phầm mềm
có lỗ hổng đã biết
- Phát hiện và khắc phục lỗ hổng kịp thời là một bước quan trọng để đảm bảo an ninh mạng và giảm nguy cơ bị tấn công
2 Nội dung thực hành
- Khởi động bài lab: Vào terminal, gõ:
labtainer nmap-discovery
Sau khi khởi động xong một terminal o s ả ẽ xuất hiện, một cái là đại diện cho máy khách: mycomputer, một cái là đại diện cho máy ch : friedshrimp ủ Biết rằng 2 máy n m cùng m ng LAN ằ ạ
Trên terminal mycomputer ử ụ s d ng lệnh “ifconfig”, xác định địa ch ỉ IP và địa ch ỉ
m ng LAN ạ
Trang 9Trên máy khách mycomputer ử dung nmap để tìm ra đị s a ch IP cỉ ủa máy friedshrimp vì chúng cùng n m trong m ng ằ ạ LAN:
nmap sP 172.25.0.0/24–
Tiếp t c s dụ ử ụng nmap để tìm c ng d ch vổ ị ụ đang mở trên máy friedshrimp ết bi
nmap p 2000-3000 172.25.0.5 –
Sau khi xác định được cổng ssh đang mở Sử dụng ssh để truy cập vào máy chủ
ssh –p 2570 172.25.0.5
Trang 1010
Sau khi truy cập được vào máy chủ friedshrimp đi tìm file friedshrimp.txt Mở
và đọc file
Kết thúc bài lab: Trên terminal đầu tiên s dử ụng câu lênh sau để k t thúc bài lab: ế
stoplab nmap-discovery
Kiểm tra kết quả bài lab:
Trang 11Bài 3: Sử dụng công cụ truy cập từ xa telnet
1 Tìm hiểu lý thuyết
- Mô hình Client-Server là một kiến trúc mạng, trong đó các thiết bị khách (client) yêu cầu dịch vụ từ các thiết bị chủ (server), và server cung cấp dịch vụ cho client
- Đặc điểm của mô hình Client-Server:
• Phân chia vai trò rõ ràng: server là thiết bị hoặc phần mềm chịu trchs nhiệm cung cấp tài nguyên, dịch vụ, client là thiết bị hoặc phần mềm yêu cầu
sử dụng các tài nguyên hoặc dịch vụ từ server
• Kết nối qua mạng: Client và server giao tiếp thông qua mạng
• Tập trung hóa dịch vụ: Server đóng vai trò trung tâm, quản lý và cung cấp dịch vụ cho nhiều client cùng lúc
2 Nội dung thực hành
- Khởi động lab:
labtainer telnetlab
Sau khi khởi động xong hai terminal ảo sẽ xuất hiện, một cái đại diện cho máy khách: client, một cái là đại diện cho máy chủ: server
Xác định địa chỉ ip của 2 máy client và server : ifconfig
Trang 1212
Thực hi n telnet t máy khách vào máy chệ ừ ủ và đọc dữ liệu trên máy ch Trên ủ máy khách sử dụng telnet để ế ố ới máy ch k t n i v ủ thông qua địa ch IP: ỉ
telnet 172.20.0.3 Lưu ý : tài khoản mật khẩu để login đều là “ubuntu”
Sau khi đăng nhập vào máy chủ, thực hiện việc đọc tệp có sẵn chứ đoạn mật mã của sinh viên:
cat filetoview.txt
My string is: 79fc5ecd1ff3187581a8524214480c7d
Thoát khỏi phiên telnet trên máy khách b ng l nh ằ ệ exit
Trang 13Để có thể xem được mật khẩu người dùng nhập khi sử d ng telnet ta có thể làm ụ theo hướng dẫn sau:
Trên server, dùng câu lệnh sau để chạy tcpdump, giúp hi n th các gói tin TCP: ệ ị
sudo tcpdump -i eth0 -X tcp
Sau đó ta thực hiện telnet 1 lần nữa trên máy client nhưng lần này ta hãy cố tình
nh p sai mậ ật khẩu và cùng xem điều gì x y ra trên máy server ả
Thực hi n ssh t máy khách vào máy ch ệ ừ ủ và đọc d u trên máy ch Trên máy ữ liệ ủ khách s dử ụng ssh để kết nối với máy ch ủ thông qua địa ch IP: ỉ
ssh 172.20.0.3
Khi nó bắt nh p mậ ật khẩu c a máy server thì mủ ật khẩu mặc định s là ẽ “ubuntu”
Trang 1414
Sau đó đọc file: cat filetoview.txt
My string is:79fc5ecd1ff3187581a8524214480c7d
K t thúc bài lab:ế Trên terminal đầu tiên s d ng câu l ử ụ ệnh sau để k t thúc bài lab: ế
stoplab telnetlab
Checkwork:
Trang 15Bài 4: Giới thiệu về Wireshark
1 Tìm hiểu lý thuyết
- TCP/IP (Transmission Control Protocol/Internet Protocol) là một bộ giao thức truyền thông được sử dụng để kết nối các thiết bị trong mạng, đặc biệt là mạng Internet Nó định nghĩa cách dữ liệu được tổ chức, gửi đi, nhận
và định tuyến giữa các thiết bị trong mạng
- Bộ giao thức TCP/IP được tổ chứ thành 4 lớp, mỗi lớp có một vai trò riêng biệt:
• Lớp mạng: chịu trách nhiệm truyền dữ liệu qua các kết nối vật
lý như Ethernet, wifi Quản lý địa chỉ MAC và truyền tải các gói tin giữa các thiết bị trong cùng một mạng cục bộ (LAN)
• Lớp Internet: định tuyến và truyền các gói dữ liệu giữa các mạng
• Lớp giao vận: Đảm bảo dữ liệu được gửi đi một cách đáng tin cậy hoặc nhanh chóng, tùy vào giao thức
• Lớp ứng dụng: Cung cấp giao tiếp giữa người dùng và hệ thống mạng
- Telnet là một giao thức truyền thông cho phép người dùng đưa ra các lệnh shell đến một máy chủ từ xa Lưu lượng mạng Telnet không được mã hóa, điều này đơn giản hóa việc phân tích lưu lượng
2 Nội dung thực hành
labtainer wireshark-intro
S d ng l nh ử ụ ệ ls -l để xem n i dung cộ ủa thư mục trong terminal đã mở khi sinh
Trang 1616
Chạy Wireshark để thực hiện phân tích PCAP:
Khởi động Wireshark bằng cách sử dụng lệnh wireshark Sau đó sử dụng File
->Open để mở tệp telnet.pcap LƯU Ý: Nế gặp phải cửa sổ đen hoặc bị hỏng khi sử u dụng Wireshark, hãy thử thay đổi kích thước cửa sổ một chút Nếu cửa sổ không thể thay đổi kích thước, hãy thử dừng ứng dụng và khởi động lại
Mở wireshark bằng lệnh wireshark
Tìm một gói tin cụ thể: Xác định gói tin duy nhất chứa mật khẩu được cung cấp khi người dùng cố gắng sử dụng Telnet để đăng nhập với tư cách người dùng “john” Khi sinh viên tìm thấy gói tin duy nhất chứa mật khẩu không hợp lệ, sử dụng File=>Export specified packets để lưu gói tin duy nhất mà sinh viên đã tìm thấy Lưu gói tin duy nhất này dưới dạng invalidpassword.pcap Hãy chắc chắn chọn nút radio
"Selected packets only" trong hộp thoại Export và chắc chắn đặt tên tệp chính xác Sau khi sinh viên lưu gói tin, sinh viên có thể sử dụng File=>Open để mở tệp pcap mới của mình để xác nhận nó chứa gói tin chính xác
Trang 17Gói tin chứa thông tin hợp lệ
Lưu file hợp lệ
Trang 1818
Mở file hợp lệ
Khám phá thêm:
Xem qua các gói tin khác và thử nghiệm với các bộ lọc Thử chọn một trong các gói TELNET và sử dụng chức năng Analyze=>Follow=>TCP stream để xem toàn bộ cuộc trò chuyện TELNET
Trang 19Kết thúc bài lab:
stoplab wireshark-intro
Checkwork:
Trang 2020
Kết luận
Bài th c hành giúp sinh viên c ng c ự ủ ố được ki n thế ức:
- Network-basics: Giới thi u các khái ni m mệ ệ ạng cơ bản trong môi trường Linux, bao g m giao th c ARP, vi c s d ng l nh ping và gi i thi u v TCP/IP Ti n ồ ứ ệ ử ụ ệ ớ ệ ề ệ ích tcpdump được sử dụng để xem lưu lượng mạng
- Nmap-discovery: Giúp sinh viên hi u v khái ni m v l h ng b o m t và cách ể ề ệ ề ỗ ổ ả ậ phát hi n các l h ng b o mệ ỗ ổ ả ật sử ụ d ng các công c ụ rà quét nmap
- Telnetlab: S d ng công cử ụ ụ telnet và ssh để hi u cách truy nh p t xa t máy ể ậ ừ ừ khách đến máy chủ và lấy được dữ liệu trên máy chủ
- Wireshark-intro: Bài th c hành gi i thi u công cự ớ ệ ụ phân tích lưu lượng m ng ạ Wireshark Sinh viên sẽ s dử ụng Wireshark để xem lưu lượng mạng được lưu trữ trong tệp "PCAP" và tìm một gói tin cụ thể Các t p PCAP chệ ứa bản sao của lưu lượng mạng được lưu trữ dưới dạng có thể được xử lý b i các công c phân tích ở ụ
mạng khác nhau như Wireshark và tcpdump PCAP là viế ắt t t c a "packet ủ capture"