Support

Get running in about ten minutes, see exactly what happens to a security event, and find a guide for every part of the app.

Quick start

Pick the edition you installed. Each path ends with something working on your screen.

  1. Install from the Microsoft Store

    Search for K-Defender, install it, and open it from the Start menu.

  2. Subscribe, or enter a license key

    The first screen asks you to pick Monthly ($4.99) or Annual ($44.99). The Microsoft Store handles payment. Got a license key from us? Choose I have a license key, paste it, and select Activate key.

  3. Connect an AI model

    Select the gear icon at the top right to open Settings. Choose a provider, paste its key, then select Test & Load Models. Pick a model for each role, such as analysis, security and summaries. Keys are saved in the app, not in a file.

    No cloud account? Point the app at a model you host yourself, such as Ollama on your network.
  4. Let the vulnerability database finish

    On first launch the CVE database downloads once. A banner shows progress. Audits work while it runs, and dependency checks switch on when it finishes.

  5. Run your first audit

    Open Website & Security Audit, enter a URL, and select start. Report sections appear as they finish. You can leave the page and come back.

  6. Score what you found

    Open Risk Assessment, create an assessment, and add findings from your audit. The register keeps the score in step with the open items.

  1. Configure and start the stack

    You need Docker with Compose. Copy the example settings, set a long random ADMIN_TOKEN and a database password, then start everything.

    cp .env.example .env
    nano .env
    docker compose up -d --build

    The web app listens on port 5081. For real use, put it behind a reverse proxy with a TLS certificate.

  2. Turn on Microsoft sign-in

    In the Azure portal, register an app for K-Defender. In K-Defender open Settings, find Microsoft sign-in, and follow the redirect address shown there. Enter your tenant, client ID and secret, then sign in.

    Keep the break-glass token. It lets you in if sign-in is ever misconfigured. Store it somewhere safe.
  3. Map your groups

    Choose which Entra groups are Admin, and which can read or write Audit, Risk and Monitoring. People only see the pages their groups allow.

  4. Connect an event source

    Pick one to start. Defender and Entra events arrive through an Event Hub. Firewalls send syslog over UDP. Anything else can post to a webhook URL that K-Defender creates for you, tokened so only your sender can use it.

  5. Choose how loud it is

    In Log Monitor, Settings, set the minimum severity for tickets and for alerts. The defaults are medium for tickets and high for Teams.

  6. Send a test alert

    This sends a realistic fake event through the whole pipeline. Create a webhook token in Log Monitor, Settings, then run:

    curl -X POST "https://your-host/api/logs/webhook/YOUR_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"severity":"high","host":"TEST-PC","message":"Impossible travel: one account signed in from two countries nine minutes apart."}'

    Within about a minute you should see a ticket, a Teams card if you configured one, and an email digest. Close the ticket when you are done.

Watch a ticket move

One event, start to finish. Choose an example, then follow it through seven steps. It plays on its own and you can step through it yourself.

Where you tune each step

StepWhat you controlWhere
FilterMinimum severity, drop unrecognized events, exclude patternsLog Monitor, Settings
TriageWhich AI model reads events, and the category listSettings, and Log Monitor, Settings
TicketMinimum severity that opens a ticketLog Monitor, Settings
AlertTeams webhook, email recipients, alert thresholdLog Monitor, Settings

Guides

What each part of the app is for and how to use it. Open one, or search above.

Website and security audit

Audits a live website and, if you want, the source code behind it, then writes a report with findings, a vulnerability assessment and a prioritized action plan.

  1. Open Website & Security Audit and enter the address to audit.
  2. Optional: upload the project folder so the code is scanned too, and list any concerns you want the report to focus on.
  3. Start the run. The progress tape on the right shows each stage as it happens.
  4. Read the report as sections finish. Findings are rated from critical to info.
  5. Use re-run to repeat an audit, or quick-check a single section after you fix something.
  6. Export the report when you are done.
You can leave. Runs keep going when you open another page. If you close the app mid-run, the run restarts the next time you open it.
Risk assessment

Turns questions and audit findings into a scored risk register you can explain to the people who sign off.

  1. Open Risk Assessment and create an assessment from one of the templates.
  2. Answer the questionnaire. Each answer feeds a likelihood and impact score.
  3. Review the register. Inherent and residual scores stay in step with the open items behind them.
  4. To pull in an audit, open the audit, choose a finding, and add it to an existing assessment or a new one.
  5. Generate the AI executive summary for the one-page version.
AI models and Settings

K-Defender does not lock you to one AI. Each job can use a different model.

  1. Select the gear icon to open Settings.
  2. Pick a provider: Ollama (local), Ollama Cloud, Qwen Cloud, OpenRouter, or another you configure.
  3. Paste its key and select Test & Load Models. The list shows each model with its price per million tokens.
  4. Assign a model to each role: analysis, vision, security and synthesis. Risk summaries have their own role.

Use a cheaper model for bulk work and a stronger one for the security analysis and executive summaries.

CVE database

A local copy of the public CVE list. Audits use it to match your dependencies and server banners against known vulnerabilities.

  • Desktop: downloads once on first launch. Refresh it yourself with the refresh button whenever you want newer data. It never updates in the background.
  • Enterprise: syncs every hour on its own in a separate container.

Audits still run while it downloads. Only the dependency CVE checks wait.

Security Log Monitor (Enterprise)

Collects events from your security tools and turns them into tickets. It has three tabs: Tickets, Events and Settings.

Event sources

  • Azure Event Hub: for Microsoft Defender XDR, Entra and Azure. In the Defender portal, stream only alerts and behaviors. Streaming every raw event is expensive and unreadable.
  • Syslog: point a firewall at the server on UDP port 514.
  • Webhooks: create a tokened URL in Settings and post JSON to it. Fields named severity, host and message are picked up automatically.

Keeping it quiet

Set the minimum severity, choose whether to drop events the app does not recognize, and add patterns to exclude. Dropped events never reach the AI and never appear on screen.

Tickets

The AI reads each new event and either opens a ticket or adds it to one that already exists.

  • List and detail: pick a ticket on the left to read it on the right. Filter the list to find what you need.
  • Categories: the AI picks a category and subcategory from your list. Edit the list in Settings.
  • Owner: assign any user or group from your Entra directory.
  • Grouping: events with the same category, subcategory and host within 24 hours share one ticket.
  • Notes and status: every change is recorded with who made it and when.
  • From an event: open any event in the Events tab and create a ticket from it yourself.

If the AI cannot answer three times in a row, a basic ticket is still opened so nothing is lost.

Teams and email alerts

Microsoft Teams

  1. In Teams, open the Workflows app and choose a template that posts webhook alerts to a channel, or to a chat with the Workflows bot.
  2. Pick the team and channel, then save. Copy the webhook URL it gives you.
  3. In K-Defender, Log Monitor, Settings, paste it under alert webhooks and select Send test.
Do not pick your own name as the chat. Teams cannot post a card into your own self-chat and the flow fails with a "not a ChatThread" error. Use a channel.

Email digests

  1. Register an app in Entra with the Microsoft Graph Mail.Send application permission and grant admin consent.
  2. In Settings, enter the tenant, client ID and secret, the mailbox to send from, and the recipients.
  3. Select Save and send test email.

Limit that app to one mailbox group with Exchange role-based access, so a leaked secret cannot send as anyone in your company.

Sign-in and access (Enterprise)

Sign-in uses Microsoft Entra ID. What a person sees depends on their groups.

  • Admin: everything, including Settings.
  • Audit, Risk, Monitoring: each has a read group and a write group.
  • Owner list: to show every user and group in the assign menu, give the app the GroupMember.Read.All application permission and grant admin consent.

Group changes apply the next time someone signs in.

Subscription and license keys (Desktop)
  • Plans: Monthly at $4.99, Annual at $44.99. Both unlock every feature.
  • Already subscribed? On the subscribe screen choose I already subscribed. The app checks the Microsoft Store.
  • License key: choose I have a license key, paste the whole key including the KD1- at the start, and select Activate key.
  • Offline: a subscription the app saw as active in the last 7 days keeps working without a connection.
  • Cancel: manage the subscription in your Microsoft account. Your data stays on your computer.

Fixes

The problems people hit most, with the cause and the fix.

The Teams test says delivered, but nothing shows up

K-Defender only knows Teams accepted the request. Teams then runs your workflow, and that can fail on its own.

  1. In Teams, open Workflows, then your flow, then Run history.
  2. If the run failed with not a ChatThread, the destination is your own self-chat. Switch the flow to a channel.
  3. If there is no run at all, copy the webhook URL again from the flow's trigger and paste it into Settings.
The app says I need a subscription, but I subscribed

Choose I already subscribed on the subscribe screen. Make sure the Microsoft Store is signed in with the same account you bought with. The app also checks the Store at launch and every 30 minutes.

My license key says it is not valid
  • Paste the entire key, starting with KD1-, with no spaces or line breaks.
  • Keys can expire. Check the date we gave you.

Still stuck? Send us the key and we will check it.

A run says it is running after I closed the app

The app resumes unfinished runs the next time it opens, and re-checks every 30 seconds while it is open. The live progress tape only keeps what happened in the current session, so a resumed run starts a fresh tape.

Sign-in fails with an AADSTS error

AADSTS50011 means the redirect address in Entra does not exactly match the one K-Defender uses. Copy it from Settings, Microsoft sign-in, and paste it into the app registration. Match the scheme, host and path exactly, including any trailing slash.

The assign list only shows a few people

Give the K-Defender app registration the GroupMember.Read.All application permission and grant admin consent. Then reopen the ticket.

The test email fails
  • Check that Mail.Send is an application permission, not delegated, and that admin consent is granted.
  • If you limited the app with Exchange role-based access, the sending mailbox must be a direct member of the allowed group. Changes can take 30 minutes to 2 hours to apply.
Too many events, or none at all
  • Too many: in the Defender portal, stream only alerts and behaviors. In Log Monitor, Settings, raise the minimum severity and turn on dropping unrecognized events.
  • None: confirm the event hub exists and the consumer group is $Default. K-Defender reads from the newest event when it starts, so events sent while it was off are not replayed.

Contact us

Tell us what you tried and what you saw. A screenshot of the error helps most. We reply by email.

We use these details only to reply to you. See the privacy policy.