-
11f474556c
docs(behave): integration + extractor + attribution design (DEBT-050 / 051)
anti
2026-05-03 07:24:19 -04:00
-
3f080f601d
feat(intel,ingester): mal_hash feed + observed_attachments table (DEBT-046)
anti
2026-05-03 05:56:46 -04:00
-
03beff3840
feat(orchestrator): authoritative failure-count badge endpoint (DEBT-042)
anti
2026-05-03 05:26:45 -04:00
-
866a76eccf
test(web): scaffold vitest + RTL with Orchestrator seed suite (DEBT-043)
anti
2026-05-03 05:20:01 -04:00
-
6c6f97e840
feat(prober,correlation): attacker fingerprint rotation detection (DEBT-032)
anti
2026-05-03 05:12:51 -04:00
-
dcd558fd91
chore(infra): pin Docker base images by digest (DEBT-023)
anti
2026-05-03 04:38:39 -04:00
-
6e19d3a25a
chore(bait): scaffold default seed dir with README
anti
2026-05-03 04:30:09 -04:00
-
b3a96a045f
feat(mail): default email_seed → \$PROJROOT/bait/ when unset
anti
2026-05-03 04:25:24 -04:00
-
b88d67794d
feat(mail): operator-tunable IMAP/POP3 email seed (DEBT-026)
anti
2026-05-03 02:47:06 -04:00
-
e0b07651fd
docs(debt): mark DEBT-047 resolved (EmailLifter disk-reach + ttp agent gate)
anti
2026-05-02 20:07:54 -04:00
-
79674026dd
feat(cli): allow
decnet ttp on agents (DEBT-047)
anti
2026-05-02 20:07:03 -04:00
-
e972d870de
feat(ttp): EmailLifter disk-reach for body-aware predicates (DEBT-047)
anti
2026-05-02 20:05:54 -04:00
-
7036a86e76
refactor(artifacts): extract resolve_artifact_path to shared module
anti
2026-05-02 20:02:47 -04:00
-
cdbb3d3571
fix(ssh,telnet): move PROMPT_COMMAND out of /root/.bashrc + pin readonly
anti
2026-05-02 19:50:24 -04:00
-
3e9c4c29b9
feat(ssh,telnet): add non-root user account for privesc + enum lure
anti
2026-05-02 19:48:03 -04:00
-
c675bd26cf
docs(debt): mark DEBT-035 resolved; lift DEBT-047 filesystem-access blocker
anti
2026-05-02 19:40:12 -04:00
-
b27332169d
feat(init): create /var/lib/decnet/artifacts with setgid + group-write
anti
2026-05-02 19:35:20 -04:00
-
39a298f685
feat(init): persist DECNET-service api-user/api-group to decnet.ini
anti
2026-05-02 19:33:53 -04:00
-
b3ea3fa925
docs(debt): merge rogue root DEBT.md into the canonical development/DEBT.md
anti
2026-05-02 19:17:20 -04:00
-
17367d0a69
docs(debt,ttp): retire shipped lanes; file mal-hash-feed and R0047-disk-reach entries
anti
2026-05-02 19:12:30 -04:00
-
c714941069
feat(bus): project EmailLifter heavyweight fields onto email.received
anti
2026-05-02 19:10:30 -04:00
-
291b78c1d0
feat(smtp): extract body_simhash + base64-bytes + html-smuggling + per-attachment macro/encrypted
anti
2026-05-02 19:08:37 -04:00
-
fb85762703
feat(bus): publish email.received from ingester after SMTP artifact persist
anti
2026-05-02 18:39:13 -04:00
-
e9324acac7
feat(smtp): emit X-Mailer / Return-Path / dkim+spf / URLs on message_stored
anti
2026-05-02 18:37:11 -04:00
-
2ce150a53e
docs(debt): mark email.received producer as paid; file heavyweight follow-up
anti
2026-05-02 18:24:51 -04:00
-
9a7d116351
docs(ttp): sync A.10 + rewrite §9 drift runbook + DEBT.md markers
anti
2026-05-02 18:09:20 -04:00
-
f8dee596e5
fix(ttp): expand R0054/R0055/R0057 emits + LAST_REVIEWED markers
anti
2026-05-02 18:09:03 -04:00
-
75ff0ede1f
fix(ttp): correct intel_lifter mappings + repoint ThreatFox to threat_type
anti
2026-05-02 18:08:48 -04:00
-
a31ad82880
feat(intel): project per-provider taxonomy into attacker.intel.enriched payload
anti
2026-05-02 18:08:29 -04:00
-
999d3494b4
feat(intel): persist per-provider taxonomy on AttackerIntel for TTP dispatch
anti
2026-05-02 18:07:57 -04:00
-
d1c4a48963
feat(ttp): split bash CMD evidence into structured uid/user/src/pwd/cmd rows
anti
2026-05-02 03:20:53 -04:00
-
84699f89da
feat(ttp): show canonical ATT&CK technique names in the TTPs UI
anti
2026-05-02 03:10:07 -04:00
-
42e9492118
feat(ttp): inspector drawer surfaces evidence + rule_id behind each technique
anti
2026-05-02 02:55:05 -04:00
-
c4e29e3bf9
fix(ttp): resolve attacker_uuid from attacker_ip on bus-event consume
anti
2026-05-02 02:44:30 -04:00
-
f9901befc4
docs(ttp): catalogue producer wiring for every TTP-watched topic
anti
2026-05-02 02:39:23 -04:00
-
b5ce236cab
test(bus): pin scope-(2) producer wiring for reuse / clusterer / intel
anti
2026-05-02 02:38:24 -04:00
-
b043c96d29
feat(collector): publish attacker.session.ended on session_recorded events
anti
2026-05-02 02:35:08 -04:00
-
d9d2a80573
fix(collector): unwrap double-wrapped RFC5424 around bash PROMPT_COMMAND
anti
2026-05-02 02:32:21 -04:00
-
e08bfc4a73
fix(ttp): /api/v1/ttp/rules returns the live rule catalogue
anti
2026-05-02 01:54:06 -04:00
-
7ab0df3680
chore(cleaning): deleted swp vimfile
anti
2026-05-02 01:39:17 -04:00
-
ca1e04033c
docs(ttp): E.5 verification log appended to TTP_TAGGING.md
anti
2026-05-02 01:37:45 -04:00
-
7d1f048764
docs(ttp): E.4.b/E.4.c DEBT entries — provider review + Sigma deferral
anti
2026-05-02 01:35:49 -04:00
-
301d3feee9
feat(ttp): E.4.a extract decnet/cli/ttp.py with worker run + backfill CLI
anti
2026-05-02 01:35:17 -04:00
-
e84b522fd3
feat(ttp): E.3.18c wire RuleEngine via RuleEngineTagger
anti
2026-05-02 01:29:58 -04:00
-
65435f1427
feat(ttp): E.3.18b worker fans session-ended payloads into per-command events
anti
2026-05-02 01:27:37 -04:00
-
44ade3eb63
fix(ttp): E.3.18a worker hydrates per-lifter rule indexes via watch_store
anti
2026-05-02 01:25:15 -04:00
-
9a31d0e50c
feat(ttp): E.3.17 worker registration + scoped schemathesis suite
anti
2026-05-01 21:26:46 -04:00
-
07a609973b
feat(ttp): E.3.16 frontend TTP UI
anti
2026-05-01 21:05:28 -04:00
-
403d83faba
feat(ttp): E.3.15 UKC bridge — production phase-handoff edge fires
anti
2026-05-01 21:01:58 -04:00
-
101127247e
feat(ttp): E.3.14 worker bootstrap (insert + ttp.tagged publish)
anti
2026-05-01 20:57:57 -04:00
-
322fd44d72
feat(ttp): E.3.13 IdentityLifter + CredentialLifter (R0001-R0006)
anti
2026-05-01 20:52:56 -04:00
-
62ad76615e
docs(ttp): mark E.3.9-E.3.12 lifters done
anti
2026-05-01 20:31:47 -04:00
-
7a89fbb357
feat(ttp): E.3.12 EmailLifter (R0041-R0048)
anti
2026-05-01 20:31:03 -04:00
-
f211d394e6
feat(ttp): E.3.11 CanaryFingerprintLifter (R0049-R0053)
anti
2026-05-01 20:25:57 -04:00
-
7865e71aa9
feat(ttp): E.3.10 IntelLifter (R0054-R0058)
anti
2026-05-01 20:23:42 -04:00
-
eff3e4bce7
feat(ttp): E.3.9 BehavioralLifter (R0031-R0040)
anti
2026-05-01 20:17:59 -04:00
-
321ea7a2a6
refactor(ttp): normalise lifter:<owner>_<name> match.kind prefix
anti
2026-05-01 20:10:33 -04:00
-
e7531ee756
refactor(ttp): extract RuleIndex from RuleEngine
anti
2026-05-01 20:09:18 -04:00
-
b819dfefa3
feat(ttp): E.3.8 R0054-R0058 intel cohort + mark step done
anti
2026-05-01 09:22:48 -04:00
-
dc1867315d
feat(ttp): E.3.8 R0049-R0053 canary fingerprint cohort
anti
2026-05-01 09:21:01 -04:00
-
1ad15470a1
feat(ttp): E.3.8 R0041-R0048 email cohort
anti
2026-05-01 09:19:56 -04:00
-
806301e179
feat(ttp): E.3.8 R0031-R0040 behavioral cohort
anti
2026-05-01 09:18:27 -04:00
-
b1fe1f9403
feat(ttp): E.3.8 R0001-R0030 command cohort
anti
2026-05-01 09:16:38 -04:00
-
c635478442
feat(ttp): E.3.8 corpus + harness — labelled holdout fixture
anti
2026-05-01 09:08:07 -04:00
-
ed3f340ea8
feat(ttp): E.3.7 RuleEngine — evaluate + atomic-swap watch_store
anti
2026-05-01 08:49:15 -04:00
-
8a93ee3129
feat(ttp): E.3.6 DatabaseRuleStore — ttp_rule/ttp_rule_state + master sync
anti
2026-05-01 08:39:46 -04:00
-
f41995a229
feat(ttp): E.3.5 FilesystemRuleStore — inotify hot-reload + per-rule events
anti
2026-05-01 08:31:05 -04:00
-
89ce893792
feat(ttp): E.3.4 API handlers wired to repo (rollups + Navigator)
anti
2026-05-01 08:06:53 -04:00
-
fee697694d
feat(ttp): E.3.3 repository — insert_tags + listing rollups (dual backend)
anti
2026-05-01 08:04:46 -04:00
-
226b3adfa2
docs(ttp): mark E.3.1 + E.3.2 done — schema/bus verification
anti
2026-05-01 07:57:38 -04:00
-
3664ea7008
docs(ttp): mark E.2.9–E.2.14b as done in design doc
anti
2026-05-01 07:47:01 -04:00
-
0217319423
test(ttp): E.2.14b RuleStore conformance — cross-backend + filesystem-specific + database-specific
anti
2026-05-01 07:45:32 -04:00
-
bf5414c0d1
test(ttp): E.2.14a follow-up — force DECNET_DEVELOPER_TRACING=true, skip when Jaeger unreachable
anti
2026-05-01 07:42:22 -04:00
-
f4fe6fe6e4
test(ttp): E.2.14a observability tracing — span hierarchy + no-PII property
anti
2026-05-01 07:40:58 -04:00
-
4a93e16407
test(ttp): E.2.13 repository tests — TTPMixin idempotency + identity-rollup projection on dual backends
anti
2026-05-01 07:39:16 -04:00
-
6814949bc0
test(ttp): E.2.12 worker bus integration — _TOPICS equality, loop-prevention, delivery asymmetry
anti
2026-05-01 07:37:58 -04:00
-
c276b5696e
test(ttp): E.2.11 multi-mapping property — N×M fan-out, idempotent UUID, replay-safety
anti
2026-05-01 07:36:19 -04:00
-
fd81be0bb1
test(ttp): E.2.10 confidence model — downward-only multiplier property, drop-below-0.3, AbuseIPDB-30 worked example
anti
2026-05-01 07:34:58 -04:00
-
79e6df8343
test(ttp): E.2.9 UKC bridge bijection — pin tactic↔phase mapping, observable round-trip, lossy phases
anti
2026-05-01 07:33:47 -04:00
-
bcd1f14cd3
feat(ttp): E.1.11 RuleStore contract — base ABC, factory, filesystem + database stubs
anti
2026-05-01 07:25:09 -04:00
-
b6e31e64e9
feat(ttp): E.1.10 repository contract — TTPMixin with insert_tags + list_techniques_by_{identity,attacker,campaign,session} + list_distinct_techniques
anti
2026-05-01 07:21:37 -04:00
-
b7f206c8c5
feat(ttp): E.1.9 API contract — seven router endpoints, admin-gated state mutations, response models
anti
2026-05-01 07:20:13 -04:00
-
cfbfaabfcd
feat(ttp): E.1.8 UKC bridge contract — ATTACK_TACTIC_TO_UKC + tactic_to_ukc_phase + inverse
anti
2026-05-01 07:12:00 -04:00
-
b5a19301a2
test(ttp): E.2.8 API shape + auth — GET 200/401 + admin-only POST/DELETE 401/403/200/400 contract
anti
2026-05-01 07:00:41 -04:00
-
0cdf8d90da
test(ttp): E.2.7 decoupling lint — TTP code may not import decnet.intel.* providers or decnet.profiler.keystroke
anti
2026-05-01 06:58:12 -04:00
-
e2078c868d
test(ttp): E.2.6 lifter tolerates absence — six lifters return [] on empty joins, no ERROR logs
anti
2026-05-01 06:57:29 -04:00
-
1ffaa3df41
test(ttp): E.2.5 RuleEngine behavior — empty store, malformed YAML, multi-emit fan-out, version collisions
anti
2026-05-01 06:56:28 -04:00
-
5accf8f1b1
test(ttp): E.2.4 Tagger ABC conformance — hypothesis fuzz over swallowed Exception types
anti
2026-05-01 06:54:29 -04:00
-
cce84f23dc
test(bus): E.2.3 TTP topic naming — constants, builders, wildcard match
anti
2026-05-01 06:53:05 -04:00
-
e58aa4fe3a
test(ttp): E.2.2 idempotency — determinism, golden value, replay-safety signature lock
anti
2026-05-01 06:45:49 -04:00
-
e6f1da2344
test(ttp): E.2.1b evidence shape — TypedDict keys, PII §6 type-level assertion
anti
2026-05-01 06:45:35 -04:00
-
c3a799726f
test(ttp): E.2.1 schema invariant tests — CHECK, ValueError guard, UUIDv5, JSON round-trip
anti
2026-05-01 06:44:57 -04:00
-
19cc8aa859
feat(ttp): E.1.7 worker contract — run_ttp_worker_loop, _TOPICS, registry entry
anti
2026-05-01 06:33:34 -04:00
-
208ffd8f4f
feat(ttp): E.1.6 per-lifter contracts — six TolerantTagger subclasses
anti
2026-05-01 06:31:31 -04:00
-
cb9d183c20
feat(ttp): E.1.5 RuleEngine contract — CompiledRule, RuleSchema, RuleEngine ABC
anti
2026-05-01 06:30:12 -04:00
-
a703f9eda7
docs(ttp): mark E.1.3 and E.1.4 as done in design doc
anti
2026-05-01 06:22:08 -04:00
-
c3c5813211
feat(ttp): E.1.3+E.1.4 Tagger ABC and composite factory contract
anti
2026-05-01 06:20:10 -04:00
-
e395306dcb
feat(ttp): E.1.2 bus topic contract — TTP_TAGGED, TTP_RULE_FIRED, TTP_RULE_SUPPRESSED, EMAIL_RECEIVED
anti
2026-05-01 06:08:11 -04:00
-
ce7efdfdd2
feat(ttp): E.1.1 schema contract — TTPTag, TTPRule, TTPRuleState, evidence TypedDicts, compute_tag_uuid
anti
2026-05-01 06:03:45 -04:00
-
d09764beec
docs(ttp): add TTP tagging design (order-of-work step 1)
anti
2026-05-01 06:02:56 -04:00