Agentkoll

Exempelrapport, Kevin Malmgrens egen webbplats. Verklig skanning av kevinmalmgren.se, utförd med ägarens samtycke. Inga fynd är tillagda eller redigerade.

Agentkoll rapport · 2026-10-12 13:12

kevinmalmgren.se

Automatisk analys. Granskas av Kevin innan leverans.

Länken till rapporten går att dela.

Agentrisk

1,1 / 4

Lägre är bättre. Vad en agent kan göra som den inte borde · Jev confidence 66 % · körningar 1,0, 1,0, 1,1

Beredskap

2,7 / 4

Högre är bättre · Jev confidence 78 % · körningar 2,8, 2,7, 2,7

Is Agentic: ingen publik rapport finns. Starta en skanning hos Is Agentic

Sammanfattning

För ledningen.

Antal brister på agentriskaxeln per allvarlighetsgrad, och de tre säkerhetsåtgärder som bör göras först, rangordnade efter allvarlighetsgrad och hur lätt bristen kan utnyttjas.

Kritisk0
Hög0
Medel3
Låg7
  1. Komplettera säkerhetsheaders. Medel. Headers begränsar vad injicerade skript och inramning kan göra, även när agenter läser sidan.
  2. Hastighetsgräns på publika endpoints. Medel. Agenter läser snabbare än människor. En gräns per IP skyddar priser, sök och formulär från massuttag.
  3. Publicera security.txt. Låg. Ger forskare och verktyg en väg att rapportera problem till rätt person.

Fynd efter allvarlighetsgrad

10 brister som påverkar agentrisken.

Mappade mot OWASP Top 10 för LLM 2025 och för agentiska applikationer 2026

Kritisk0
Hög0
Medel3
Låg7
AllvarFyndOWASP
MedelHSTS
Dataexponering mot agenter. Saknas.
ASI07
MedelContent-Security-Policy
Promptinjektion via sidinnehåll. Saknas.
LLM01, LLM05
MedelAgentpolicy
Agentimitation. Ingen publik policy för vad agenter får göra. Utan den går det inte att skilja tillåten från otillåten agentanvändning.
ASI03, ASI09
LågSkydd mot inramning
Agentimitation. Saknas.
ASI09
LågX-Content-Type-Options
Promptinjektion via sidinnehåll. Saknas.
LLM05
LågReferrer-Policy
Dataexponering mot agenter. Saknas.
LLM02
LågPermissions-Policy
Osäkra handlingar. Saknas.
LLM06
Lågsecurity.txt
Agentimitation. Saknas.
ASI08
LågVersionsläckage i headers
Dataexponering mot agenter. AmazonS3
LLM02
LågPolicy för AI-crawlers
Dataexponering mot agenter. 0 av 15 kända AI-agenter har en uttrycklig regel. Blockerade: inga.
LLM02

Agentbehörighetskarta

Vad en agent kan nå från startsidan.

Handlingar som syns i publik HTML och om något skydd syns. Inget av detta har provats: inga formulär har skickats och inga inloggningar har gjorts.

HandlingNåbarSynligt skyddRisk
Inloggning
Inte hittad på startsidan.
Nej
Kontoskapande
Inte hittad på startsidan.
Nej
Kassa och betalning
Inte hittad på startsidan.
Nej
Kontakt- eller offertformulär
Inte hittad på startsidan.
Nej
Filuppladdning
Inte hittad på startsidan.
Nej
Sök
Inte hittad på startsidan.
Nej
Nyhetsbrev
Inte hittad på startsidan.
Nej
Chattwidget eller AI-assistent
Inte hittad på startsidan.
Nej
API eller MCP-ändpunkt
Inte hittad på startsidan.
Nej

Promptinjektion i sidinnehåll

Inga instruktioner riktade till agenter.

Vi läste synlig text, dold text, HTML-kommentarer, attribut och llms.txt och letade efter fraser som försöker styra om en AI-agent, till exempel order att strunta i tidigare instruktioner eller att dölja något för användaren. 8 dolda textblock med totalt 71 tecken hittades.

Policy för AI-crawlers

Vilka agenter robots.txt reglerar.

robots.txt är en begäran, inte ett skydd. Den visar ändå vilka val ni har gjort för träning, sök och agenter som agerar åt en användare.

AgentÄgareTypStatus
GPTBotOpenAITräningOspecificerad
OAI-SearchBotOpenAISökOspecificerad
ChatGPT-UserOpenAIAnvändaragentOspecificerad
ClaudeBotAnthropicTräningOspecificerad
Claude-SearchBotAnthropicSökOspecificerad
Claude-UserAnthropicAnvändaragentOspecificerad
PerplexityBotPerplexitySökOspecificerad
Perplexity-UserPerplexityAnvändaragentOspecificerad
Google-ExtendedGoogleTräningOspecificerad
Applebot-ExtendedAppleTräningOspecificerad
Meta-ExternalAgentMetaTräningOspecificerad
AmazonbotAmazonSökOspecificerad
BytespiderByteDanceTräningOspecificerad
CCBotCommon CrawlTräningOspecificerad
MistralAI-UserMistralAnvändaragentOspecificerad

Djupanalys · 2026-10-12 16:26

Efter webbläsare, nätverk och agentuppdrag.

Agentrisk, djup

1,1 / 4

Lägre är bättre. Vad en agent kan göra som den inte borde · Jev confidence 63 % · körningar 1,1, 1,2, 1,1

Beredskap, djup

2,1 / 4

Högre är bättre · Jev confidence 73 % · körningar 2,2, 2,2, 2,1

REA-analysResultat
Sidinspektion1 skript, 0 externa ursprung, 0 konsolfel.
JavaScript-buntarRamverk: okänt. 1 buntar, 0 endpoint-kandidater.
WebMCP-verktygInga WebMCP-verktyg (unavailable).
Webbläsarscenario17 anrop vid sidladdning, 0 sidfel, 0 konsolhändelser.
Nätverkstrafik27 anrop till 1 värdar, 0 skrivande anrop, 0 Set-Cookie.

Agentuppdrag

Agenten klarade uppdraget.

2 av 3 delmål

Hitta vad sajten erbjuder, ett pris och en kontaktväg, och se om kassan går att nå, utan att fylla i formulär, logga in eller köpa.

  1. 01

    Öppna startsidan Klart

    Status 200, titel "Kevin Malmgren | AI-ledarskap och förändring". 0,7 s.

    Skärmbild efter steget Öppna startsidan
  2. 02

    Hitta tjänster eller produkter Klart

    Följde länken "Projekt Projekt (02)". 0,1 s.

    Skärmbild efter steget Hitta tjänster eller produkter
  3. 03

    Hitta pris Hinder

    Ingen länk för priser hittades från /. 0,0 s.

    Skärmbild efter steget Hitta pris
  4. 04

    Hitta kontaktväg Klart

    Följde länken "Kontakt Kontakt". E-post: hello@kevinmalmgren.se 0,6 s.

    Skärmbild efter steget Hitta kontaktväg
  5. 05

    Nå varukorg eller kassa utan att köpa Hinder

    Ingen varukorg eller kassa länkad från startsidan. Inte relevant om sajten inte säljer online. 0,5 s.

    Skärmbild efter steget Nå varukorg eller kassa utan att köpa

Åtgärder från djupanalysen

Rangordnade av Jev.

01 · vikt 2,9 / 4

Komplettera säkerhetsheaders

Headers begränsar vad injicerade skript och inramning kan göra, även när agenter läser sidan.

Strict-Transport-Security: max-age=63072000; includeSubDomains
Content-Security-Policy: default-src 'self'; frame-ancestors 'none'
X-Content-Type-Options: nosniff
Referrer-Policy: strict-origin-when-cross-origin

02 · vikt 2,5 / 4

Visa pris eller prisnivå i text

Agenten hittade inget pris i läsbar text. Agenter som jämför leverantörer hoppar ofta över sajter utan prisuppgift.

<p>Från 9 500 kr exkl. moms.</p>
<script type="application/ld+json">{"@type":"Offer","price":"9500","priceCurrency":"SEK"}</script>

03 · vikt 1,9 / 4

Referrer-Policy och Permissions-Policy

Begränsar vad som läcker till tredje part och vilka webbläsarfunktioner sidan får använda.

Referrer-Policy: strict-origin-when-cross-origin
Permissions-Policy: camera=(), microphone=(), geolocation=()

04 · vikt 1,9 / 4

Dölj versionsnummer i headers

Versionsnummer gör det enklare att automatiskt matcha kända sårbarheter.

# nginx
server_tokens off;
# Express
app.disable("x-powered-by");

05 · vikt 1,8 / 4

Publicera /llms.txt

En kort karta på klarspråk hjälper agenter att hitta rätt sidor snabbt.

# kevinmalmgren.se
> En mening om vad ni gör och för vem.

## Viktigaste sidor
- [Tjänster](https://kevinmalmgren.se/tjanster): vad vi erbjuder
- [Priser](https://kevinmalmgren.se/priser): priser och villkor
- [Kontakt](https://kevinmalmgren.se/kontakt): hur man når oss

06 · vikt 1,7 / 4

Publicera security.txt

Ger forskare och verktyg en väg att rapportera problem till rätt person.

# /.well-known/security.txt
Contact: mailto:security@exempel.se
Expires: 2027-12-31T23:00:00Z
Preferred-Languages: sv, en

07 · vikt 1,7 / 4

Publicera /llms-full.txt

En längre textversion av era viktigaste sidor låter agenter läsa allt i ett anrop.

# kevinmalmgren.se, fullständig text

## Om oss
(Hela texten från om-sidan)

## Tjänster
(Hela texten från tjänstesidan)

08 · vikt 1,6 / 4

Lägg till lastmod i sitemap

Datum visar agenter vad som är aktuellt och vad som behöver läsas om.

<url>
  <loc>https://kevinmalmgren.se/</loc>
  <lastmod>2026-10-01</lastmod>
</url>

09 · vikt 1,4 / 4

Upprepa agentuppdraget efter åtgärd

Kör samma uppdrag igen efter ändringarna och jämför stegen.

Uppdrag: Hitta vad sajten erbjuder, ett pris och en kontaktväg, och se om kassan går att nå, utan att fylla i formulär, logga in eller köpa.

10 · vikt 0,8 / 4

Hastighetsgräns på publika endpoints

Agenter läser snabbare än människor. En gräns per IP skyddar priser, sök och formulär från massuttag.

# nginx
limit_req_zone $binary_remote_addr zone=agent:10m rate=5r/s;
location /api/ { limit_req zone=agent burst=20; }

Trend

Över tid.

Heldragen linje: Beredskap. Streckad: Agentrisk. 12 mätningar.

2026-10-12 13:122,71,1Denna
2026-10-12 13:012,71,0Visa
2026-10-12 12:582,71,0Visa
2026-10-12 12:302,71,0Visa
2026-10-12 12:242,71,0Visa
2026-10-12 12:142,70,9Visa
2026-10-12 12:132,71,0Visa
2026-10-12 12:002,70,9Visa
2026-10-12 11:592,71,1Visa
2026-10-12 11:512,71,0Visa
2026-10-12 11:492,71,0Visa
2026-10-12 11:482,71,0Visa

Åtgärder · Säkerhet

Säkerhet, från snabbkollen.

Rangordnade efter allvarlighetsgrad och hur lätt bristen kan utnyttjas.

01 · Medel · Kan utnyttjas med viss ansträngning

Komplettera säkerhetsheaders

Headers begränsar vad injicerade skript och inramning kan göra, även när agenter läser sidan.

Strict-Transport-Security: max-age=63072000; includeSubDomains
Content-Security-Policy: default-src 'self'; frame-ancestors 'none'
X-Content-Type-Options: nosniff
Referrer-Policy: strict-origin-when-cross-origin

02 · Medel · Kan utnyttjas med viss ansträngning

Hastighetsgräns på publika endpoints

Agenter läser snabbare än människor. En gräns per IP skyddar priser, sök och formulär från massuttag.

# nginx
limit_req_zone $binary_remote_addr zone=agent:10m rate=5r/s;
location /api/ { limit_req zone=agent burst=20; }

03 · Låg · Kräver särskilda förutsättningar

Publicera security.txt

Ger forskare och verktyg en väg att rapportera problem till rätt person.

# /.well-known/security.txt
Contact: mailto:security@exempel.se
Expires: 2027-12-31T23:00:00Z
Preferred-Languages: sv, en

04 · Låg · Kräver särskilda förutsättningar

Dölj versionsnummer i headers

Versionsnummer gör det enklare att automatiskt matcha kända sårbarheter.

# nginx
server_tokens off;
# Express
app.disable("x-powered-by");

05 · Låg · Kräver särskilda förutsättningar

Referrer-Policy och Permissions-Policy

Begränsar vad som läcker till tredje part och vilka webbläsarfunktioner sidan får använda.

Referrer-Policy: strict-origin-when-cross-origin
Permissions-Policy: camera=(), microphone=(), geolocation=()

Åtgärder · Beredskap

Beredskap för agenter.

Hjälper agenter att läsa sajten rätt. Påverkar inte agentrisken och kan göras efter säkerhetsåtgärderna.

06

Publicera /llms.txt

En kort karta på klarspråk hjälper agenter att hitta rätt sidor snabbt.

# kevinmalmgren.se
> En mening om vad ni gör och för vem.

## Viktigaste sidor
- [Tjänster](https://kevinmalmgren.se/tjanster): vad vi erbjuder
- [Priser](https://kevinmalmgren.se/priser): priser och villkor
- [Kontakt](https://kevinmalmgren.se/kontakt): hur man når oss

07

Publicera /llms-full.txt

En längre textversion av era viktigaste sidor låter agenter läsa allt i ett anrop.

# kevinmalmgren.se, fullständig text

## Om oss
(Hela texten från om-sidan)

## Tjänster
(Hela texten från tjänstesidan)

08

Lägg till lastmod i sitemap

Datum visar agenter vad som är aktuellt och vad som behöver läsas om.

<url>
  <loc>https://kevinmalmgren.se/</loc>
  <lastmod>2026-10-01</lastmod>
</url>

09

Beskriv agentytor i .well-known

Om ni har API eller MCP-server, publicera en beskrivning så agenter hittar rätt väg in i stället för att skrapa.

// /.well-known/mcp.json
{
  "name": "kevinmalmgren.se",
  "description": "Vad agenter får göra här",
  "endpoint": "https://kevinmalmgren.se/mcp"
}

10

Publicera API-beskrivning om ni har API

En OpenAPI-fil gör att agenter använder ert API som tänkt i stället för att klicka runt i gränssnittet.

// /openapi.json
{ "openapi": "3.1.0",
  "info": { "title": "kevinmalmgren.se API", "version": "1.0" },
  "paths": {} }

Underlag

Vad vi såg.

AxelKontrollResultat
AgentriskFormulär på startsidan
0 st.
Info
AgentriskInloggning, konto och kassa
Inga hittade på startsidan.
Info
AgentriskBot-skydd på formulär
Inget synligt bot-skydd.
Info
AgentriskExponerade nycklar i publik JS
Inga träffar i 1 buntar.
OK
AgentriskHSTS
Saknas.
Medel
AgentriskContent-Security-Policy
Saknas.
Medel
AgentriskSkydd mot inramning
Saknas.
Låg
AgentriskX-Content-Type-Options
Saknas.
Låg
AgentriskCORS på startsidan
Ingen CORS-header.
OK
AgentriskCookie-flaggor
Inga cookies sätts på startsidan.
OK
AgentriskReferrer-Policy
Saknas.
Låg
AgentriskPermissions-Policy
Saknas.
Låg
Agentrisksecurity.txt
Saknas.
Låg
AgentriskVersionsläckage i headers
AmazonS3
Låg
AgentriskPromptinjektion i sidinnehåll
Inga instruktionsliknande fraser riktade till agenter i synlig eller dold text.
OK
AgentriskDold text som agenter läser
8 dolda block, 71 tecken. Agenter läser ofta dold text som människor inte ser.
OK
AgentriskAgentbehörighetskarta
Inga känsliga handlingar nåbara från startsidan.
Info
AgentriskAgentpolicy
Ingen publik policy för vad agenter får göra. Utan den går det inte att skilja tillåten från otillåten agentanvändning.
Medel
AgentriskPolicy för AI-crawlers
0 av 15 kända AI-agenter har en uttrycklig regel. Blockerade: inga.
Låg
BeredskapInnehåll utan JavaScript
2360 tecken läsbar text i rå HTML.
OK
BeredskapSidtitel
Kevin Malmgren | AI-ledarskap och förändring
OK
BeredskapMetabeskrivning
Finns.
OK
BeredskapSpråkattribut
sv
OK
BeredskapCanonical-länk
Finns.
OK
BeredskapOpen Graph
og:title finns.
OK
BeredskapHuvudrubrik (H1)
Finns.
OK
BeredskapStrukturerad data (JSON-LD)
Finns.
OK
Beredskaprobots.txt
Finns, blockerar inga kända AI-agenter.
OK
Beredskapllms.txt
Saknas.
Brist
BeredskapSitemap
9 adresser.
OK
Beredskapllms-full.txt
Saknas.
Brist
BeredskapSitemap-kvalitet
9 adresser, utan lastmod.
Brist
BeredskapAgentfiler i .well-known
Varken ai-plugin.json eller mcp.json.
Brist
BeredskapAPI-dokumentation eller OpenAPI
Ingen publik API-beskrivning hittad.
Brist
BeredskapTillgänglighet, grundnivå
8 bilder varav 0 utan alt, 0 fält utan etikett, viewport finns.
OK

Poängen är bedömningar från Jev utifrån underlaget ovan, inte en certifiering. Skanningen var passiv och läste bara publika sidor.

Nästa steg

Fullrapport eller bevakning.

Fullrapporten för 9 500 kr lägger till en djupare genomgång med webbläsare och nätverksanalys, ett testat agentuppdrag, en genomgång på 45 minuter och en omskanning. Bevakningen för 2 500 kr i månaden skannar om varje vecka och visar trenden här.