
Gestor de campañas de ingeniería social basado en CLI con espacio de trabajo integrado, biblioteca de plantillas, sincronización de audiencia y exportación de análisis para ejercicios de concienciación seguros por defecto.
Cartero ahora es una CLI en Go con una base de datos de espacio de trabajo incrustada y sin configuración, en lugar del antiguo runtime dependiente de MongoDB.
La implementación actual proporciona:
cartero serve.cartero/cartero.sqliteCartero mantiene el estado local dentro del espacio de trabajo activo:
.cartero/cartero.sqlite: almacén de estado SQLite incrustadoplugins/: manifiestos de plugins sincronizadosdrafts/: borradores de campaña generados a partir de mensajes revisadosexports/: exportaciones de análisisNo hay una base de datos externa que instalar o administrar. Los espacios de trabajo existentes basados en Bolt se migran a SQLite automáticamente en la primera apertura.
make bootstrap
make build
./dist/cartero --plain workspace init
./dist/cartero init campaign.yaml
./dist/cartero --plain validate -f campaign.yaml
./dist/cartero --plain preview -f campaign.yaml
./dist/cartero serve --addr 127.0.0.1:8080
./dist/cartero --plain template list
./dist/cartero --plain finding list
./dist/cartero --plain plugin list
Ejecute desde un directorio anidado o una sesión de shell externa con --root /path/to/workspace para forzar la resolución del espacio de trabajo.
cartero workspace init Bootstrap the embedded workspace
cartero workspace status Show database and workspace counts
cartero init Write a starter campaign file
cartero preview Render a styled readiness overview and persist a snapshot
cartero validate Lint a campaign definition and persist a snapshot
cartero serve Run the local admin UI and safe testing pages
cartero template list Browse the seeded template library
cartero template show Inspect a template in detail
cartero audience import Import a CSV segment into the workspace
cartero audience list List stored audience members
cartero import clone Convert a reviewed message into a safe draft campaign
cartero finding import Normalize external findings into the workspace
cartero finding list List imported findings
cartero migrate mongo-export Import legacy Mongo export files into SQLite
cartero event record Record engagement telemetry
cartero event list List stored engagement events
cartero report export Export workspace analytics to JSON or CSV
cartero plugin list Show installed plugin manifests
cartero plugin sync Sync built-in plugin manifests and template seed data
cartero doctor Inspect local workspace health
cartero version Print build metadata
El repositorio incluye estos plugins de primera parte:
local-previewtemplate-libraryclone-importeranalytics-exportaudience-syncengagement-recorderSus manifiestos se encuentran en plugins/, y su contrato está documentado en PLUGIN.md.
Las campañas son archivos YAML que describen un plan de ejercicio de concientización. Cartero valida la estructura y aplica controles de seguridad locales:
capture_credentials debe permanecer falseallow_external_links debe permanecer falsehighComience desde configs/campaign.example.yaml.
Cartero puede correlacionar la salida de escáneres externos con el mismo espacio de trabajo local utilizado para campañas y eventos:
./dist/cartero --plain finding import --file scans/nuclei.jsonl --source nightly-nuclei
./dist/cartero --plain finding list --tool nuclei
./dist/cartero --plain migrate mongo-export --path legacy-export
La ruta de migración heredada importa archivos de exportación Mongo antiguos para personas y aciertos, y convierte los artefactos de credenciales heredados en hallazgos redactados en lugar de arrastrar valores sin procesar hacia adelante.
make fmt
make vet
make test
make smoke
CI se ejecuta en push y pull request mediante ci.yml. Los lanzamientos etiquetados son empaquetados por release.yml usando .goreleaser.yaml.