2026-06-29 04:53:53 -03:00
2026-06-29 04:39:41 -03:00
2026-06-29 04:39:41 -03:00
2026-06-29 04:11:27 -03:00
2026-06-29 04:39:41 -03:00
2026-06-29 04:39:41 -03:00
2026-06-29 05:08:27 -03:00
2026-06-29 05:08:27 -03:00
2026-06-29 04:39:41 -03:00
2026-06-29 04:39:41 -03:00

CamFinder

Scanner TCP em Rust para descobrir hosts em CIDRs internos, testar a porta 554 e salvar progresso e endpoints abertos em PostgreSQL.

O projeto tem três modos:

  • local: roda o scan inteiro no processo atual.
  • coordinator: recebe conexões de workers, distribui blocos e grava resultados no banco.
  • worker: conecta ao coordenador, recebe blocos e testa os hosts.

O progresso é salvo por bloco, então o scan pode ser retomado sem repetir o que já foi concluído.

Uso

  1. Copie .env.example para .env.
  2. Configure DATABASE_URL apontando para um Postgres acessível.
  3. Rode cargo run -- local, cargo run -- coordinator ou cargo run -- worker.

Docker Compose

O docker-compose.yml já sobe:

  • postgres para persistência.
  • coordinator exposto no host pela porta 666.
  • worker conectado ao coordenador na rede interna do compose.

Para escalar workers:

  • docker compose up --scale worker=3

Para workers de outras máquinas, use vps.valmo.dev:666 como endereço do coordenador.

Scripts

  • cargo build
  • cargo run
  • npm run scan
  • npm run coord
  • npm run worker

Variáveis úteis

  • DATABASE_URL
  • SCAN_CIDRS
  • SCAN_CIDR
  • SCAN_CIDR_FILE
  • SCAN_CONCURRENCY
  • SCAN_CHUNK_SIZE
  • SCAN_TIMEOUT_MS
  • SCAN_MODE
  • COORDINATOR_BIND
  • COORDINATOR_ADDR
  • WORKER_NAME

Restrições

O projeto aceita somente redes privadas 10.0.0.0/8, 172.16.0.0/12 e 192.168.0.0/16.

S
Description
Network analytic tool
Readme 365 KiB
Languages
Rust 99.5%
Dockerfile 0.5%