This software provides a user-friendly GUI for detecting ARP spoofing, ICMP flood, and TCP attacks on a local network. It scans and logs active hosts, identifies attack sources, and allows user authentication. This is a simplified implementation using Python for demonstration purposes.

Features:

  • Detects and identifies ARP spoofing, ICMP flood, and TCP attacks.
  • Scans and records active hosts' IP addresses and MAC addresses on the local network.
  • Logs attack source IP addresses and MAC addresses.
  • Stores all records in a local file.
  • Provides a user login and registration interface.
  • Offers a GUI interface with buttons for navigating different functionalities.

Implementation:

The software is built using the tkinter library for GUI development. It includes a login screen, a registration screen, and a main interface with buttons for each function. The code provides a basic framework for implementing the core functionality, but it requires further development to achieve full functionality.

Example Code:

import tkinter as tk
import os
import time

class App:
    def __init__(self, master):
        self.master = master
        master.title('ARP Spoofing Detection Software')

        # Login Interface
        self.login_frame = tk.Frame(master)
        self.login_frame.pack()

        self.username_label = tk.Label(self.login_frame, text='Username:')
        self.username_label.pack()

        self.username_entry = tk.Entry(self.login_frame)
        self.username_entry.pack()

        self.password_label = tk.Label(self.login_frame, text='Password:')
        self.password_label.pack()

        self.password_entry = tk.Entry(self.login_frame, show='*')
        self.password_entry.pack()

        self.login_button = tk.Button(self.login_frame, text='Login', command=self.login)
        self.login_button.pack()

        self.register_button = tk.Button(self.login_frame, text='Register', command=self.register)
        self.register_button.pack()

        # Registration Interface
        self.register_frame = tk.Frame(master)

        self.register_username_label = tk.Label(self.register_frame, text='Username:')
        self.register_username_label.pack()

        self.register_username_entry = tk.Entry(self.register_frame)
        self.register_username_entry.pack()

        self.register_password_label = tk.Label(self.register_frame, text='Password:')
        self.register_password_label.pack()

        self.register_password_entry = tk.Entry(self.register_frame, show='*')
        self.register_password_entry.pack()

        self.register_confirm_password_label = tk.Label(self.register_frame, text='Confirm Password:')
        self.register_confirm_password_label.pack()

        self.register_confirm_password_entry = tk.Entry(self.register_frame, show='*')
        self.register_confirm_password_entry.pack()

        self.register_submit_button = tk.Button(self.register_frame, text='Submit', command=self.register_submit)
        self.register_submit_button.pack()

        self.register_return_button = tk.Button(self.register_frame, text='Return', command=self.register_return)
        self.register_return_button.pack()

        # Function Selection Interface
        self.function_frame = tk.Frame(master)

        self.icmp_flood_button = tk.Button(self.function_frame, text='ICMP Flood', command=self.icmp_flood)
        self.icmp_flood_button.pack()

        self.tcp_attack_button = tk.Button(self.function_frame, text='TCP Attack', command=self.tcp_attack)
        self.tcp_attack_button.pack()

        self.arp_spoofing_button = tk.Button(self.function_frame, text='ARP Spoofing', command=self.arp_spoofing)
        self.arp_spoofing_button.pack()

        self.scan_button = tk.Button(self.function_frame, text='Scan', command=self.scan)
        self.scan_button.pack()

        self.log_button = tk.Button(self.function_frame, text='Log', command=self.log)
        self.log_button.pack()

        self.logout_button = tk.Button(self.function_frame, text='Logout', command=self.logout)
        self.logout_button.pack()

    def login(self):
        username = self.username_entry.get()
        password = self.password_entry.get()

        # Validate username and password (example)
        if username == 'admin' and password == 'admin':
            self.login_frame.pack_forget()
            self.function_frame.pack()

    def register(self):
        self.login_frame.pack_forget()
        self.register_frame.pack()

    def register_submit(self):
        username = self.register_username_entry.get()
        password = self.register_password_entry.get()
        confirm_password = self.register_confirm_password_entry.get()

        # Validate username (example)
        if username == 'admin':
            tk.messagebox.showerror('Error', 'Username already exists')
            return

        # Validate password (example)
        if password != confirm_password:
            tk.messagebox.showerror('Error', 'Passwords do not match')
            return

        # Registration successful (example)
        tk.messagebox.showinfo('Success', 'Registration successful')
        self.register_frame.pack_forget()
        self.login_frame.pack()

    def register_return(self):
        self.register_frame.pack_forget()
        self.login_frame.pack()

    def icmp_flood(self):
        # ICMP Flood detection code
        pass

    def tcp_attack(self):
        # TCP Attack detection code
        pass

    def arp_spoofing(self):
        # ARP Spoofing detection code
        pass

    def scan(self):
        # Scan local network for hosts code
        pass

    def log(self):
        # View logs code
        pass

    def logout(self):
        self.function_frame.pack_forget()
        self.login_frame.pack()

root = tk.Tk()
app = App(root)
root.mainloop()

This example code provides a basic structure and is intended for demonstration purposes only. Actual implementation would require further development and adaptation to specific requirements.

Centos Python ARP Spoofing Detection Software

原文地址: https://www.cveoy.top/t/topic/jnX1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录