ccc6b729de
Full BigBrother network implant - passive SOC + active exploitation. Personal identifiers removed; all capabilities intact. See README.md for setup and docs/deployment.md for detailed deployment.
1.3 KiB
1.3 KiB
Contributing
What's Welcome
- Bug fixes with a clear reproduction case
- New passive capture modules (stick to the module pattern in
modules/passive/) - Hardware support for additional SBCs
- Documentation improvements
What's Not Welcome
- Active modules that target specific commercial services (keep it protocol-level)
- Features that reduce OPSEC (fingerprints, banners, hardcoded strings)
- Breaking changes to the state machine API without a migration path
Module Pattern
New modules implement the BaseModule interface:
class MyModule(BaseModule):
name = "my_module"
tier = "passive" # or "active"
requires = ["root"] # capabilities needed
def start(self): ...
def stop(self): ...
def status(self) -> dict: ...
Modules must not block the main event loop. Use threads or asyncio internally.
Testing
python3 -m pytest tests/
Tests that require root or live network access are marked @pytest.mark.requires_root and skipped in CI. Write unit tests for logic that doesn't need hardware.
Submitting Changes
- Fork the repo
- Branch from
main - Write a test if the change has logic worth testing
- Open a PR with a description of what changed and why
No CLA. MIT License applies to all contributions.