CoderFX f894649e51 fix(fix_services): add threading lock around LASTTRY and isReloadingMon
on_epoch and on_bcap_sys_log run from different threads (main loop vs
bettercap event handler). Both read and write self.LASTTRY without
synchronization, creating a race where two recovery actions fire
simultaneously. Similarly, isReloadingMon can be checked and set by
concurrent threads leading to overlapping restarts.

Add a threading.Lock to serialize cooldown checks and state mutations:
- on_bcap_sys_log: lock around LASTTRY cooldown check
- on_epoch: lock around LASTTRY cooldown check
- _tryTurningItOffAndOnAgain: lock around duplicate-attempt guard,
  early return instead of else-block to flatten indentation

Signed-off-by: PwnPacker <4704376+CoderFX@users.noreply.github.com>
2026-03-11 17:28:21 +02:00
2025-01-27 12:04:07 +01:00
2025-02-12 13:02:22 +01:00
2019-10-04 00:27:05 +02:00
2025-07-05 19:51:04 -07:00
2024-11-22 14:02:09 +01:00
2024-12-11 19:46:08 +01:00
2025-02-24 22:57:44 -08:00

Pwnagotchi

This is the main source for all forks:

  • RPiZeroW (32bit)
  • RPiZero2W, RPi3, RPi4, RPi5 (64bit)

For installation docs check out the wiki!

If you want to sponsor this project you can use GH Sponsor or cryptocurrency:

GH Sponsor

Or send some ethereum: 0x33ceC4Abe80fDE460a924d596d4dE31Bc0767bb6

Proudly partnering with PiSugar!!


Pwnagotchi is a Raspberry Pi leveraging bettercap that survives from its surrounding Wi-Fi environment to maximize the crackable WPA key material it captures (either passively, or by performing authentication and association attacks). This material is collected as PCAP files containing any form of handshake supported by hashcat, including PMKIDs, full and half WPA handshakes.

ui

The "old" Pwnagotchi used to have AI to help it learn from its environment, but since then AI seemed to destabilize the Wi-Fi firmware. So I have chosen to remove the AI completely to give the Pwnagotchi more up-time and longer battery life when taking it on a walk.

Multiple units within close physical proximity can "talk" to each other, advertising their presence to each other by broadcasting custom information elements using a parasite protocol I've built on top of the existing dot11 standard.

Documentation

https://github.com/jayofelony/pwnagotchi/wiki https://pwnagotchi.org

  Official Links
Website pwnagotchi.org
Chat discord
Subreddit r/pwnagotchi

License

pwnagotchi created by @evilsocket and updated by us. It is released under the GPL3 license.

S
Description
(⌐■_■) - Raspberry Pi instrumenting Bettercap for Wi-Fi pwning.
Readme
37 MiB
Languages
Python 93.8%
CSS 1.8%
Shell 1.6%
HTML 1.5%
PowerShell 0.6%
Other 0.7%