CTIPilot
AI-generated · no human review · verify critical claims against the linked source. how it works →

2026-11-09T0255Z-intel

One pipeline fire, in full · intel run of 2026-11-09 · sub-agent allocation and telemetry, per-iteration verification verdicts and findings, source-list edits, coverage gaps, bridge invocations, and the run's own verification & coverage notes: what was published, what was dropped at the borderline or judged not relevant (and why), single-source carve-outs, and contradictions. Rendered from runs/2026-11-09/2026-11-09T0255Z-intel.md.

Run telemetry

2026-11-09T0255Z-intel intel prompt v4.24 publish ok
1h 22m duration 1 published 1 updates
Claude Sonnet 5.5 (claude-sonnet-5-5) main agent
S1 Claude Sonnet 5.5 (claude-sonnet-5-5)
Items returned
5
Duration
22m 15s
Tool calls
5 WebFetch12 WebSearch110 bridge
Cited sources
1 of 28 in slice
S2 Claude Sonnet 5.5 (claude-sonnet-5-5)
Items returned
2
Duration
17m 31s
Tool calls
0 WebFetch33 WebSearch70 bridge
Cited sources
2 of 21 in slice
S3 Claude Sonnet 5.5 (claude-sonnet-5-5)
Items returned
8
Duration
17m 40s
Tool calls
2 WebFetch3 WebSearch118 bridge
Cited sources
4 of 14 in slice
S4 Claude Sonnet 5.5 (claude-sonnet-5-5)
Items returned
1
Duration
15m 00s
Tool calls
3 WebFetch28 WebSearch75 bridge
Cited sources
1 of 12 in slice

Verification

✓ double-CLEAN · Sonnet 5.5 ×2 #1 NEEDS_FIXES · Sonnet 5.5 · t=9 e=1 a=4 #2 NEEDS_FIXES · Sonnet 5.5 · t=4 e=1 a=1 #3 NEEDS_FIXES · Sonnet 5.5 · t=4 e=0 a=2 #4 CLEAN · Sonnet 5.5 · t=0 e=0 a=0 #5 CLEAN · Sonnet 5.5 · t=0 e=0 a=2

Deep dive

·

Sources changed (this run)

Edits this run made to sources/sources.json · promotions, demotions, new candidates, and fetch-method / category / reliability / url corrections (the run record's sources_changed[]). Paginated; 10 per page.

6 notes · 3 last_successful_fetch · 1 status · 1 added · 1 url · 1 content_scope.

SourceChangeFrom → ToReason
mandiant-gtiglast_successful_fetch· → 2026-11-09fetched and used
datadog-security-labslast_successful_fetch· → 2026-11-09fetched and used
sans-isclast_successful_fetch· → 2026-11-09fetched and used
android-security-bulletinstatus· → activepromoted: cited by published entries from 3 distinct runs
fortinet-psirtnotes· → recipe note appendedrecipe or health note from this fire's sub-agents, appended to the record
cert-lvnotes· → recipe note appendedrecipe or health note from this fire's sub-agents, appended to the record
parlament-ch-curia-vista-odatanotes· → recipe note appendedrecipe or health note from this fire's sub-agents, appended to the record
vaud-soc-cyber-threat-reviewnotes· → recipe note appendedrecipe or health note from this fire's sub-agents, appended to the record
hadrian-labsnotes· → recipe note appendedrecipe or health note from this fire's sub-agents, appended to the record
ico-uknotes· → recipe note appendedrecipe or health note from this fire's sub-agents, appended to the record
vd-grand-conseiladded· → status: candidateAdded 2026-11-09: cantonal parliament session agendas carry the full interpellation texts, the only primary for cantonal oversight of the covered Vaud school-platform breach
balbooa-blogurlhttps://www.balbooa.com/blog/gridbox → https://www.balbooa.com/blogsource_health flagged needs-content-fix: the old record URL returned no security vocabulary; the Newsroom index lists the Gridbox security posts and reads with extract
balbooa-blogcontent_scope· → general-newssource_health: with extract (pinned as health_cmd) the page reads and is dated, but a mostly product-news newsroom carries only one distinct security term

Coverage gaps (this run)

Sources this run's brief needed that returned no usable content via any documented recipe. Bridge-recovered or quiet-day sources do NOT appear here. (Distinct from the independent source-accessibility probe at the foot of this section, which probes all active sources regardless of what any run needed.)

Source (uncovered)URL triedMethod chainStatus / classWhat the agent did instead
connectwise-trust-centerhttps://www.connectwise.com/company/trust/advisoriesbridge:url --direct → WebFetch403 transport-403
advisories page answers 403 on url --direct and WebFetch again
no substitute read this fire; 403 never demotes
sygniahttps://www.sygnia.co/blog/bridge:url --direct → bridge:extract → bridge:jina403 transport-403
blog answers 403 on every transport
listed as a coverage gap; 403 never demotes
ico-ukhttps://ico.org.uk/about-the-ico/media-centre/news-and-blogs/bridge:extract → bridge:url --direct → WebFetch → bridge:jina403 transport-403
403 on extract, url --direct (listing, sitemap, enforcement, rss) and WebFetch; the reader keys answer HTTP 402
WebSearch found no ICO penalty or reprimand newer than 2026-08-12; GOV.UK atom carries no ICO enforcement news; 403 never demotes
bfv-verfassungsschutz-dehttps://www.verfassungsschutz.de/bridge:feed → bridge:jinaNone connection-reset
feed connection reset; the reader page is undated
no substitute read; listed as a coverage gap

Bridge invocations (this run)

5 bridge calls this run · these are successful bridge fetches (separate from "Coverage gaps" above).

5 other
  • tools/kev_window_diff.py ×1
  • tools/fetch_source.py cisa-kev ×1
  • tools/fetch_source.py ncsc-csh recent ×1
  • tools/fetch_source.py extract ×1
  • tools/fetch_source.py jina (last rung) ×1

Verification findings · all iterations

Per-iteration finding detail. Each table is one verifier pass · what was flagged, how the main agent remediated it, and the outcome. Walking the tables top-to-bottom shows the verifier's debugging trail across iterations.

Iteration #1 NEEDS_FIXES · 14 findings (truth=9, editorial=1, advisory=4) · Claude Sonnet 5.5 · 7m 47s

F-codeSectionItem · URL/quoteVerifier summaryRemediation · outcome
F3
claim-not-supported
·
Triage line broadens GTIG's "calls to disable logging by non-IaC principals" to any change to model invocation logging.·
F14
quantifier-without-source
·
"Other actors harvested LLM API keys from public GitHub repositories" is one actor in GTIG.·
F3
claim-not-supported
·
(low confidence) GTIG does not say LiteLLM gateways reachable from the internet are in scope.·
F3
claim-not-supported
·
(low confidence) The claim that revoking a key leaves the persistence in place is the entry's inference under a GTIG citation.·
F4
hallucinated-fact
·
(low confidence) "Abuse stays invisible" is overstated and conflicts with the Detection line; GTIG gives default-off only for Google Cloud Data Access logs.·
F3
claim-not-supported
·
(low confidence) sourcing_note understates Datadog's evidence base (two scripts, 12 customer organizations).·
F11
editorial-advisory
·
sourcing_note carries a composition-rationale sentence about a flaw the body never describes.·
F8
needs-more-research
·
The body drops behaviors GTIG describes for LiteLLM, Ollama and service-account rotation while affected_products carries them.·
F3
claim-not-supported
·
(low confidence) The hosting and telecom spread was attached to the whole 11-03 to 11-08 series, but ISC's breakdown covers 2026-11-05 only.·
F3
claim-not-supported
·
(low confidence) "so the counts show attempts, not success" is the entry's inference under the ISC citation, and the 11-03 and 11-04 counts were left unexplained.·
F3
claim-not-supported
·
(low confidence, pre-existing) The Previdian source is dated 2026-11-07, the page's publication date is 2026-11-05.·
F11
editorial-advisory
·
The saved Previdian page (read today) shows 20 attempts, 13 addresses and 9 countries, the entry still shows 15, 10 and 8.·
F11
editorial-advisory
·
The Datadog evidence quote ("Attackers use similar tactics...") is meaningless without the sentence before it.·
F11
editorial-advisory
·
(low confidence) The discovery-path note and sources_used misstate how the item was found.·

Iteration #2 NEEDS_FIXES · 6 findings (truth=4, editorial=1, advisory=1) · Claude Sonnet 5.5 · 8m 12s

F-codeSectionItem · URL/quoteVerifier summaryRemediation · outcome
F3
claim-not-supported
·
(low confidence) The record summary says attempts peaked on 2026-11-06 and were lower by 2026-11-08, but ISC states no trend and the 11-08 count is a partial day.·
F3
claim-not-supported
·
(low confidence) ISC's "quite a few of these login attempts" follows the 2026-11-05 scanner table, but the section widened it to the whole series.·
F3
claim-not-supported
·
(low confidence) "which are the events to watch" sits under the Wiz citation, which gives no detection guidance.·
F14
quantifier-without-source
·
(low confidence) "an account that never used model services" is not what GTIG says; GTIG says the services were not enabled at the time of compromise.·
F5
missing-citation
·
(low confidence) Three consecutive factual sentences in the second paragraph carry no inline link.·
F11
editorial-advisory
·
Advisory: GTIG also describes secrets taken from cloud secret managers (T1555.006) and codebase cloning for secrets (T1213.003), unmapped.·

Iteration #3 NEEDS_FIXES · 6 findings (truth=4, editorial=0, advisory=2) · Claude Sonnet 5.5 · 7m 44s

F-codeSectionItem · URL/quoteVerifier summaryRemediation · outcome
F3
claim-not-supported
·
(low confidence) The summary credits the enabling of model services to the stolen tokens; GTIG names the tokens as initial access and credits the enabling to abuse of access keys.·
F3
claim-not-supported
·
(low confidence) "12 customers" and "failed ListFoundationModels calls" drop Datadog's "12 organizations" and "in the majority of instances".·
F4
hallucinated-fact
·
(low confidence) "no source publishes an indicator beyond that" is no longer literally true, since ISC lists scanner addresses and an all-A password pattern.·
F4
hallucinated-fact
·
(low confidence) The sourcing note credits OX Security with the mechanism, the `*` condition and the Alpine fixed-package table, which Alpine's own advisory carries.·
F11
editorial-advisory
·
Advisory: T1548.005 (token-creation privileges used to mint temporary credentials for high-privilege service accounts) is unmapped.·
F11
editorial-advisory
·
Advisory: the clause "writing of the first scanners, its author expects" is garbled.·

Iteration #5 CLEAN · 2 findings (truth=0, editorial=0, advisory=2) · Claude Sonnet 5.5 · 6m 33s

F-codeSectionItem · URL/quoteVerifier summaryRemediation · outcome
F11
editorial-advisory
·
(low confidence, pre-existing) The summary reads as if Previdian's page reports the honeypot root login; the page carries only sensor counters.·
F11
editorial-advisory
·
(low confidence, pre-existing) The title attaches CVSS 3.1 8.1 to the NCSC Switzerland advisory, which carries no CVSS score (OX Security does).·

Verification & coverage notes

The run record's narrative body, verbatim. This is where the run accounts for its own judgement calls: every borderline drop and judged-not-relevant item with its reason, dedup decisions, single-source items and their carve-outs, contradictions, and per-source coverage gaps, so nothing the run considered disappears silently.

Verification & coverage notesrun record body

2026-11-09T0255Z-intel · Sonnet 5.5 · window 26 h · 1 entry published

Verification & coverage notes

Quiet Monday window: 26 h (gap 24.0 h to 2026-11-08T0256Z-intel, normal daily cadence, no outage backfill). CISA KEV carried no addition in the window (kev_window_diff: 0 rows), no scheduled multi-product release fell in it (Microsoft Patch Tuesday and SAP Patch Day are 2026-11-10), and NCSC.ch, BACS, NCSC-NL, CERT-FR, BSI, CERT-EU, CERT.PL, NCSC-UK, Fortinet and Palo Alto had nothing newer than 2026-11-06. No lab research was published inside the 26 h window itself (the newest Microsoft post is 2026-11-07), so S3's items came through source lookbacks. Output: 1 new entry and 1 changelog record; nothing in the window clears the critical or high bar that the store lacks.

  • Published, new: LLMjacking (threat, notable): GTIG and Mandiant's 2026-11-02 incident-response report on stolen cloud identities used to enable Bedrock and Gemini model services and resell the quota, with Wiz's Google Cloud billing-account variant and Datadog's AWS key validation. First seen as trade-press titles of 2026-11-03 (Infosecurity Magazine and Dark Reading, inside their 145 h lookbacks), then traced to the GTIG post of 2026-11-02 (PD-7 d, first coverage from rotational lookbacks; event_date 2026-11-02). mandiant-gtig and sans-isc were read in S3's beyond-slice sweeps, so they carry no slice-ledger row; their last_successful_fetch moved because the main agent's deep read used them. Clears PD-11 (d): per-cloud control-plane hunting a Tier 2/3 responder can build detections from, for cloud tenants any public body runs; no Swiss or public-sector victim is stated, hence notable and not higher. Distinct from 2026-08-07/ai-api-token-jacking-transfer-station-resale (different publisher, case data and window), which it lists in references[]. The body describes GTIG's LiteLLM /key/regenerate exploitation without the CVE id (CVE-2026-40217), which GTIG attaches to it.
  • Updated: 2026-11-06/cve-2026-123158-openssh-musl-no-pam-password-bypass-sshole (type improvement, so it does not re-float): SANS ISC's honeypot counts add a second independent sensor set (first genuine attempt 2026-11-05, peak 2026-11-06), which replaces the entry's "one telemetry vendor" sourcing statement; the entry's decision and priority are unchanged, so an update was not warranted.
  • borderline-drop: OpenAM before 16.1.4 (CVE-2026-123549, -123550, -123551: session-token theft, unsigned SAML assertions, self-registration admin creation); project advisories and the fix are from 2026-10-22; only the CVE assignment (VulnCheck 2026-11-07, EUVD 2026-11-08) is in the window, no exploitation, no constituency use of OpenAM established. Reopen if exploitation is reported or a Swiss body is shown to run it.
  • borderline-drop: Contact Form 7 6.2 to 6.2.3 CVE-2026-114432, fixed 2026-10-29, no exploitation, rated medium by Patchstack, and code execution needs an Apache configuration that lists directories and maps .phar to PHP; a patch-cycle item.
  • borderline-drop: Plex2Shell (CVE-2026-96652, -96654, -96655, -96656; KEV since 2026-10-20, QNAP's report of 2026-11-06), re-seen by S1 with no development since the 2026-11-08 drop (no Swiss body, QNAP-managed estate or KEV-listed campaign touching the constituency); the earlier reopen condition is unmet.
  • borderline-drop: UgCS CVE-2026-59104, re-seen, niche, no exploitation, no vendor advisory, no Swiss use evidenced (second consecutive drop).
  • borderline-drop: Debian and Ubuntu apt CVE-2026-109518 (TOCTOU in the download retry path; root code execution through a malicious mirror, proxy or on-path position), fixed 2026-11-04, not exploited, needs a network position, a patch-cycle item.
  • borderline-drop: Vaud Grand Conseil interpellation 26_INT_155 on the school IT-support platform (S2), the MP's governance questions with no government answer, no vector and no new technical fact; also about a day outside the Vaud entry's lookback.
  • borderline-drop: CERT.LV's 2026-11-06 refrigeration advisory (S2), widens the warning to heating boilers, water pumps, solar controls and building services (a warning, not observed attacks) and adds the Latvian case; most of its control list repeats CERT-FR, CISA and ENISA guidance the entry carries, and a twelfth record would grow an entry whose analysis is already far past the word bound. Recoverable if a Swiss body reports an attack on non-refrigeration building equipment.
  • borderline-drop: SpecterOps on third-party service principals in Entra ID (2026-11-06), an explainer on the ConnectWise Cloud Backup incident whose hunts the entry already carries (credential-addition audit events, service-principal sign-ins); the general customer-side audit of consented multi-tenant apps would grow an analysis of 1,047 words. Recoverable as an improvement record if the audit wants it.
  • borderline-drop: Trellix CyberThreat Report November 2026 (vendor telemetry statistics, government most targeted by ransomware campaigns, edge devices as the front door), the tradecraft repeats entries already in the store (Talos IR Q3, Elastic quarterly report) and the numbers are vendor statistics.
  • borderline-drop: SH Consulting's scan of dangling DNS records in US government domains; OpenAI's 948 kernel LPE exploits pipeline (no CVE list, no exploitation); Layer3 Intel's residential-proxy exits on a US government network (second consecutive drop); Chainalysis intrusion, Credit Mutuel Arkea, Gleis D / Medi Porta Chur, Holcim and the Swiss leak-site listings (Treuhand & Immobilien Abt, Labatec, HighTec, Erowa); each fails the relevance or actionability gate or the incident floor on today's facts.
  • borderline-drop: ChimeraZ's forum sale of a claimed SGS France customer database (S4; single forum post relayed by ZATAZ and FrenchBreaches, no SGS or CNIL statement, no vector, French customer data of a private group), an unconfirmed leak-site claim (PD-6) that would sit below the incident floor even if confirmed; no backlog row opened. Reopen if SGS, the CNIL or an Admiralty A or B outlet confirms it and names a vector.
  • Hold (not a backlog row): Keycloak CVE-2026-120984 (delegated-admin script-policy upload leading to code execution, Red Hat 2026-11-07) has no fixed upstream build named; a possible update on 2026-11-08/cve-2026-117691-keycloak-saml-http-redirect-signature-bypass once a fix version appears.
  • Backlog: the ChimeraZ forum-sale claim against the Belgian rescue zone Hainaut-Est (ZOHE) stays held; S4 re-searched in French (twice), Dutch and English and found no zone statement and no press, expiry 2026-11-17 unchanged. No row changed state, so nothing was appended to it.
  • Single-source: none among the run's outputs.
  • Contradiction: GTIG attaches CVE-2026-40217 to the LiteLLM /key/regenerate user-ID rebind flaw, while the store's 2026-06-16 Obsidian entry carries that id as a different LiteLLM flaw (custom-code guardrail execution). No LiteLLM advisory was read, so the id is left out of the new entry.
  • Candidate sources: vd-grand-conseil (cantonal parliament agendas carry the full interpellation texts; the only primary for cantonal oversight of a covered Swiss incident). S3's sh-consulting, S1's openam-security-advisories and contactform7-releases were not added: their items fell below the gate. android-security-bulletin met the three-run bar and was promoted to active.
  • Source notes appended: Fortinet's ir.xml feed works while its HTML listing is stale; cert-lv feed plus extract; the Curia Vista OData filter shape; extract on vd.ch/cybersecurite lists items newest first. hadrian-labs read as marketing only (ten of ten posts), a demotion candidate if the next sweeps stay quiet.
  • Source health: source_health.py ended with an empty UNSOLVED list after one repair, balbooa-blog (the record URL returned no security vocabulary; the Newsroom index reads with extract, pinned as health_cmd, and is scoped general-news). Other verdicts: one stale and three unreadable sources already handled.
  • Watchlist: none configured, sweeps are a no-op.
  • Coverage gaps: connectwise-trust-center (403 on every transport); sygnia (403 on every transport); ico-uk (403 on every transport for the seventh fire, WebSearch found no ICO notice after 2026-08-12); bfv-verfassungsschutz-de (feed connection reset, reader page undated); anssi-cyber-gouv-actualites (readable only through the metered reader); sap-security-notes (404 until the 2026-11-10 patch day); cisa-advisories RSS (unreadable; WebFetch of the listing plus cisa csaf-recent works); tagesschau (feed depth about 1.5 days against a 124 h lookback).
  • Reader credit: the jina keys are close to exhausted (eight answered HTTP 402 for S4; one S1 key reported an exhausted balance); three extracts fell through to the reader.
  • Next audit: two optional advisories on pre-existing sshole text (the summary clause that reads as if Previdian reports the honeypot login; the title's CVSS attribution to the NCSC advisory); S1's recipe findings on the Chrome releases Atom feed (answers 302; extract of the blog root worked through the reader), bsi-de quiet since 2026-11-06, and an independent read of the LLMjacking entry's per-cloud event names against each cloud's own documentation, which this fire could not read.

← Operations dashboard · day page 2026-11-09 · run-record contract: docs/pipeline.md