
# Integration af real‑tid trusselsintelligens med AI til automatiserede svar på sikkerhedsspørgeskemaer  

Sikkerhedsspørgeskemaer er et af de mest tidskrævende artefakter i SaaS‑leverandørers risikostyring. De kræver opdateret dokumentation om databeskyttelse, hændelsesrespons, sårbarhedsstyring og, i stigende grad, om det **aktuelle trusselsbillede**, der kan påvirke leverandøren. Traditionelt kopierer sikkerhedsteams statiske politikker og opdaterer manuelt risikobeskrivelser, hver gang en ny sårbarhed afsløres. Denne tilgang er både fejlbehæftet og for langsom til moderne indkøbsprocesser, som ofte afsluttes inden for dage.

**Procurize** automatiserer allerede indsamling, organisering og AI‑genereret udarbejdelse af svar på spørgeskemaer. Den næste frontier er at **indsætte live trusselsintelligens** i genereringspipeline‑en, så hvert svar afspejler den seneste risikokontekst. I denne artikel vil vi:

* Forklare, hvorfor statiske svar er en sårbarhed i 2025.  
* Beskrive arkitekturen, der samler trussels‑intel‑feeds, en vidensgraf og promptning af store sprogmodeller (LLM).  
* Vise, hvordan man bygger **valideringsregler for svar**, der holder AI‑output i overensstemmelse med compliance‑standarder.  
* Give en trin‑for‑trin‑implementeringsguide for teams, der bruger Procurize.  
* Diskutere målbare fordele og potentielle faldgruber.  

---

## 1. Problemet med forældede svar på spørgeskemaer  

| Problem | Indvirkning på leverandørrisikostyring |
|---------|----------------------------------------|
| **Regulatorisk afdrift** – Politikker skrevet før en ny regulering kan muligvis ikke længere opfylde opdateringer til [GDPR](https://gdpr.eu/) eller [CCPA](https://oag.ca.gov/privacy/ccpa). | Øget sandsynlighed for audit‑fund. |
| **Emergente sårbarheder** – En kritisk CVE opdaget efter seneste politikrevision gør svaret unøjagtigt. | Kunder kan afvise forslaget. |
| **Ændrende trusselsaktør‑TTP‑er** – Angrebsteknikker udvikler sig hurtigere end kvartalsvise politikgennemgange. | Underminerer tilliden til leverandørens sikkerhedsposture. |
| **Manuel genarbejde** – Sikkerhedsteams skal finde hver forældet linje. | Spilder ingeniørtimer og sænker salgsprocessen. |

Statisk svar bliver derfor en skjult risiko. Målet er at gøre hvert spørgeskema **dynamisk**, **bevisunderbygget** og **kontinuerligt verificeret** mod dagens truendedata.

---

## 2. Arkitekturbeskrivelse  

Nedenfor er et overordnet Mermaid‑diagram, der illustrerer dataflowet fra eksterne trussels‑intel‑feeds til et AI‑genereret svar, klar til eksport fra Procurize.

```mermaid
graph TD
    A["Live Threat Intel Feeds"]:::source --> B["Normalization & Enrichment"]:::process
    B --> C["Threat Knowledge Graph"]:::store
    D["Policy & Control Repository"]:::store --> E["Context Builder"]:::process
    C --> E
    E --> F["LLM Prompt Engine"]:::engine
    G["Questionnaire Metadata"]:::source --> F
    F --> H["AI‑Generated Draft"]:::output
    H --> I["Answer Validation Rules"]:::process
    I --> J["Approved Response"]:::output
    J --> K["Procurize Dashboard"]:::ui

    classDef source fill:#f9f,stroke:#333,stroke-width:2px;
    classDef process fill:#bbf,stroke:#333,stroke-width:2px;
    classDef store fill:#bfb,stroke:#333,stroke-width:2px;
    classDef engine fill:#ffb,stroke:#333,stroke-width:2px;
    classDef output fill:#fbf,stroke:#333,stroke-width:2px;
    classDef ui fill:#f66,stroke:#333,stroke-width:2px;
```

**Nøglekomponenter**

1. **Live Threat Intel Feeds** – API‑er fra tjenester som AbuseIPDB, OpenCTI eller kommercielle feeds.  
2. **Normalization & Enrichment** – Normaliserer dataformater, beriger IP‑adresser med geolocation, kortlægger CVE‑er til CVSS‑score og tagger ATT&CK‑teknikker.  
3. **Threat Knowledge Graph** – En Neo4j‑ eller JanusGraph‑lager, der forbinder sårbarheder, trusselsaktører, udnyttede aktiver og afhjælpningskontroller.  
4. **Policy & Control Repository** – Eksisterende politikker (f.eks. [SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2), [ISO 27001](https://www.iso.org/standard/27001), interne) gemt i Procurizes dokumentvault.  
5. **Context Builder** – Samler knowledge‑graph‑data med relevante politik‑noder for at skabe en *kontekst‑payload* for hvert afsnit i spørgeskemaet.  
6. **LLM Prompt Engine** – Sender en struktureret prompt (system‑ + brugerbeskeder) til en tunet LLM (fx GPT‑4o, Claude‑3.5), der inkluderer den seneste trusselskontekst.  
7. **Answer Validation Rules** – Business‑rule‑engine (Drools, OpenPolicyAgent) der tjekker udkastet for compliance‑kriterier (fx “skal referere til CVE‑2024‑12345, hvis til stede”).  
8. **Procurize Dashboard** – Viser en live‑forhåndsvisning, audit‑spor og giver godkendere mulighed for at godkende eller redigere det endelige svar.

---

## 3. Prompt‑engineering for kontekst‑bevidste svar  

Et veludformet prompt er hovednøglen til nøjagtigt output. Nedenfor er en skabelon, som Procurize‑klienter bruger, og som kombinerer statiske politikuddrag med dynamisk trusselsdata.

```
System: Du er en sikkerhedsoverholdelsesassistent for en SaaS‑leverandør. Dine svar skal være korte, faktuelle og citere den seneste tilgængelige evidens.

User: Giv et svar på spørgsmålet "Beskriv, hvordan I håndterer nyligt offentliggjorte kritiske sårbarheder i tredjeparts‑biblioteker."

Context:
- Policy‑uddrag: "Alle tredjeparts‑afhængigheder scannes ugentligt med Snyk. Kritiske fund skal afhjælpes inden for 7 dage."
- Seneste intel: 
  * CVE‑2024‑5678 (Snyk‑severity: 9.8) opdaget d. 2025‑03‑18, påvirker lodash v4.17.21.
  * ATT&CK‑teknik T1190 "Exploit Public‑Facing Application" knyttet til nylige supply‑chain‑angreb.
- Aktuel afhjælpningsstatus: Patch påført d. 2025‑03‑20, overvågning på plads.

Constraints:
- Skal referere til CVE‑identifikatoren.
- Skal indeholde afhjælpnings‑tidslinje.
- Må ikke overstige 150 ord.
```

LLM returnerer et udkast, der allerede **nævner den seneste CVE** og er i overensstemmelse med den interne afhjælpningspolitik. Valideringsmotoren sikrer derefter, at CVE‑identifikatoren findes i knowledge‑graphen, og at tidslinjen overholder politikens 7‑dages‑regel.

---

## 4. Bygning af valideringsregler for svar  

Selv den bedste LLM kan hallucinerere. En regelbaseret beskytter fjerner falske påstande.

| Regel‑ID | Beskrivelse | Eksempel‑logik |
|----------|-------------|----------------|
| V‑001 | **CVE‑tilstedeværelse** – Hvert svar, der refererer en sårbarhed, skal indeholde et gyldigt CVE‑ID, der findes i knowledge‑graphen. | `if answer.contains("CVE-") then graph.containsNode(answer.extractCVE())` |
| V‑002 | **Tids‑begrænset afhjælpning** – Afhjælpningsudtalelser skal overholde den maksimale tilladte dag i politikken. | `if answer.matches(".*within (\\d+) days.*") then extractedDays <= policy.maxDays` |
| V‑003 | **Kilde‑attribution** – Alle faktuelle påstande skal citere en datakilde (feed‑navn, rapport‑ID). | `if claim.isFact() then claim.source != null` |
| V‑004 | **ATT&CK‑overensstemmelse** – Når en teknik nævnes, skal den være knyttet til en afhjælpningskontrol. | `if answer.contains("ATT&CK") then graph.edgeExists(technique, control)` |

Reglerne kodet i **OpenPolicyAgent (OPA)** som Rego‑politikker og udføres automatisk efter LLM‑trinnet. Enhver overtrædelse flagger udkastet til menneskelig gennemgang.

---

## 5. Trin‑for‑trin‑implementeringsguide  

1. **Vælg trussels‑intel‑udbydere** – Registrer mindst to feeds (ét open‑source, ét kommercielt) for at sikre dækning.  
2. **Udrul en normaliseringsservice** – Brug en serverless‑funktion (AWS Lambda), der henter JSON fra feeds, mapper felter til et fælles skema og sender til et Kafka‑emne.  
3. **Opsæt knowledge‑graphen** – Installer Neo4j, definér nodetyper (`CVE`, `ThreatActor`, `Control`, `Asset`) og relationer (`EXPLOITS`, `MITIGATES`). Populér med historiske data og planlæg daglige imports fra Kafka‑streamen.  
4. **Integrér med Procurize** – Aktivér *External Data Connectors*-modulet, konfigurer det til at forespørge grafen via Cypher for hvert spørgeskema‑afsnit.  
5. **Opret prompt‑skabeloner** – I Procurizes *AI Prompt Library* tilføj skabelonen fra afsnit 3, med placeholder‑variabler (`{{policy_excerpt}}`, `{{intel}}`, `{{status}}`).  
6. **Konfigurer valideringsmotoren** – Deploy OPA som sidecar i samme Kubernetes‑pod som LLM‑proxy, indlæs Rego‑politikkerne, og eksponér et REST‑endpoint `/validate`.  
7. **Kør en pilot** – Vælg et lav‑risiko spørgeskema (fx intern audit) og lad systemet generere svar. Gennemgå flaggede elementer og juster prompt‑formulering og regel‑strenghed.  
8. **Mål KPI’er** – Spor gennemsnitlig svar‑genereringstid, antal valideringsfejl, og reduktion i manuel redigering. Sigt efter mindst **70 % reduktion** i time‑til‑levering efter første måned.  
9. **Rul ud i produktion** – Aktivér workflowet for alle udgående leverandør‑spørgeskemaer. Opsæt alarmer ved enhver validerings‑regelbrist, som overstiger en tærskel (fx >5 % af svar).  

---

## 6. Kvantificerbare fordele  

| Måleværdi | Før integration | Efter integration (3 mån) |
|-----------|----------------|---------------------------|
| Gennemsnitlig svar‑genereringstid | 3,5 timer (manuel) | 12 minutter (AI + intel) |
| Manuel redigeringstid | 6 timer pr. spørgeskema | 1 time (kun review) |
| Compliance‑afdrift‑incidenter | 4 pr. kvartal | 0,5 pr. kvartal |
| Kundetilfredshed (NPS) | 42 | 58 |
| Audit‑fundrate | 2,3 % | 0,4 % |

Tallene er baseret på tidlige adoptører af **Threat‑Intel‑Enhanced Procurize**‑pipeline (fx en fintech‑SaaS, der håndterer 30 spørgeskemaer pr. måned).

---

## 7. Almindelige faldgruber og hvordan de undgås  

| Faldgruppe | Symptomer | Forebyggelse |
|------------|-----------|--------------|
| **Afhængighed af én enkelt feed** | Manglende CVE‑er, forældede ATT&CK‑kortlægninger. | Kombinér flere feeds; brug fallback‑open‑source‑feed som NVD. |
| **LLM‑hallucination af ikke‑eksisterende CVE‑er** | Svar citerer “CVE‑2025‑0001”, som ikke findes. | Streng valideringsregel V‑001; log hver udtrukket identifier for audit. |
| **Performance‑flaskehals i knowledge‑graph‑forespørgsler** | Latens > 5 sekunder pr. svar. | Cache hyppigt forespurgte resultater; udnyt Neo4j‑Graph‑Algo‑indekser. |
| **Politik‑‑intel‑mismatch** | Politik siger “afhjælpes inden for 7 dage”, men intel indikerer 14‑dages ventetid pga. leverandør. | Tilføj en **politik‑undtagelses‑workflow**, hvor sikkerhedsledere kan godkende midlertidige afvigelser. |
| **Regulatoriske ændringer, der løber forbi feed‑opdateringer** | Ny EU‑lovgivning afspejles ikke i nogen feed. | Vedligehold en manuel “regulatorisk‑overrides”‑liste, som prompt‑engine’en injicerer. |

---

## 8. Fremtidige forbedringer  

1. **Prædiktiv trusselsmodellering** – Brug LLM’er til at forudsige kommende CVE‑er baseret på historiske mønstre, så afhjælpning kan forebygges.  
2. **Zero‑Trust‑forsikring‑scores** – Kombinér valideringsresultater til en real‑time risikoscore, som vises på leverandørens tillidsside.  
3. **Selvlærende prompt‑tuning** – Retræn prompt‑skabeloner periodisk med forstærkningslæring fra reviewer‑feedback.  
4. **Tværorganisationel vidensdeling** – Opret en federeret graf, hvor flere SaaS‑leverandører udveksler anonymiseret intel‑‑politik‑kortlægning for at forbedre den kollektive sikkerhed.  

---

## 9. Konklusion  

Indlejringen af **real‑tid trusselsintelligens** i Procurizes AI‑drevne automatisering af sikkerhedsspørgeskemaer giver tre kernefordele:

* **Nøjagtighed** – Svar er altid understøttet af de nyeste sårbarhedsdata.  
* **Hastighed** – Genereringstid går fra timer til minutter, så salgsprocessen forbliver konkurrencedygtig.  
* **Compliance‑tillid** – Valideringsreglerne sikrer, at hver påstand lever op til interne politikker og eksterne reguleringer som [SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2), [ISO 27001](https://www.iso.org/standard/27001), [GDPR](https://gdpr.eu/) og [CCPA](https://oag.ca.gov/privacy/ccpa).

For sikkerhedsteams, der kæmper med en stigende mængde leverandør‑spørgeskemaer, udgør den beskrevne integration et praktisk skridt fra en manuel flaskehals til en strategisk fordel.

---

## Se også  

- [NIST SP 800‑53 Revision 5 – Security and Privacy Controls for Federal Information Systems](https://csrc.nist.gov/publications/detail/sp/800-53/rev-5/final)  
- [OpenCTI – Open‑source Cyber Threat Intelligence Platform](https://www.opencti.io/)