| 12345678910111213141516171819202122232425262728293031323334353637 |
- #!/usr/bin/env python3
- """botnet/dorks.txt sanity checks."""
- import sys, os
- err = []
- path = "botnet/dorks.txt"
- if not os.path.exists(path):
- print("FAIL: botnet/dorks.txt missing")
- sys.exit(1)
- with open(path, encoding="utf-8", errors="replace") as f:
- lines = f.read().splitlines()
- raw = len(lines)
- non_empty = [l for l in lines if l.strip()]
- unique = sorted(set(l.strip() for l in non_empty))
- if raw < 100:
- err.append(f"dorks.txt has only {raw} lines (expected > 100)")
- if len(non_empty) != raw:
- err.append(f"{raw - len(non_empty)} blank lines found")
- if len(unique) != len(non_empty):
- err.append(f"{len(non_empty) - len(unique)} duplicate dorks")
- malformed = 0
- for ln, line in enumerate(non_empty, start=1):
- if not any(tok in line for tok in ("=", "?", "/")):
- malformed += 1
- if malformed <= 5:
- err.append(f"line {ln} doesn't look like a dork: {line!r}")
- print(f"total={raw} non_empty={len(non_empty)} unique={len(unique)}")
- for e in err:
- print("FAIL:", e)
- sys.exit(0 if not err else 1)
|