# OWASP LLM Top 10 (2025) — Azure-tiltak for LLM04/06/08/09

**Last updated:** 2026-06 | Verified: MCP 2026-06-18
**Status:** Referanse (OWASP 2025 + Azure-tiltak)
**Category:** AI Security Engineering — Threat Modeling & Controls

---

## Formål

SKILL.md-mappingen mot **OWASP Top 10 for LLM Applications 2025** har dedikert referansedekning for LLM01/02/03/05/07 og for LLM10 (via rate-limit/kostnadsfiler). Denne filen fyller de fire gjenstående kategoriene — **LLM04, LLM06, LLM08, LLM09** — med OWASP-definisjon og konkrete, verifiserte Azure/Microsoft-tiltak.

> **Kilde-forbehold (verifisert 2026-06-18):** OWASP-listens eksistens og LLM04-definisjonen er hentet direkte fra `genai.owasp.org` (HTTP 200). De individuelle risikosidene for LLM06/08/09 returnerte 404 under innhenting; definisjonene er kryssverifisert mot flere sekundærkilder som siterer OWASP 2025-dokumentet. Azure-tiltakene er grounded i Microsoft Learn (lenker per tiltak).

---

## LLM04 — Data and Model Poisoning

**OWASP 2025:** «Data poisoning occurs when pre-training, fine-tuning, or embedding data is manipulated to introduce vulnerabilities, backdoors, or biases.» Integritetsangrep på treningsdata — direkte injeksjon, bakdører med trigger, indirekte kontaminering via brukerinteraksjon, og supply chain-risiko fra delte modell-repositories. Kilde: [LLM04 — genai.owasp.org](https://genai.owasp.org/llmrisk/llm04-data-and-model-poisoning/).

| Azure/Microsoft-tiltak | Mekanisme |
|------------------------|-----------|
| **Azure ML model registry + provenance** | Sentralisert opprinnelse/verifikasjonsstatus. Azure Policy *«ML Deployments should only use approved Registry Models»* kan settes til **Deny** for å blokkere ikke-godkjente modeller. |
| **Kodesignering for treningskode** | Azure Well-Architected krever signert kode i ML compute — sikrer at treningskode er fra betrodd kilde. |
| **Hash-verifisering + adversarial scanning** | Valider modellintegritet og test mot adversarial input før godkjenning. |
| **Microsoft Purview data lineage + DSPM for AI** | Lineage-sporing og Data Security Posture Management for treningsdata-risiko. |
| **Dataversjonering (Git/Azure DevOps)** | Versjonskontroll av grounding-data → rollback ved uventet modelloppførsel. |
| **Defender for Cloud AI threat protection** | Kontinuerlig deteksjon av modellmanipulasjon (se `defender-threat-protection-ai-services.md`). |

Kilder: [Azure AI security best practices](https://learn.microsoft.com/azure/security/fundamentals/ai-security-best-practices) · [MCSB AI-1: approved models](https://learn.microsoft.com/security/benchmark/azure/mcsb-v2-artificial-intelligence-security) · [Well-Architected: training data lineage](https://learn.microsoft.com/azure/well-architected/ai/training-data-design).

---

## LLM06 — Excessive Agency

**OWASP 2025:** «Excessive Agency is the vulnerability that enables damaging actions to be performed in response to unexpected, ambiguous or manipulated outputs from an LLM.» Oppstår når agenten gis mer kapabilitet, tillatelse eller autonomi enn nødvendig — forsterket i agent-arkitekturer der modellen dynamisk velger verktøy. Kilde: OWASP 2025 (kryssverifisert; OWASP-side 404 ved innhenting).

| Azure/Microsoft-tiltak | Mekanisme |
|------------------------|-----------|
| **Microsoft Entra Agent ID** | Hver agent får egen identitet med scoped OAuth 2.0-tillatelser; Entra blokkerer høyprivilegerte roller. GA. |
| **Agent Identity Blueprints + Conditional Access** | Håndhev CA-policyer per blueprint; deaktivering av blueprint deaktiverer alle tilhørende agenter umiddelbart. |
| **Copilot Studio DLP + granulære connector-scopes** | DLP i Power Platform Admin Center; agenten gis kun de connector-operasjonene den faktisk bruker (least-privilege i praksis). |
| **Human-in-the-loop** | Agent Framework `approval_mode: always_require`; Copilot Studio skriver aldri til Dataverse uten brukergodkjenning. |
| **Least-privilege RBAC** | Built-in roller på prosjekt-/workspace-nivå; scoped, kortlevde tokens for agent-funksjoner. |
| **Content Safety Task Adherence** | Detekterer feiljustert/utilsiktet verktøybruk relativt til brukerintensjon. |

Kilder: [Entra Agent ID](https://learn.microsoft.com/entra/agent-id/what-is-microsoft-entra-agent-id) · [Authorization in Entra Agent ID](https://learn.microsoft.com/entra/agent-id/authorization-agent-id) · [Copilot Studio DLP](https://learn.microsoft.com/microsoft-copilot-studio/admin-data-loss-prevention) · [Autonomous agents — best practices](https://learn.microsoft.com/microsoft-copilot-studio/guidance/autonomous-agents).

---

## LLM08 — Vector and Embedding Weaknesses

**OWASP 2025:** Sikkerhetsrisiko i vektordatabaser og embeddings — forgiftede embeddings, cross-tenant-lekkasje, embedding inversion (rekonstruksjon av sensitive data fra vektorer), tillatelsesomgåelse i RAG-pipelines. Kilde: OWASP 2025 (kryssverifisert; OWASP-side 404 ved innhenting).

| Azure/Microsoft-tiltak | Mekanisme | Status |
|------------------------|-----------|--------|
| **Document-level access control (security trimming)** | Permission-metadata (ACL/RBAC/Purview-labels) lagres i indeksen og håndheves ved query-tid via Entra-token (`x-ms-query-source-authorization`). | GA (filters) / Preview (ACL fra ADLS Gen2, API `2026-05-01-preview`) |
| **Managed Identity for Azure AI Search** | Outbound-auth uten hardkodede nøkler. | GA |
| **Private Endpoints** | Deaktiverer public network access; trafikk over Microsoft backbone. | GA |
| **Multi-tenant-isolasjon** | Index-per-tenant / service-per-tenant / hybrid; sterkest separasjon = dedikert service per tenant. | GA |
| **Purview sensitivity labels på indeks** | Label-basert tilgangskontroll oppdaget under indeksering. | Preview |

Kilder: [Document-level access control](https://learn.microsoft.com/azure/search/search-document-level-access-overview) · [Search security best practices](https://learn.microsoft.com/azure/search/search-security-best-practices) · [Multitenant SaaS + AI Search](https://learn.microsoft.com/azure/search/search-modeling-multitenant-saas-applications) · [Private endpoint for AI Search](https://learn.microsoft.com/azure/search/service-create-private-endpoint).

---

## LLM09 — Misinformation

**OWASP 2025:** Risiko for at LLM-er genererer eller sprer troverdig fremstilt feilinformasjon — primært via hallusinasjon og fabrikerte siteringer. Kilde: OWASP 2025 (kryssverifisert; OWASP-side 404 ved innhenting).

| Azure/Microsoft-tiltak | Mekanisme | Status |
|------------------------|-----------|--------|
| **Groundedness Detection (Content Safety)** | Detekterer om svar er forankret i kildedokumenter; Reasoning-mode gir rotårsak; Correction korrigerer ungrounded tekst automatisk. | Public preview |
| **RAG-grounding med Azure AI Search** | Forankrer svar i organisasjonens dokumenter fremfor parametrisk kunnskap. | GA |
| **Citation/reference-mønster** | Strukturerte `citations`-objekter (title/filepath/url/content) → superscript-lenker til kilde i UI. | GA |
| **Copilot Studio — Grounding in Trusted Data** | Svar forankret i datakilder brukeren har tilgang til. | GA |
| **AI Foundry Evaluation — groundedness/completeness** | Måler grounding i end-to-end LLM-evaluering. | GA |
| **Prompt Shields** | Blokkerer indirekte prompt injection som kan styre svar mot feilinformasjon. | GA |

Kilder: [Groundedness detection](https://learn.microsoft.com/azure/ai-services/content-safety/concepts/groundedness) · [Content Safety overview](https://learn.microsoft.com/azure/ai-services/content-safety/overview) · [Web app citations](https://learn.microsoft.com/azure/foundry/openai/how-to/use-web-app) · [Copilot Studio safety components](https://learn.microsoft.com/microsoft-copilot-studio/system-service-card-copilot-studio).

---

## Lagdelt dekning

OWASP-kategoriene dekkes best ved å kombinere **preventive** kontroller (Content Safety, Entra Agent ID, AI Search-sikkerhet) med **detektive** (Defender for AI Services, se `defender-threat-protection-ai-services.md`) og **prosess** (STRIDE-/ATLAS-trusselmodellering, se `ai-threat-modeling-stride.md`). For norsk offentlig sektor: merk at Defender for AI Services *ikke* er tilgjengelig i Azure Government — preventive kontroller og egen logg-basert deteksjon blir da viktigere.

---

## Kilder og verifisering

| Kilde | Konfidens | Merknad |
|-------|-----------|---------|
| OWASP Top 10 for LLM Applications 2025 (liste) | **Verified** | [genai.owasp.org](https://genai.owasp.org/llm-top-10/) (HTTP 200) |
| LLM04-definisjon | **Verified** | OWASP-domenet direkte (HTTP 200) |
| LLM06/08/09-definisjoner | **Medium** | OWASP risikosider 404 ved innhenting; kryssverifisert mot flere sekundærkilder |
| Azure-tiltak (alle kategorier) | **Verified** (MCP 2026-06-18) | Microsoft Learn, lenker per tiltak over |
