Tuesday, 26 September 2017

SCUTUM - Linux Automatic ARP (TCP / UDP / ICMP) Firewall

SCUTUM - Linux Automatic ARP (TCP / UDP / ICMP) Firewall

SCUTUM - Linux Automatic ARP (TCP / UDP / ICMP) Firewall

What is SCUTUM?

Long story short, ARP firewall. It automatically adds gateways to the whitelist on connect and blocks everthing else to avoid potential threat.

SCUTUM is an ARP firewall that prevents your computer from being ARP-spoofed by other computers on LAN. SCUTUM controls "arptables" in your computer so it accepts ARP packets only from the gateway. This way, when people with malicious intentions cannot spoof your ARP table.

SCUTUM also prevents other people from detecting your device on LAN if SCUTUM is used with properly configured TCP/UDP firewall.

SCUTUM is also capable of handling tcp/udp/icmp traffic with IPTables. You can choose to enable this feature during installation. However, a more professional firewall controller like UFW is recommended. They can handle traffic with more precision.

Usage & Installation

You should run a installation before running it for the first time for setting up configuration files. I am not sure if portable version is necessary. If you think this should be changed, raise an issue and I will change it.


git clone https://github.com/K4YT3X/SCUTUM.git
sudo python3 scutum.py --install  # scutum.py deletes itself after installation
cd ../
rm -rf SCUTUM/

GUI Usage

ENABLE: Enable SCUTUM (Start spontaneously)
DISABLE: Disable SCUTUM (Never start spontaneously)
DISABLE (Temporarily): Disable SCUTUM until the next time connected to a network


This should be easy SCUTUM starts automatically by itself after installation

$ sudo scutum              # Start SCUTUM Normally
$ sudo scutum --start      # Start SCUTUM Manually for once even it it's disabled
$ sudo scutum --enable     # Enable SCUTUM (Start automatically on connect)
$ sudo scutum --disable    # Disable SCUTUM (Don't start automatically on connect)
$ sudo scutum --reset      # Reset SCUTUM (Allow ALL ARP packages temporarily)
$ sudo scutum --purgelog   # Purge SCUTUM logs
$ sudo scutum --install    # Run scutum installation wizard and install SCUTUM into system
$ sudo scutum --uninstall  # Remove SCUTUM from system completely 
$ sudo scutum --upgrade    # Upgrade SCUTUM and AVALON Framework

SCUTUM Workflow:

  1. Connect to Wi-Fi
  2. Accept all ARP packets
  3. Cache gateway MAC address by establishing a socket connection with a timeout of 0
  4. Add Gateway MAC to exception
  5. DROP all ARP packets

  • Accept all ARP packets

Current Version Change log:

  1. Added Self-Upgrading Function, now users can execute self-upgrading with $ sudo scutum --upgrade
  2. Added AVALON Framework Self-Upgrading function (included when using "--upgrade" parameter)


  • Finish up developing a stable version for SCUTUM GUI

Recent Changes:

  1. Interfaces are now controlled by a new interface controller class
  2. SCUTUM GUI is now avaliable for testing
  3. Added option to choose whether to delete the installer file after installation
  4. Fixed arptables detection errors on some Linux distributions


Post a Comment

Note: only a member of this blog may post a comment.

Toggle Footer