Initial public release
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.
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Test that OPSEC violations are fixed.
|
||||
|
||||
Tests for:
|
||||
1. sensor.* logger namespaces (should be __name__)
|
||||
2. Hardcoded "bb" API user (should be generic)
|
||||
3. Hardcoded "bb" relay_user (should be generic)
|
||||
"""
|
||||
|
||||
import os
|
||||
import re
|
||||
import subprocess
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
def test_no_sensor_logger_fingerprints():
|
||||
"""Verify that no logging.getLogger(__name__) calls exist."""
|
||||
bb_root = Path(__file__).parent.parent
|
||||
|
||||
# Search for sensor.* logger calls in Python files
|
||||
result = subprocess.run(
|
||||
["grep", "-r", r'getLogger("sensor\.', str(bb_root), "--include=*.py"],
|
||||
capture_output=True,
|
||||
text=True,
|
||||
)
|
||||
|
||||
# Should find no matches (empty stdout)
|
||||
assert result.stdout == "", (
|
||||
f"Found sensor.* logger fingerprints:\n{result.stdout}"
|
||||
)
|
||||
|
||||
|
||||
def test_no_bb_api_user_hardcoded():
|
||||
"""Verify that 'bb' is not hardcoded as bettercap API user."""
|
||||
bb_root = Path(__file__).parent.parent
|
||||
|
||||
# Check config file
|
||||
config_file = bb_root / "config" / "bigbrother.yaml"
|
||||
with open(config_file) as f:
|
||||
config_content = f.read()
|
||||
|
||||
# Look for api_user: "bb" (should be something else)
|
||||
match = re.search(r'api_user:\s*"([^"]+)"', config_content)
|
||||
assert match and match.group(1) != "bb", (
|
||||
f"Found hardcoded api_user as 'bb' in config. Should be generic."
|
||||
)
|
||||
|
||||
# Check Python files for hardcoded "bb" as default user parameter
|
||||
result = subprocess.run(
|
||||
["grep", "-r", 'user:\s*str\s*=\s*"bb"', str(bb_root), "--include=*.py"],
|
||||
capture_output=True,
|
||||
text=True,
|
||||
)
|
||||
|
||||
assert result.stdout == "", (
|
||||
f"Found hardcoded 'bb' as default user in code:\n{result.stdout}"
|
||||
)
|
||||
|
||||
|
||||
def test_no_bb_relay_user_hardcoded():
|
||||
"""Verify that 'bb' is not hardcoded as relay_user."""
|
||||
bb_root = Path(__file__).parent.parent
|
||||
|
||||
# Check config file
|
||||
config_file = bb_root / "config" / "bigbrother.yaml"
|
||||
with open(config_file) as f:
|
||||
config_content = f.read()
|
||||
|
||||
# Look for relay_user: "bb" (should be something else)
|
||||
match = re.search(r'relay_user:\s*"([^"]+)"', config_content)
|
||||
assert match and match.group(1) != "bb", (
|
||||
f"Found hardcoded relay_user as 'bb' in config. Should be generic."
|
||||
)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
test_no_sensor_logger_fingerprints()
|
||||
test_no_bb_api_user_hardcoded()
|
||||
test_no_bb_relay_user_hardcoded()
|
||||
print("All OPSEC tests passed!")
|
||||
Reference in New Issue
Block a user