{"id":13905867,"url":"https://github.com/FLOCK4H/Freeway","last_synced_at":"2025-07-18T03:32:24.939Z","repository":{"id":239096987,"uuid":"791582235","full_name":"FLOCK4H/Freeway","owner":"FLOCK4H","description":"WiFi Penetration Testing \u0026 Auditing Tool","archived":false,"fork":false,"pushed_at":"2024-06-06T19:57:59.000Z","size":274,"stargazers_count":108,"open_issues_count":0,"forks_count":12,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-06-08T15:15:22.932Z","etag":null,"topics":["3way","beacon-flood","cybersecurity-tools","deauthentication-attack","deauther","freeway","hacking","handshake-capture","network-monitor","packet-injection","pmkid-attack","python","scapy","wifi-hacking","wifi-monitor","wifi-password-stealing","wifi-penetration-testing","wifi-pentesting","wifi-security"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FLOCK4H.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-25T01:27:13.000Z","updated_at":"2024-06-10T12:23:54.892Z","dependencies_parsed_at":"2024-05-18T11:21:55.906Z","dependency_job_id":"b8fcaeea-ab44-4b83-909e-ef4809bbbd9a","html_url":"https://github.com/FLOCK4H/Freeway","commit_stats":null,"previous_names":["flock4h/freeway"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FLOCK4H%2FFreeway","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FLOCK4H%2FFreeway/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FLOCK4H%2FFreeway/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FLOCK4H%2FFreeway/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FLOCK4H","download_url":"https://codeload.github.com/FLOCK4H/Freeway/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226344435,"owners_count":17610133,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3way","beacon-flood","cybersecurity-tools","deauthentication-attack","deauther","freeway","hacking","handshake-capture","network-monitor","packet-injection","pmkid-attack","python","scapy","wifi-hacking","wifi-monitor","wifi-password-stealing","wifi-penetration-testing","wifi-pentesting","wifi-security"],"created_at":"2024-08-06T23:01:25.362Z","updated_at":"2025-07-18T03:32:24.592Z","avatar_url":"https://github.com/FLOCK4H.png","language":"Python","readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/FLOCK4H/Freeway/assets/161654571/85eb939d-0154-4767-8aab-c3a5e29b1d6f\" alt=\"Freeway logo\" /\u003e\n\n  **Freeway for Network Pentesting**\n\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n\nRead the article about Freeway, now on\n\u003ca href=\"https://medium.com/@flytechoriginal/freeway-for-network-pentesting-e97e69e481fc\"\u003eMedium\u003c/a\u003e\n\u003c/div\u003e\n\u003cbr /\u003e\n\n\u003e [!NOTE]\n\u003e User will not be prompted to accept EULA anymore!\u003cbr /\u003eTherefore, by downloading the software, user automatically agrees to follow every guideline specified in EULA section below.\n\n\u003ch2\u003e\u003cstrong\u003e1. Overview\u003c/strong\u003e\u003c/h2\u003e\n\n**Freeway** is a Python scapy-based tool for WiFi penetration that aim to help ethical hackers and pentesters develop their skills and knowledge in auditing and securing home or enterprise networks.\n\n\u003ch2\u003e\u003cstrong\u003e2. Features\u003c/strong\u003e\u003c/h2\u003e\n\n- IEEE 802.11 Packet Monitoring\n- Deauthentication Attack\n- Beacon Flood\n- Packet Fuzzer\n- Network Audit\n- Channel Hopper\n- Evil Twin\n- Packet Crafter\n- Arsenal\n\n\u003csub\u003eDescription of the features can be found in Section 6\u003c/sub\u003e\n\n\u003ch2\u003e\u003cstrong\u003e3. Preparation\u003c/strong\u003e\u003c/h2\u003e\n\nIt is **necessary** to have:\n- A network adapter supporting monitor mode and frame injection.\n- An operating system running a Linux distribution.\n- Python 3+ installed.\n\n\u003csub\u003eOptionally, install Scapy and Rich packages for Python if not installing via pip (see Section 4)\u003c/sub\u003e\n\n\u003ch2\u003e\u003cstrong\u003e4. Setup\u003c/strong\u003e\u003c/h2\u003e\n\n**Option A**: Install via PyPi (**RECOMMENDED**)\n\n```\n  $ sudo pip install 3way\n```\n\n**Option B**: Install or run manually\n\nFirst, clone the repository:\n\n    git clone https://github.com/FLOCK4H/Freeway\n\nNavigate to the cloned repository:\n\n    cd Freeway\n\n\u003cstrong\u003eOption 1:\u003c/strong\u003e Install dependencies, folders, and Freeway. (**RECOMMENDED**)\n\n\u003csub\u003eThis will allow to launch the tool from anywhere\u003c/sub\u003e\n\n    sudo pip install .\n\n\u003cstrong\u003eOption 2:\u003c/strong\u003e Run without installation using Python.\n\n\u003csub\u003eMust be called from the /Freeway directory\u003c/sub\u003e\n\n    sudo pip install scapy rich\n    sudo python Freeway\n\n\u003ch2\u003e\u003cstrong\u003e5. Usage\u003c/strong\u003e\u003c/h2\u003e\n\nThis tool comes with its own **command line interface (CLI)** and can be run without specifying any additional arguments.\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eClick to expand the CLI usage\u003c/strong\u003e\u003c/summary\u003e\n\u003cbr /\u003e\n\n    sudo Freeway\n\nFollow the prompt to select the network adapter (see Section 3):\n\n\u003e [!TIP}\n\u003e These screenshots show Freeway in its very first iteration, these do not reflect how software looks now, and are to change in the future. \n\n![image](https://github.com/FLOCK4H/Freeway/assets/161654571/653c9304-3256-4444-8f3f-0677134c8af8)\n\nSelect the feature and parameter(s):\n\n![image](https://github.com/FLOCK4H/Freeway/assets/161654571/2444922e-6f1b-4958-99ea-df7463b912cb)\n![image](https://github.com/FLOCK4H/Freeway/assets/161654571/757b5d77-be12-4dda-a957-3c305789bba7)\n\n\u003c/details\u003e\n\u003cbr /\u003e\n\nAnd with the **additional arguments**, to skip the CLI partially or completely.\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eClick to expand the arguments usage\u003c/strong\u003e\u003c/summary\u003e\n\u003cbr /\u003e\n\n    sudo Freeway -i wlan2 -a monitor -p 1,2,a\n\n\u003csub\u003e'-p' is not required with '-a', e.g., this will prompt for parameters to specify in the CLI:\u003c/sub\u003e\n\n    sudo Freeway -i wlan2 -a deauth\n\n**All arguments, actions, and parameters:**\n\n\u003cdiv\u003e\n\u003cpre\u003e\n  \n  Arguments:\n  -h, --help     Show the help message. \u003cbr /\u003e\n  -i, --inf      Specify the WLAN interface (e.g., wlan0, wlan1). \u003cbr /\u003e\n  -a, --action   Action number or alias (e.g., 1 or monitor). \u003cbr /\u003e\n  -p, --params   Parameter identifiers (e.g., 1,2,a or 3rtv, depends on action). \u003cbr /\u003e\n\n  Actions:\n  1 or monitor,\n  2 or deauth,\n  3 or beacon_spam,\n  4 or fuzzer,\n  5 or audit,\n  6 or hopper,\n  7 or eviltwin\n  8 or packet_crafter,\n  9 or arsenal\n\n  Parameters must be provided in the same format as in the CLI, specific for every action.\n  To list all parameters for a given action, just provide -a argument without -p.\n  \n\u003c/pre\u003e\n\u003c/div\u003e\n\u003c/details\u003e\n\n\u003ch2\u003e\u003cstrong\u003e6. Details\u003c/strong\u003e\u003c/h2\u003e\n\n- **Packet Monitor** - Sniffs the WiFi packets in the air, analyze them and return the result onto the python's curses display. Catches SSIDs, MACs, Clients, Uptime, Channel, Signal (dBm), Encryption and resolves manufacturer. Catches PMKIDs in hashcat crackable format, and 4-way Handshakes, as well as other EAPOL packets. Logs the captured session to the **/caps** folder or every captured packet if _Save output_ was selected.\n- **Deauthentication Attack (Deauthing)** - Disconnects a device from the network by sending a packet containing AP\u003csup\u003e1\u003c/sup\u003e address, device address (or broadcast for _Mass Deauthing_) and the deauthentication frame with a reason of kicking the client(s). In case where a device address is a broadcast address, the AP will in most cases disconnect all clients at once. Freeway creates separate thread for every AP or client found in order to make deauthing maximally efficient.\n- **Beacon Flood Attack** - Floods the nearby WiFi scanners with fake or malformed APs. It can cause the devices looking for WiFi to behave abnormally (e.g. crash, freeze, drain the battery or run slower) and disrupt the nearby network traffic. User is able to specify his own ssid list, use the default one and generate correct (but random) or malformed beacon packets.\n- **Packet Fuzzer** - Fuzzing is a technique of network vulnerability assesment by sending a wide array of malformed or semi-random data to network interfaces and observing the responses. Freeway covers: **Replay captured packets (RX\u0026TX\u003csup\u003e2\u003c/sup\u003e)**, **Spam CTS/RTS or Probe requests** and **Flood an AP with Authentication or Association Frames**. Devices that will capture fuzzed packets will behave differently depending on vulnerability level of receiver (!USE WITH CAUTION!).\n- **Network Audit** - Gathers all possible information about specific network and returns them onto the curses view. Tracks all clients signal and last activity, as well as resolve the manufacturer.\n- **Channel Hopper** - Changes the current channel of the network adapter. Helpful in making specific attacks more successful.\n- **Evil Twin** - Hosts a legitimate Access Point with Captive Portal, this 'legitimate' AP asks user for login/ bank credentials, or to download malware. First, there's a normal AP created, most times with an ESSID and MAC of existing network. Then, we host our captive portal (e.g., login website), so a normal web server, that reroutes users to our `index.html` trying to associate with the network we spoof.\n- **Packet Crafter** - Allows to construct proper .11 frames, modify them with custom values, and send in the air using multiple interfaces on a custom number of threads. Useful for quick packet delivery, educational activities, or threaded/ multi-node penetration. All encapsulated in a user-friendly interface with prompt-after-prompt typing.\n- **Arsenal** - Allows to include and manage user scripts within the app, has `CSA Spam` which is new.\n\n\u003csup\u003e1\u003csup\u003e**Access Points**\u003c/sup\u003e\u003c/sup\u003e\n\n\u003csup\u003e2\u003csup\u003e**Transceive and receive at the same time**\u003c/sup\u003e\u003c/sup\u003e\n\n\u003ch2\u003e\u003cstrong\u003e7. Uninstall\u003c/strong\u003e\u003c/h2\u003e\n\nIn case where Freeway doesn't meet the expectations and was installed via pip, the removal process is as easy:\n\n    sudo pip uninstall 3way\n\n\u003ch1\u003eEULA\u003c/h1\u003e\n\n**1)** Users must strictly adhere to local legal guidelines\n\n**2)** Users must not disrupt, introduce chaos, cause damage to others, or to other devices in any circumstances\n\n**3)** Redistribution of this software must comply with MIT license standards\n\n**4)** The author disclaims all liability for any damage caused by the use of this software\n\n**5)** In the event of an investigation, the author will not provide assistance to any parties\n\n**Remember, the purpose of Freeway is to identify vulnerabilities, not to exploit them!**\n\n\u003ch2\u003eTODO\u003c/h2\u003e\n\n✅ Evil Twin attack\n\n✅ Version \u0026 update checker\n\n✅ PyPi Release\n\n✅ Packet Crafter\n\n✅ Freeway v1.5\n\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\n\u003e 19.05.24\n\u003e 1. Fixed rare RuntimeError in deauth.py caused by iterating on dynamicly changing size dictionary\n\u003e 2. Further improvements of beacon packet formatting in beacon_spam.py\n\n\u003e 27.05.24\n\u003e 1. Added `updater.py`\n\u003e 2. Added `evil_twin.py`\n\u003e 3. Added `/templates` folder\n\u003e 4. Added Evil Twin to actions list\n\u003e 5. Updated README.md\n\u003e 6. PyPi Release\n\n\u003e 3.06.24\n\u003e 1. Added `git_downloader.py`\n\u003e 2. Updated `beacon_spam`\n\u003e 3. Updated `evil_twin`\n\n\u003e 27.06.24\n\u003e 1. Removed `EULA` from script\n\u003e 2. Added `EULA` to `README.md`\n\u003e 3. Added `pkt_crafter.py`\n\u003e 4. Modified `Freeway` script\n\n\u003ch2\u003eKnown Issues\u003c/h2\u003e\n\n\u003e 1. Android filters out fake beacon frames (works for Android 5, doesn't on Android 11+, versions below Android 11  and above Android 5 were not tested.)\n\u003e 2. EvilTwin needs a second adapter connected to the internet (not really an issue), to be able to reroute traffic\n\u003e 3. The very first run of the EvilTwin may not succeed if dnsmasq wasn't ever ran on the machine, run EvilTwin twice, or install and run dnsmasq before.\n\n\u003ch2\u003e\u003cstrong\u003eLegal Note\u003c/strong\u003e\u003c/h2\u003e\n\n\u003e [!IMPORTANT]\n\u003e Any malicious use of such features should be considered a crime, \u003cbr /\u003e\n\u003e always assert permission to perform the penetration testing.\n\n\u003ch2\u003e\u003cstrong\u003eLicense\u003c/strong\u003e\u003c/h2\u003e\n\nThe distribution of Freeway is regulated by the standard MIT license, users can feel free to use, share and contribute to the repository or report bugs.\n","funding_links":[],"categories":["HarmonyOS","Python"],"sub_categories":["Windows Manager"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFLOCK4H%2FFreeway","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FFLOCK4H%2FFreeway","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFLOCK4H%2FFreeway/lists"}