Fix WEBRUNNER: attack_box format, self-contained CIDR, tools submenu, Tor, teardown

- deploy_webrunner.py: full rewrite following attack_box pattern exactly — auto-generate
  engagement name when blank, select_provider+gather_provider_config per provider (handles
  region selection), separate teardown_after_scan (default=yes) from enhanced_opsec,
  use_tor prompt, bundled YAML defaults, setup_logging+confirm_action+show_naming_relationship
- utils/cidr_resolver.py: self-contained RIR delegation file downloader/parser — downloads
  APNIC/ARIN/RIPE/LACNIC/AFRINIC, caches 24h in ~/.cache/c2itall/cidr/, no geo-scout dep
- utils/chunk_utils.py: remove geo-scout _try_load_geo_scout() dependency, use cidr_resolver
- modules/webrunner/inputs/countries.yaml: bundled default country list (no external dep)
- modules/webrunner/inputs/targets.yaml: bundled default scan targets and ports
- deploy.py: move WEBRUNNER from main menu (item 14) to tools submenu (item 10)
- configure_node.yml: install tor+proxychains4, start tor service, configure proxychains,
  wait for circuit establishment when use_tor=true
- run_scan.yml: prefix command with proxychains4 when use_tor=true
- providers/webrunner.yml: add Play 4 teardown — Linode DELETE + AWS terminate-instances
  using hostvars instance IDs stored during provisioning, conditional on teardown_after_scan
This commit is contained in:
n0mad1k
2026-04-30 16:45:41 -04:00
parent 119b3e2150
commit 507b376e13
9 changed files with 502 additions and 194 deletions
@@ -19,6 +19,44 @@
retries: 3
delay: 10
- name: Install Tor and proxychains
apt:
name:
- tor
- proxychains4
state: present
retries: 3
delay: 10
when: use_tor | default(false) | bool
- name: Start and enable Tor service
systemd:
name: tor
state: started
enabled: true
when: use_tor | default(false) | bool
- name: Configure proxychains for Tor SOCKS5
copy:
content: |
strict_chain
proxy_dns
tcp_read_time_out 15000
tcp_connect_time_out 8000
[ProxyList]
socks5 127.0.0.1 9050
dest: /etc/proxychains4.conf
mode: '0644'
when: use_tor | default(false) | bool
- name: Wait for Tor to establish circuit
wait_for:
port: 9050
host: 127.0.0.1
timeout: 60
delay: 5
when: use_tor | default(false) | bool
- name: Create webrunner workspace
file:
path: /root/webrunner