AegisGraph: plataforma de evidencia de evaluación de capa de aplicación basada en grafos para Aplicaciones de Mensajería Segura (SMAs). Investigación DARPA ASEMA HR0011SB20254-12 Nivel 3. ReproChain CVE-2023-4863 alcanzabilidad + fuzzing de parser diferencial PolyDiff + gobernanza de estado de reclamaciones + superficie de referencia reproducible.
Descubrimiento automatizado de vulnerabilidades impulsado por grafos para aplicaciones de mensajería segura. Implementación de ingeniería de 577 Industries para el tema HR0011SB20254-12 (ASEMA) del programa DARPA SBIR Direct-to-Phase-II.

¿Busca los artefactos orientados al evaluador? La versión pública saneada de viabilidad está en
577Industries/asema-feasibility-artifactsen la etiquetav1.0.0-asema-dp2-feasibility. Empiece por ahí si está verificando las afirmaciones de la propuesta ASEMA.
La plataforma de ingeniería — la implementación real detrás de AegisGraph:
| Subsistema | Ruta | Qué hace |
|---|---|---|
| PolyDiff Extended | aegisgraph/polydiff/ | Análisis diferencial multiformato en 6 familias de analizadores (url, image, opengraph, deeplink, qr, proto) con vectores de hechos normalizados |
| HarnessGen | aegisgraph/harnessgen/ | Generación de arneses de fuzzing políglota impulsada por grafos (Jazzer para JVM, libFuzzer+HWASAN para nativo, cargo-fuzz para Rust) |
| InvariantCheck | aegisgraph/invariants/ | 15 invariantes de seguridad específicos de SMA con fixtures de verdad fundamental auditables públicamente; mapeo MASTG/SSDF |
| CrossSMA | aegisgraph/crosssma/ | Matriz de propagación entre aplicaciones (4 objetivos SMA × 6 patrones) con canonicalización estructural |
| DynamicProbe (periodo de opción) | aegisgraph/dynamicprobe/ | Emulador AOSP+HWASAN instrumentado con Frida con puerta de autorización firmada aplicada estructuralmente |
| Divulgación coordinada | aegisgraph/disclosure/ | Libro mayor de divulgación encadenado por hash + enrutamiento a 7 proveedores + temporizador de embargo de día 7/14/30/60/90 + respaldo CERT/CC |
| ReproChain | reprochain/ | Simulación previa a la divulgación contra CVE-2023-4863 (libwebp); commits de vulnerabilidad+corrección incluidos + arnés ASAN |
| Extracción | extraction/ | Extracción estática sobre SMAs públicas fijadas (Signal Android, Element X Android); 8 consultas CodeQL + 4 reglas Semgrep + integración MobSF |
| SMABench | smabench/ | Diseño de benchmark de tres anillos: sintético (Anillo 1), estático de fuente pública + alcanzabilidad (Anillo 2), dinámico autorizado (Anillo 3) |
| Validador + seguridad | validator/, aegisgraph/safety.py | Validación de esquema, verificación de saneamiento (Reglas 1–9), falsabilidad mediante prueba de corrupción deliberada |
| Esquema | schema/ | 6 esquemas JSON + extensión aditiva Schema v2 (discovery_run, crash, disagreement, invariant_violation, cross_target_candidate, disclosure_event) |
| Registro de decisiones | docs/decision-log/ | 14 ADRs que cubren todas las decisiones arquitectónicas |
git clone https://github.com/577Industries/aegisgraph
cd aegisgraph
git checkout v1.0.0-tier3-research
# Recommended: use the pinned devcontainer
devcontainer up
make tooling-strict # verify pinned toolchain
python3 -m pytest -q # expect 1030 passed, 19 skipped
# Per-engine smoke tests
make reprochain-map # ReproChain reachability mapping
make polydiff-regression # PolyDiff differential parser regression (8 historical CVE rediscoveries)
make extract # static extraction over pinned SMAs
make smabench # SMABench benchmark generation
make validate # evidence + CETM validation
make reproduce # full reproduction pipeline
El punto de entrada de la CLI es aegisgraph tras la instalación, o python3 -m aegisgraph.cli desde este checkout.
make export-public-sanitized y aprobación humana explícita antes de la publicación.v1.0.0-tier3-research, commit d91c1df6).github/workflows/ci.yml se ejecuta en cada push; reproduce.yml tiene if: false hasta que se aprovisione el runner autoalojadovalidator/sanitize_check.py aplica 9 reglas a cada candidato de exportación pública antes de que cualquier artefacto salga de este repositorioLos 14 ADR en docs/decision-log/ documentan cada decisión arquitectónica: