CAI Technology
Menu ☰
artemis Live in production 🇪🇺 Built in Romania
Hunt · Reveal · Strike

Offensive pentest with AI — findings you can trust.

An offensive-security platform that runs SaaS and on-premises / air-gapped from the same set of images. Five specialised agents discover, independently verify and demonstrate vulnerabilities — with a full traceability chain and with models run locally, under our control.

ARTEMIS — an offensive-security team planning in a bright office
11
audit types, dispatched by the engine
5
specialised agents in a deterministic pipeline
2-in-1
SaaS + on-premises / air-gapped from the same build
Local
self-hosted models by default — data sovereignty
The problem & why now

Security testing cannot keep up — and a whole new attack surface has appeared.

Three simultaneous pressures make the classic pentest model stop scaling.

Pentester shortage

Demand for offensive testing far outstrips the number of specialists. Manual audits are expensive, slow and hard to repeat at the frequency regulations require.

False-positive fatigue

Classic scanners flood teams with unverified alerts. The triage effort cancels out the value of automation — nobody trusts the report.

The new AI surface

LLM applications and AI-assistant configuration files (.cursorrules, mcp.json, CLAUDE.md) are a supply-chain vector that classic tools do not even see.

Regulatory context. NIS2, DORA, the CRA (Cyber Resilience Act) and the EU AI Act turn security testing from an option into a periodic, auditable obligation. Whoever offers verified and traceable results, on-premises when needed, wins the regulated market.

What ARTEMIS is

One platform, two components, two delivery models.

A control plane (API, multi-tenant, billing, reports) and a scanning-and-verification engine. Both delivered as SaaS on scanope.com or as an on-premises stack, from the same set of images.

The 11 audit types — dispatched by the engine

site

DNS, headers, deep TLS (POODLE/DROWN), WHOIS, AXFR, file recon (robots/sitemap/security.txt).

web

OWASP: nuclei, sqlmap (SQLi), reflected XSS, IDOR, JWT/RBAC bypass, rate-limit, SSRF/redirect, katana+gau crawl.

code

SAST on a git repo: gitleaks + a proprietary catalogue of 48 patterns, CycloneDX SBOM + OSV.dev, AISEC.

network

Port discovery (naabu) + CVE (nuclei) + top-20 UDP probes + SMB/NetBIOS enum.

container

Proprietary OCI v1.1 client (no external tool): manifest + layers, secret scan + SBOM + base OS.

osint

Certificate Transparency (crt.sh) + holehe across 120+ services — passive, no paid API keys.

ai_app

LLM application testing — OWASP LLM probes (subset) + an adaptive jailbreak loop.

thick_client

Analysis of desktop / thick-client applications.

compliance

Posture checks aligned with NIS2 / GDPR (headers, exposure, configuration).

iot

IP/CIDR/hostname expansion + 11 dedicated protocol probes.

full

Combined audit: site + web + network (+ optional SAST) in a single campaign.

No “silent fallback”. Each type has its own validator that checks the target's shape (URL / IP-CIDR / git repo / OCI reference) before dispatch — an unknown type is cleanly rejected, it does not accidentally become a site-audit. More than 50 scanning modules, mostly proprietary, with very few external dependencies.

The core differentiator

Findings you can trust — verified, not just detected.

This is where the real value sits. Every vulnerability goes through an independent verification process before it reaches the report, and the result comes out with a clear verdict, a confidence level and a false-positive probability — and prioritised by real exploitability. The report contains what is real, not a dump of unverified alerts.

flowchart LR
  A["Raw finding"] --> B["Independent verification"]
  B --> C{"Verdict"}
  C -->|"confirmed"| D["Report: verdict + confidence<br/>+ false-positive probability"]
  C -->|"plausible"| D
  C -->|"refuted"| E["Dropped from the report"]
  classDef n fill:#dbeafe,stroke:#3b82f6,color:#1e3a8a
  classDef good fill:#dcfce7,stroke:#16a34a,color:#14532d
  classDef bad fill:#fee2e2,stroke:#ef4444,color:#7f1d1d
  classDef dec fill:#fef9c3,stroke:#ca8a04,color:#713f12
  class A,B n
  class C dec
  class D good
  class E bad
from raw finding to verdict — what is refuted never reaches the report
Agentic pipeline

Five specialised agents, in a deterministic state machine.

Not an autonomous loop that wanders. A formal state machine that enforces legal phase transitions, with five agents that hand typed results to one another — predictable and auditable.

flowchart LR
  R["① RECON<br/>attack surface"] --> C["② CLASSIFY<br/>classified findings"]
  C --> P["③ PLAN<br/>attack plan"]
  P --> E["④ EXECUTE<br/>scope-gated"]
  E --> V["⑤ VERIFY<br/>verdicts"]
  V --> Rep["⑥ REPORT<br/>final report"]
  classDef s fill:#e0e7ff,stroke:#6366f1,color:#312e81
  class R,C,P,E,V,Rep s
typed hand-off between phases · RECON → CLASSIFY → PLAN → EXECUTE → VERIFY → REPORT

Recon

Picks the tool chain by target type (IP → naabu/httpx/nuclei; URL → httpx/katana/gau; domain → subfinder/dnsx).

Classifier

Heuristic false-positive filter first, then classification in batches — CVE mapping, CVSS scoring, deduplication.

Exploit

Builds multi-step attack chains, with execution constrained by scope + a tool allow-list.

Verifier

Independent verification of each finding — verdict, confidence level and false-positive probability.

Report

Professional report: non-technical executive summary + per-finding write-up with verdict, evidence and remediation.

Agent control

Five gates enforced at runtime, not in documentation.

The offensive loop is driven by models, but every command an agent wants to run passes through hard-stop gates at execution. Control is up-front through policy — scope, tool allow-list, dry-run — plus 2FA at the control plane.

01

Tool allow-list

The agent can only run explicitly permitted tools. Anything else is blocked at execution.

02

Scope validator

Every IP and domain is checked to be in scope before any command. Out-of-scope = blocked.

03

Anti flag-injection

Targets starting with “-” or containing shell metacharacters are rejected — they cannot hijack the command.

04

SSRF guard

Cloud metadata is blocked unconditionally; loopback/RFC1918 only opt-in for authorised internal audits. Checked at resolve and at connect (anti DNS-rebind).

05

Dry-run gated

Dry-run mode returns the command without executing it. Real execution is logged before it starts.

Model sovereignty. The default configuration runs a fully local model (internal endpoint, no external key). The provider changes from configuration only — a local model or an OpenAI-compatible service — with no changes to the platform. The client's data never leaves the infrastructure.

AI-native security

A new category: the security of AI-assistant configurations.

As teams adopt AI assistants, their configuration files become de-facto executable code — and a supply-chain vector. ARTEMIS treats them as such.

AISEC

A proprietary catalogue of 34 patterns across 4 classes — prompt-injection, MCP poisoning, repo poisoning, RAG attack — that scans AI-assistant config files (.cursorrules, CLAUDE.md, mcp.json, copilot-instructions).

ai_app · OWASP LLM

LLM application testing against a subset of the OWASP LLM Top 10 (direct/indirect injection, leakage, excessive agency). Extending toward full coverage.

Adaptive jailbreak

An adversarial loop that rewrites failed prompts and retries, on the PAIR/TAP methodology, to measure an LLM application's resistance to jailbreak.

Traceability

From scan to verdict to report — every step is demonstrable.

For regulated buyers, this is the differentiator. Every finding keeps the tool, the exact command, the raw output, the timestamp and the executor as structured evidence — after secrets have been redacted, before storage.

  • Complete evidence — command + raw output + HTTP request/response captured on each finding.
  • Verdict + confidence + false-positive probability — persisted with each finding, exposed by the API.
  • Bilingual RO/EN reports — PDF + DOCX, versioned, with a branding snapshot.
  • Controlled access — hashed download token, expires (14 days by default), download cap.
  • Administrative audit log — who, what action, old/new value, IP, user-agent, timestamp.
  • STIX export — interoperability with external SIEM / threat-intel.
Deployment models

SaaS, on-premises or air-gapped — from the same build.

A four-container stack (edge TLS → control plane → engine → database), packaged two ways. The regulated client runs ARTEMIS in its own infrastructure, fully isolated. A native agent is added that scans from inside the network over a secure connection with a per-agent token.

flowchart TB
  Q{"How sensitive<br/>is the data?"}
  Q -->|"standard"| SAAS["SaaS · scanope.com<br/>platform + AI in CAI cloud"]
  Q -->|"mixed"| HYB["Hybrid<br/>data & models at the client"]
  Q -->|"regulated / isolated"| ONP["On-premises / air-gapped<br/>full stack + local AI"]
  classDef q fill:#fef9c3,stroke:#ca8a04,color:#713f12
  classDef a fill:#dbeafe,stroke:#3b82f6,color:#1e3a8a
  class Q q
  class SAAS,HYB,ONP a
deployment topology · decide by data sensitivity
Feature SaaS Hybrid On-premises
Hosting CAI cloud (scanope.com) Client
Runs in the client's infrastructure No Partial Yes
Works without internet (air-gapped) Partial Yes
AI models Local, at CAI At client At client
Traceability + STIX export Yes Yes Yes
Evidence

We test the platform on itself.

We run ARTEMIS against our own code — SAST plus adversarial audit — and fix everything that comes out, with a quality gate: clean review, SAST and DAST before every deploy. What you see is not a prototype, but the platform that verifies our own product.

Next step

A 30-minute technical conversation.

We show you the platform live on scanope.com, discuss the right delivery model, and — if you have requirements beyond what exists — we analyse them on the spot.

Frequently asked questions

How is ARTEMIS different from a classic scanner? +
A classic scanner delivers unverified alerts and leaves you to separate the real from the noise. ARTEMIS independently verifies each finding before it reaches the report and delivers it with a verdict, confidence level and false-positive probability — so the report contains what is real, not a dump.
Do our data and scans leave our infrastructure? +
It depends on the delivery model. In on-premises and air-gapped, ARTEMIS runs entirely in the client's infrastructure, including the AI models, which are self-hosted by default. In the SaaS hosted on scanope.com, the platform runs in the CAI cloud.
What audit types does it cover? +
Eleven: site, web (OWASP), code (SAST), network, container, osint, ai_app (LLM applications), thick_client, compliance (NIS2/GDPR), iot and a combined “full” audit. Each type has its own validator that checks the target's shape before dispatch.
How do you control the offensive agents? +
Every command an agent wants to run passes through five gates enforced at execution: tool allow-list, scope validator, anti flag-injection, SSRF guard and dry-run. Control is up-front through policy (scope, allow-list, dry-run) plus 2FA at the control plane — not a human approving every step.
What does “AI-native security” mean? +
As teams adopt AI assistants, their configuration files (.cursorrules, CLAUDE.md, mcp.json) become de-facto executable code — and a supply-chain vector. ARTEMIS scans them with a proprietary catalogue of patterns (prompt-injection, MCP poisoning, repo poisoning, RAG attack) and tests LLM applications against a subset of the OWASP LLM Top 10.
Can it run on-premises or air-gapped? +
Yes. The same build ships as SaaS on scanope.com or as an on-premises stack from an installer that generates the secrets, pulls the tested images and loads the schema on first boot. Images can be mirrored to a local registry for internet-free installation.