{"id":13731544,"url":"https://github.com/tenable/pi_sniffer","last_synced_at":"2025-05-08T19:36:19.404Z","repository":{"id":48600588,"uuid":"239559254","full_name":"tenable/pi_sniffer","owner":"tenable","description":"The pocket-sized wireless sniffer","archived":true,"fork":false,"pushed_at":"2021-07-18T22:32:17.000Z","size":16515,"stargazers_count":211,"open_issues_count":10,"forks_count":38,"subscribers_count":25,"default_branch":"master","last_synced_at":"2025-03-30T13:37:24.342Z","etag":null,"topics":["raspberry-pi-zero-w","sniffer","wireless"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tenable.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}},"created_at":"2020-02-10T16:33:01.000Z","updated_at":"2025-03-13T19:56:30.000Z","dependencies_parsed_at":"2022-09-07T23:51:34.693Z","dependency_job_id":null,"html_url":"https://github.com/tenable/pi_sniffer","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tenable%2Fpi_sniffer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tenable%2Fpi_sniffer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tenable%2Fpi_sniffer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tenable%2Fpi_sniffer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tenable","download_url":"https://codeload.github.com/tenable/pi_sniffer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253135722,"owners_count":21859684,"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":["raspberry-pi-zero-w","sniffer","wireless"],"created_at":"2024-08-03T02:01:32.440Z","updated_at":"2025-05-08T19:36:14.374Z","avatar_url":"https://github.com/tenable.png","language":"C++","funding_links":[],"categories":["C++"],"sub_categories":[],"readme":"# Pi Sniffer\n\nPi Sniffer is a Wi-Fi sniffer built on the Raspberry Pi Zero W. While there are many excellent sniffing platforms out there, Pi Sniffer is unique for it's small size, real time display of captured data, and handling of user input.\n\n\u003cimage src=\"https://user-images.githubusercontent.com/787916/75169212-291e0c00-56f6-11ea-8ae9-13e4a2762276.jpg\" height=\"66%\" width=\"66%\"\u003e\n\n## Current Release Image\nYou can download an an RPI image of this project from the \"Releases\" page. If you don't trust that, you can generate your own release by using the image_gen/create_image.sh script.\n\n## Project Goals\nThe goal of this project was to create a Wi-Fi sniffer that I could carry around in my pocket, easily view real time status, decrypt packets on the fly, and change antenna channels as needed. Also, I wanted this project to be cheap (less than $100) and require no soldering.\n  \n## Hardware\n\nThe project was conceived with the goal to avoid any type of soldering. While Pi Sniffer does require the GPIO header on the Raspberry Pi Zero W, you can buy that pre-soldered. So I'm gonna claim no soldering required.\n\nThe base install requires:\n\n* [Raspberry Pi Zero WH](https://www.adafruit.com/product/3708)\n* [Adafruit 128x64 OLED Bonnet](https://www.adafruit.com/product/3531)\n* A power source. I suggest one of the following:\n    * [Anker PowerCore 5000](https://www.amazon.com/dp/B01CU1EC6Y)\n    * [Anker E1 Astro](https://www.amazon.com/Anker-bar-Sized-Portable-High-Speed-Technology/dp/B00P7N0320)\n    * [UPS-Lite](https://www.tindie.com/products/rachel/ups-lite-for-raspberry-pi-zero/)\n* Any SD card 8GB or larger\n\nAdditionally, you can configure the device with any of the following add-ons (and still reasonably be called pocket sized):\n* [Secondary antenna by CanaKit](https://www.amazon.com/CanaKit-Raspberry-Wireless-Adapter-Dongle/dp/B00GFAN498)\n* [Ublox-7 GPS](https://www.amazon.com/WINGONEER%C2%AE%C2%AE-Antenna-VK-172-Receiver-Windows/dp/B07F6TJG9L)\n* [MicroUSB to USB adapters](https://www.amazon.com/Ksmile%C2%AE-Female-Adapter-SamSung-tablets/dp/B01C6032G0)\n* [USB MiniHub](https://www.adafruit.com/product/2991)\n\n\n## Software\nDownload the release image and flash it to an SD card. Stick the SD card into your RPI Zero WH and you should be good to go! By default, SSH should be enabled. Use the default pi:raspberry credentials. The device's hostname is pisniffer so something along the following lines should get you in:\n\n```sh\nssh pi@pisniffer.local\n```\n\n## Controls\nPi Sniffer isn't unique just due to it's size but it also offers controls. The user can start and stop sniffing. Change channels. Deauth clients. And more. Here are some images showing how to use the controls.\n\n### Start, Stop, and Shutdown\nTo start sniffing hit the #6 button. To stop sniffing hit the #5 button. To shutdown the device hold #5 and #6.\n\n![start_stop](https://user-images.githubusercontent.com/787916/79753616-3580a880-82e4-11ea-934b-fc65fc3d9e78.png)\n\n### Channel Hoppping\nTo change to a specific channel, rotate to the antenna screen and hit #6. This will cycle you through the available channels plus hopping.\n\n![channel_change](https://user-images.githubusercontent.com/787916/79753590-30235e00-82e4-11ea-98a2-65b8e8a419f8.png)\n\n### Deauth Attack\nTo deauth a client, find them in the client view and hit #6.\n\n![deauth](https://user-images.githubusercontent.com/787916/79753602-3285b800-82e4-11ea-85b2-065e194b8387.png)\n\n### Lock display\nSometimes it's beneficial to lock the screen and controls. To do so, rotate to the lock screen and hit #6. To unlock you need to hit #5 and push up on the joystick at the same time.\n\n![lock](https://user-images.githubusercontent.com/787916/79753610-33b6e500-82e4-11ea-846d-62177edc5385.png)\n\n## Issues and Pull Requests\nIssues and pull requests are welcome. I only ask that you provide enough information to recreate the issue or information about why the pull request should be accepted.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftenable%2Fpi_sniffer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftenable%2Fpi_sniffer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftenable%2Fpi_sniffer/lists"}