Thứ Bảy, Tháng 10 11, 2025
HomeCodeHướng dẫn quét mạng với Python: Network Scanner

Hướng dẫn quét mạng với Python: Network Scanner

Tại sao cần quét mạng?

Quá trình thu thập thông tin là rất quan trọng trong việc kiểm thử xâm nhập hay tấn công vào một hệ thống. Để truy cập vào mục tiêu, bạn cần có thông tin chi tiết về các thiết bị trong mạng. Việc quét mạng giúp bạn xác định các thiết bị kết nối và thu thập thông tin cần thiết, như địa chỉ MAC. Bạn có thể xem thêm tại Tin tức 360.

Chuẩn bị Lab

Trong lab này, bạn cần hai máy ảo: một là Windows XP và một là Kali Linux. Đảm bảo rằng cả hai máy ảo đều sử dụng kiểu kết nối NAT với subnet IP 192.168.75.0. Kali Linux sẽ thực hiện quét Windows XP để thử nghiệm phần mềm network scanner.

Scapy là gì?

Scapy là thư viện Python mạnh mẽ cho phép bạn tạo, gửi và phân tích các gói tin mạng. Nó hỗ trợ nhiều giao thức và có thể thay thế các công cụ mạng khác như nmap hay Wireshark.

Giao thức ARP

ARP (Address Resolution Protocol) giúp chuyển đổi địa chỉ IP thành địa chỉ MAC. Khi một thiết bị muốn giao tiếp với thiết bị khác, nó sẽ sử dụng ARP để tìm kiếm địa chỉ MAC tương ứng với địa chỉ IP của thiết bị đó.

Kiểm tra thiết bị kết nối

Để xác định số lượng thiết bị kết nối với router, bạn sẽ quét trong phạm vi subnet IP 192.168.75.0/24. Thao tác này giúp bạn biết được tất cả các thiết bị đang hoạt động trên mạng.

Gửi và nhận gói tin

Sau khi cấu hình gói tin, bạn có thể sử dụng hàm srp() trong Scapy để gửi và nhận các gói tin. Hàm này sẽ trả về danh sách các phản hồi và không phản hồi từ các thiết bị trong mạng.

Thiết kế giao diện

Bạn có thể thiết kế giao diện để hiển thị danh sách các thiết bị đã phản hồi gói tin. Điều này giúp bạn dễ dàng quản lý thông tin và theo dõi các thiết bị trong mạng.

Thêm optparse

Sử dụng thư viện optparse để thêm tính năng tùy chọn cho phần mềm quét mạng của bạn. Điều này giúp người dùng có thể dễ dàng cấu hình các tham số cần thiết khi thực hiện quét mạng.

RELATED ARTICLES

Most Popular