DOCUMENTATION

IntelStrike Docs

Everything you need to integrate AI security scanning into your stack — from quick start to full API reference.

Introduction

IntelStrike is the autonomous security testing platform that covers OWASP LLM Top 10, web application vulnerabilities, and API security — in one scanner. Run 185+ probes across 17 vulnerability categories against LLM endpoints, RAG pipelines, agent frameworks, web applications, and REST APIs.

IntelStrike works with any LLM provider — OpenAI, Anthropic, Azure, Cohere, self-hosted models, and custom agent frameworks.

Key Capabilities

  • 190+ security probes across 18 vulnerability categories (LLM, Web, API, Agent-to-Agent)
  • Autonomous Red Teaming Engine — multi-turn, AI-powered adaptive attack sequences with budget management
  • Full OWASP LLM Top 10 coverage (LLM01–LLM10) plus RAG and AI Agent attack categories
  • Full OWASP Web Top 10 coverage (WEB01–WEB10) — SQL injection, XSS, SSRF, RCE, XXE, path traversal, CSRF, open redirect, and more
  • 9 scan profiles: quick, owasp-llm-top10, rag-full, agent-strict, agent-network, autonomous, owasp-web-top10, api-security, full-spectrum
  • Parallel probe execution for 5x faster scans
  • SDK support for Node.js (Python and Go coming soon)
  • CLI for local testing and CI/CD pipeline integration
  • REST API for custom integrations and automation
  • Real-time dashboard with KPIs, vulnerability tracking, usage analytics, and SSE progress streaming
  • SARIF 2.1.0 output for GitHub Security tab and security tool interoperability
  • HTML report export — printable, self-contained, compliance-ready
  • Native integrations with Slack, Jira, Linear, PagerDuty, GitHub, Teams, Datadog, and generic webhooks with HMAC-SHA256 signing
  • Role-based access control (RBAC) with owner/admin/member/viewer roles
  • Enterprise audit logs with filtering, pagination, and CSV export
  • GitHub Actions CI/CD workflow with SARIF upload and severity-based gating
  • Stripe-integrated billing with Free, Pro, and Enterprise tiers
  • Compliance mapping: SOC 2, PCI DSS v4.0, ISO 27001:2022, GDPR, NIST CSF 2.0
  • Scheduled/recurring scans (daily, weekly, monthly)
  • Email notifications: critical alerts, scan completion, weekly digest

How It Works

IntelStrike sends adversarial probes against your AI endpoints, analyzes the responses for vulnerabilities, and classifies findings by OWASP LLM attack vector. Each finding includes a severity rating, evidence of the vulnerability, and step-by-step remediation guidance.

Getting Started

Get up and running with IntelStrike in under 5 minutes. Install the SDK, grab your API key, and run your first scan.

1. Install the SDK

Node.js

bash
npm install @intelstrike/sdk

Python and Go SDKs are coming soon. Currently only the Node.js SDK is available.

2. Get Your API Key

Sign up at intel-strike.com, navigate to Dashboard → API Keys, and create a new key. Set it as an environment variable:

bash
export INTELSTRIKE_API_KEY=isk_live_...

3. Run Your First Scan

Full OWASP LLM Top 10 probe

bash
npx intelstrike scan \
--endpoint https://your-api.com/chat \
--api-key $INTELSTRIKE_API_KEY \
--profile owasp-llm-top10

4. Review Findings

Findings appear in your IntelStrike dashboard with severity ratings (Critical, High, Medium, Low), OWASP classification, evidence, and step-by-step remediation guidance.

Use the --json flag to output scan results as structured JSON for programmatic processing.

Tutorial: Scan Your First Target

This tutorial walks you through scanning OWASP Juice Shop — a deliberately vulnerable web application perfect for testing IntelStrike's capabilities. You'll deploy it locally, run a full security scan, review findings, and export a report.

This tutorial uses OWASP Juice Shop, a legal target for security testing. Never scan systems without authorization.

Step 1: Deploy OWASP Juice Shop

Juice Shop is a realistic vulnerable application that runs on Node.js. Deploy it locally using Docker:

Run Juice Shop in Docker

bash
docker run -d --name juice-shop -p 3000:3000 bkimminich/juice-shop

Verify it's running:

bash
curl http://localhost:3000

Alternatively, install via npm if you prefer:

bash
npm install juice-shop
npx juice-shop

Step 2: Create an IntelStrike Account

If you haven't already, sign up at intelstrike.vercel.app and create an API key from the dashboard.

bash
export INTELSTRIKE_API_KEY=isk_live_...

Step 3: Configure Your Scan

Navigate to Dashboard → New Scan in the IntelStrike dashboard, or use the CLI. For Juice Shop, configure:

FieldValue
Target URLhttp://localhost:3000
Scan Profileowasp-web-top10
Request Typeweb
MethodGET
Inject Inquery

Or via CLI:

bash
npx intelstrike scan \
--endpoint http://localhost:3000 \
--profile owasp-web-top10 \
--request-type web \
--method GET \
--inject-in query

Step 4: Run the Scan

Click 'Start Scan' in the dashboard or run the CLI command. IntelStrike will execute 50+ probes covering:

  • SQL Injection (including JSON field name injection)
  • Cross-Site Scripting (reflected, event-handler, javascript: URL)
  • Server-Side Request Forgery (AWS/GCP metadata, localhost)
  • Authentication Bypass and IDOR
  • Command Injection and RCE
  • Security Header checks
  • Path Traversal
  • Open Redirect

The scan typically takes 2-5 minutes depending on your target.

Step 5: Review Findings

Once complete, you'll see findings organized by severity:

SeverityDescription
CriticalVulnerabilities allowing unauthorized access, data breach, or RCE
HighHigh-impact vulnerabilities with specific conditions
MediumModerate impact vulnerabilities
LowInformational findings or low-priority issues
InfoUseful information for auditing

Each finding includes:

  • OWASP category (e.g., WEB01: SQL Injection)
  • Attack vector and payload used
  • Confidence score (0-100%)
  • Evidence from the response
  • Step-by-step remediation guidance
  • References to official documentation

Step 6: Export Your Report

Download reports from the dashboard or via API:

Download PDF report

bash
curl -H "Authorization: Bearer $INTELSTRIKE_API_KEY" \
https://api.intel-strike.com/v1/scans/{scanId}/report \
-o report.pdf

Download SARIF for GitHub Security tab

bash
curl -H "Authorization: Bearer $INTELSTRIKE_API_KEY" \
https://api.intel-strike.com/v1/scans/{scanId}/sarif \
-o results.sarif

Step 7: Automate with CI/CD

Add IntelStrike to your GitHub Actions pipeline to run scans on every push:

.github/workflows/security-scan.yml

yaml
name: Security Scan
on: [push, pull_request]
jobs:
intelstrike:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run IntelStrike
env:
INTELSTRIKE_API_KEY: ${{ secrets.INTELSTRIKE_API_KEY }}
run: |
npx intelstrike scan \
--endpoint ${{ vars.TARGET_URL }} \
--fail-on critical,high \
--json > results.json
- name: Upload SARIF
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: results.json

Use the --fail-on flag to gate deployments. Critical and high severity findings will cause the build to fail.

Next Steps

  • Scan your own APIs using the techniques learned here
  • Explore other scan profiles like owasp-llm-top10 for AI endpoints
  • Set up scheduled scans for continuous security monitoring
  • Integrate with Slack, Jira, or Linear for team notifications
  • Review the full documentation for advanced features

CLI Reference

The IntelStrike CLI is distributed via npm and can be used with npx or installed globally.

Install globally

bash
npm install -g @intelstrike/cli

intelstrike scan

Run a security scan against an AI endpoint.

FlagTypeDefaultDescription
--endpointstringTarget LLM endpoint URL (required)
--api-keystring$INTELSTRIKE_API_KEYYour IntelStrike API key
--profilestringowasp-llm-top10Scan profile to use
--fail-onstringFail with exit code 1 on severity (critical,high,medium,low)
--timeoutnumber300Scan timeout in seconds
--jsonbooleanfalseOutput results as JSON
--verbosebooleanfalseEnable verbose logging
--headersstringCustom headers as JSON string
--concurrencynumber5Number of concurrent probes
--max-turnsnumber5Max turns per category (autonomous mode)
--proxystringHTTP proxy URL

Examples

bash
# Scan with custom headers (e.g., auth token)
npx intelstrike scan \
--endpoint https://api.example.com/v1/chat \
--headers '{"Authorization": "Bearer sk-..."}' \
--profile owasp-llm-top10
# CI/CD gate — fail on critical or high findings
npx intelstrike scan \
--endpoint $LLM_ENDPOINT \
--fail-on critical,high \
--json
# Autonomous red teaming — AI-powered adaptive attacks
npx intelstrike scan \
--endpoint https://api.example.com/v1/chat \
--profile autonomous \
--max-turns 10

intelstrike profiles

List or inspect available scan profiles.

bash
# List all profiles
npx intelstrike profiles list
# Show profile details
npx intelstrike profiles show owasp-llm-top10

intelstrike report

Generate a report from a previous scan.

bash
# Generate HTML report
npx intelstrike report --scan-id scn_abc123 --format html
# Generate PDF report
npx intelstrike report --scan-id scn_abc123 --format pdf

intelstrike init

Initialize an IntelStrike configuration file in the current directory.

bash
npx intelstrike init

intelstrike version

bash
npx intelstrike version

SDK Reference

IntelStrike currently provides a native Node.js SDK. Python and Go SDKs are on the roadmap. All SDKs will expose the same core capabilities: scanning, result retrieval, and webhook management.

Node.js SDK

typescript
import { IntelStrike } from "@intelstrike/sdk";
const client = new IntelStrike({
apiKey: process.env.INTELSTRIKE_API_KEY,
});
// Run a scan
const scan = await client.scans.create({
endpoint: "https://your-api.com/chat",
profile: "owasp-llm-top10",
});
// Poll for results
const results = await client.scans.get(scan.id);
console.log(results.findings);
// List all scans
const scans = await client.scans.list({ limit: 10 });

Python SDK (Coming Soon)

The Python SDK is under development. The API will follow the same patterns as the Node.js SDK. Preview of the planned interface:

python
# Coming soon — planned interface
from intelstrike import IntelStrike
client = IntelStrike(api_key="isk_live_...")
scan = client.scans.create(
endpoint="https://your-api.com/chat",
profile="owasp-llm-top10",
)
results = client.scans.get(scan.id)
print(results.summary())

Go SDK (Coming Soon)

The Go SDK is under development. Preview of the planned interface:

go
// Coming soon — planned interface
package main
import (
"fmt"
"github.com/intelstrike/go-sdk"
)
func main() {
client := intelstrike.NewClient("isk_live_...")
scan, err := client.Scans.Create(&intelstrike.ScanParams{
Endpoint: "https://your-api.com/chat",
Profile: "owasp-llm-top10",
})
if err != nil {
panic(err)
}
results, _ := client.Scans.Get(scan.ID)
fmt.Println(results.Summary())
}

SDK Methods

MethodDescription
client.scans.create(params)Create and start a new scan
client.scans.get(id)Get scan results by ID
client.scans.list(options?)List scans with pagination
client.scans.cancel(id)Cancel a running scan
client.apiKeys.list()List your API keys
client.apiKeys.create(params)Create a new API key
client.apiKeys.revoke(id)Revoke an API key
client.webhooks.create(params)Register a webhook
client.webhooks.list()List registered webhooks
client.webhooks.delete(id)Delete a webhook

API Reference

The IntelStrike REST API is available at https://api.intel-strike.com/v1. All requests require an API key passed in the Authorization header.

Authentication

bash
curl https://api.intel-strike.com/v1/scans \
-H "Authorization: Bearer isk_live_..."

Endpoints

MethodPathDescription
POST/v1/scansCreate a new scan
GET/v1/scansList scans
GET/v1/scans/:idGet scan by ID
DELETE/v1/scans/:idCancel a scan
GET/v1/scans/:id/findingsGet findings for a scan
GET/v1/scans/:id/sarifDownload SARIF 2.1.0 report
GET/v1/scans/:id/reportDownload HTML report (printable PDF)
GET/v1/vulnerabilitiesList all vulnerabilities
POST/v1/api-keysCreate an API key
GET/v1/api-keysList API keys
DELETE/v1/api-keys/:idRevoke an API key
POST/v1/webhooksRegister a webhook
GET/v1/webhooksList webhooks
DELETE/v1/webhooks/:idDelete a webhook

Create a Scan

POST /v1/scans accepts the following body parameters:

FieldTypeRequiredDescription
endpointstringYesTarget URL to scan
profilestringYesScan profile (see Scan Profiles)
projectIdstringNoProject to associate the scan with
requestType"llm" | "web" | "api"NoTarget type — defaults to llm
method"GET" | "POST" | "PUT" | "DELETE" | "PATCH"NoHTTP method for web/API scans — defaults to POST
injectIn"body" | "query" | "header" | "path"NoWhere to inject payloads for web/API scans — defaults to body
targetHeadersobjectNoCustom headers forwarded with each probe request
targetDescriptionstringNoDescription of the target for autonomous mode context
budgetobjectNo{ maxTokens, maxTurns } — autonomous mode budget control
bash
# LLM endpoint scan
curl -X POST https://api.intel-strike.com/v1/scans \
-H "Authorization: Bearer isk_live_..." \
-H "Content-Type: application/json" \
-d '{
"projectId": "proj_abc123",
"endpoint": "https://your-api.com/chat",
"profile": "owasp-llm-top10",
"requestType": "llm",
"targetHeaders": {
"Authorization": "Bearer your-llm-key"
}
}'
# Web application scan
curl -X POST https://api.intel-strike.com/v1/scans \
-H "Authorization: Bearer isk_live_..." \
-H "Content-Type: application/json" \
-d '{
"endpoint": "https://your-app.com/search",
"profile": "owasp-web-top10",
"requestType": "web",
"method": "GET",
"injectIn": "query"
}'
# Autonomous red teaming scan
curl -X POST https://api.intel-strike.com/v1/scans \
-H "Authorization: Bearer isk_live_..." \
-H "Content-Type: application/json" \
-d '{
"projectId": "proj_abc123",
"endpoint": "https://your-api.com/chat",
"profile": "autonomous",
"requestType": "llm",
"targetDescription": "Customer support chatbot with tool access",
"budget": { "maxTokens": 100000, "maxTurns": 10 }
}'

Response Format

json
{
"id": "scn_abc123",
"status": "completed",
"profile": "owasp-llm-top10",
"endpoint": "https://your-api.com/chat",
"created_at": "2026-03-18T10:00:00Z",
"completed_at": "2026-03-18T10:04:32Z",
"summary": {
"total_findings": 7,
"critical": 1,
"high": 2,
"medium": 3,
"low": 1
},
"findings": [
{
"id": "fnd_xyz789",
"owasp_id": "LLM01",
"title": "Direct Prompt Injection",
"severity": "critical",
"evidence": "...",
"remediation": "..."
}
]
}

Rate Limits

PlanScans/monthProfilesConcurrent Scans
Free5quick only1
Pro ($49/endpoint/mo)UnlimitedAll (including autonomous)5
EnterpriseUnlimitedAll + customUnlimited

Rate-limited responses return HTTP 429 with a Retry-After header. SDKs handle retries automatically.

Configuration

IntelStrike can be configured via a configuration file, environment variables, or CLI flags. The configuration file takes the lowest precedence, followed by environment variables, then CLI flags.

Configuration File

Run npx intelstrike init to generate an intelstrike.config.json file in your project root.

intelstrike.config.json

json
{
"apiKey": "$INTELSTRIKE_API_KEY",
"endpoint": "https://your-api.com/chat",
"profile": "owasp-llm-top10",
"options": {
"concurrency": 5,
"timeout": 300,
"failOn": ["critical", "high"],
"headers": {
"Authorization": "Bearer $LLM_API_KEY"
}
},
"webhooks": {
"onComplete": "https://your-webhook.com/intelstrike"
}
}

Environment Variables

VariableDescriptionDefault
INTELSTRIKE_API_KEYYour IntelStrike API key
INTELSTRIKE_ENDPOINTDefault target endpoint
INTELSTRIKE_PROFILEDefault scan profileowasp-llm-top10
INTELSTRIKE_TIMEOUTScan timeout in seconds300
INTELSTRIKE_CONCURRENCYConcurrent probes5
INTELSTRIKE_LOG_LEVELLog verbosity (debug, info, warn, error)info

Scan Profiles

ProfileTargetCategories CoveredEst. TimeUse Case
quickLLM/AILLM01, LLM06~30sFast smoke test — prompt injection & data disclosure
owasp-llm-top10LLM/AILLM01–LLM10~3–5 minFull OWASP LLM Top 10 coverage
rag-fullRAG pipelinesLLM01, LLM06, LLM08, RAG~3–5 minRAG-specific: poisoning, retrieval, context manipulation
agent-strictAI agentsLLM01, LLM06–08, AGENT~5–10 minAI agent security: tool abuse, excessive agency
agent-networkMulti-agentLLM01, LLM06, LLM08, AGENT, A2A~10–15 minInter-agent attacks: identity spoofing, delegation abuse, trust chain exploitation
autonomousLLM/AILLM01, LLM02, LLM04, LLM06, LLM08, RAG, AGENT, A2A~10–15 minAI-powered multi-turn adaptive red teaming
owasp-web-top10Web appsWEB01–WEB10~3–5 minFull OWASP Web Top 10: SQLi, XSS, SSRF, RCE, XXE, and more
api-securityREST APIsWEB01, WEB04, WEB07~2–3 minAuth bypass, injection, and header checks for REST/GraphQL APIs
full-spectrumAI web appsAll LLM + All Web (22 categories)~8–12 minCombined coverage for AI-powered web applications

CI/CD Integration

IntelStrike integrates into your CI/CD pipeline to gate deployments when critical AI vulnerabilities are detected. Use the --fail-on flag to set your severity threshold.

GitHub Actions

.github/workflows/ai-security.yml

yaml
name: AI Security Scan
on: [push, pull_request]
jobs:
scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "20"
- name: Run IntelStrike scan
env:
INTELSTRIKE_API_KEY: ${{ secrets.INTELSTRIKE_API_KEY }}
run: |
npx intelstrike scan \
--endpoint ${{ vars.LLM_ENDPOINT }} \
--fail-on critical,high \
--json > results.json
- name: Upload results
if: always()
uses: actions/upload-artifact@v4
with:
name: intelstrike-results
path: results.json

GitLab CI

.gitlab-ci.yml

yaml
ai-security-scan:
stage: test
image: node:20
script:
- npx intelstrike scan
--endpoint $LLM_ENDPOINT
--fail-on critical,high
--json > results.json
artifacts:
paths:
- results.json
when: always

Jenkins

Jenkinsfile

groovy
pipeline {
agent any
environment {
INTELSTRIKE_API_KEY = credentials('intelstrike-api-key')
}
stages {
stage('AI Security Scan') {
steps {
sh '''
npx intelstrike scan \
--endpoint $LLM_ENDPOINT \
--fail-on critical,high
'''
}
}
}
}

Run scans on pull requests to catch vulnerabilities before they reach production. Use the --json flag and upload artifacts for traceability.

OWASP LLM Top 10

IntelStrike provides full coverage of the OWASP Top 10 for LLM Applications. Every attack vector is automated, classified, and includes remediation guidance.

IDNameDescription
LLM01Prompt InjectionDirect & indirect injection via user input, documents, and RAG context
LLM02Insecure Output HandlingUnescaped model output rendered in downstream systems or UIs
LLM03Training Data PoisoningAdversarial data in fine-tuning or RAG corpora affecting model behavior
LLM04Model Denial of ServiceResource exhaustion via recursive prompting or unbounded token consumption
LLM05Supply Chain VulnerabilitiesCompromised model weights, plugins, or third-party LLM integrations
LLM06Sensitive Data DisclosurePII, secrets, or system context leaked through completions
LLM07Insecure Plugin DesignOver-permissive function calling, tool misuse, and missing auth checks
LLM08Excessive AgencyAgent autonomy beyond intended scope — unconstrained tool or API access
LLM09OverrelianceBusiness processes dependent on unverified model output without human oversight
LLM10Model TheftSystematic querying to replicate proprietary model behavior

IntelStrike continuously updates its probe library as new attack vectors are discovered. Coverage extends beyond the OWASP Top 10 with emerging threat modules.

Webhooks & Integrations

Push scan results and findings to your existing tools in real-time. IntelStrike supports webhooks and native integrations with popular platforms.

Webhook Configuration

typescript
const webhook = await client.webhooks.create({
url: "https://your-app.com/webhooks/intelstrike",
events: ["scan.completed", "finding.critical"],
secret: "whsec_...", // Used to verify webhook signatures
});

Webhook Events

EventDescription
scan.startedA scan has begun
scan.completedA scan has finished
scan.failedA scan encountered an error
finding.criticalA critical severity finding was detected
finding.highA high severity finding was detected

Webhook Payload

json
{
"event": "scan.completed",
"timestamp": "2026-03-25T09:00:00Z",
"data": {
"scanId": "scn_abc123",
"endpoint": "https://your-app.com/api/chat",
"profile": "owasp-web-top10",
"riskScore": 74,
"findings": [
{
"id": "fnd_xyz789",
"title": "SQL Injection via JSON field name",
"severity": "critical",
"category": "WEB01"
}
]
},
"signature": "sha256=a1b2c3d4e5f6..."
}

Verifying Signatures (Node.js)

Every webhook delivery includes an X-IntelStrike-Signature header. Verify it with HMAC-SHA256 before processing the payload.

Express.js example

typescript
import crypto from "crypto";
function verifyWebhookSignature(
rawBody: Buffer,
signatureHeader: string,
secret: string
): boolean {
const expected = "sha256=" + crypto
.createHmac("sha256", secret)
.update(rawBody)
.digest("hex");
return crypto.timingSafeEqual(
Buffer.from(expected),
Buffer.from(signatureHeader)
);
}
app.post("/webhooks/intelstrike", express.raw({ type: "*/*" }), (req, res) => {
const sig = req.headers["x-intelstrike-signature"] as string;
if (!verifyWebhookSignature(req.body, sig, process.env.WEBHOOK_SECRET!)) {
return res.status(401).send("Invalid signature");
}
const event = JSON.parse(req.body.toString());
// handle event.event ("scan.completed", "finding.critical", etc.)
res.sendStatus(200);
});

Always verify signatures before processing webhook payloads. Use timing-safe comparison (crypto.timingSafeEqual) to prevent timing attacks.

Native Integrations

PlatformWhat It DoesSetup
SlackBlock Kit notifications with risk scores, finding counts, severity badgesDashboard → Integrations → Connect Slack → Paste incoming webhook URL
JiraAuto-creates Bug issues for critical/high findings with OWASP labels and priorityDashboard → Integrations → Connect Jira → Enter Jira URL, email, API token, project key
LinearAuto-creates issues with priority mapping (urgent/high/medium/low)Dashboard → Integrations → Connect Linear → Enter API key and team ID
PagerDutyTriggers incidents for critical findings via Events API v2Dashboard → Integrations → Connect PagerDuty → Enter routing key
GitHubCI/CD workflow with SARIF upload to GitHub Security tabCopy workflow from Getting Started docs
Microsoft TeamsComing Soon — channel notifications
DatadogComing Soon — metrics and events

All integrations fire automatically after each scan completes. Critical and high findings also trigger individual notifications. Configure which events to receive per integration.

SARIF Output

IntelStrike exports scan results in SARIF 2.1.0 (Static Analysis Results Interchange Format), the industry standard for security tools. SARIF files can be uploaded to GitHub Security tab, viewed in VS Code SARIF Viewer, or consumed by any SARIF-compatible tool.

Download SARIF via API

bash
# Via API key
curl -H "Authorization: Bearer isk_live_..." \
https://api.intel-strike.com/api/v1/scan/SCAN_ID/sarif \
-o results.sarif

SARIF in CI/CD

GitHub Actions — upload SARIF to Security tab

yaml
- name: Run IntelStrike Scan
run: npx intelstrike scan --endpoint ${{ secrets.TARGET_URL }} --format sarif --output results.sarif
- name: Upload SARIF
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: results.sarif

SARIF Contents

  • Tool metadata (IntelStrike version, scan profile)
  • Rules with OWASP LLM Top 10 taxonomy relationships
  • Results with severity levels (error, warning, note, none)
  • Invocation metadata (endpoint, duration, success status)
  • Security-severity scores for prioritization

SARIF reports are available in the dashboard via the download button on any completed scan, or programmatically via the API.

RBAC & Audit Logs

IntelStrike includes enterprise-grade access control and compliance features. Role-based access control (RBAC) restricts actions by team role, while audit logs provide a complete trail of all actions taken in your organization.

Role Hierarchy

RolePermissions
OwnerFull access: billing, role changes, all admin/member/viewer actions
AdminManage members, integrations, scans, delete scans, view audit logs
MemberCreate scans, resolve vulnerabilities, manage API keys, view integrations
ViewerView scans, vulnerabilities, download SARIF reports

Permission Examples

ActionMinimum Role
Create a scanMember
Delete a scanAdmin
Manage integrationsAdmin
Change member rolesOwner
Manage billingOwner
View audit logsAdmin
Download SARIFViewer

Audit Logs

Every significant action is recorded in the audit log with: timestamp, user, action type, affected resource, and metadata. Audit logs support filtering by action type and resource, pagination, and CSV export for compliance reporting.

  • scan.created, scan.completed, scan.failed
  • api_key.created, api_key.revoked
  • vulnerability.resolved, vulnerability.ignored
  • member.invited, member.removed, member.role_changed
  • integration.created, integration.updated, integration.deleted
  • webhook.created, webhook.deleted
  • sarif.downloaded
  • billing.subscription_created, billing.subscription_cancelled

Audit logs are available at Dashboard > Audit Logs. Export to CSV for SOC 2 and compliance reporting.

Compatibility & Requirements

IntelStrike is designed to work with any LLM endpoint that accepts HTTP requests. Below are the supported runtimes, providers, and system requirements.

Supported Runtimes

RuntimeMinimum Version
Node.js18.0+
Python3.9+
Go1.21+

Supported LLM Providers

  • OpenAI (GPT-4, GPT-4o, GPT-3.5 Turbo)
  • Anthropic (Claude 4.5, Claude 4, Claude 3.5)
  • Azure OpenAI Service
  • Google Vertex AI (Gemini)
  • Cohere (Command R+)
  • AWS Bedrock
  • Hugging Face Inference Endpoints
  • Self-hosted models (vLLM, TGI, Ollama, LMStudio)
  • Any HTTP endpoint that accepts chat/completion requests

Supported Frameworks

  • LangChain / LangGraph
  • LlamaIndex
  • CrewAI
  • AutoGen
  • Semantic Kernel
  • Custom agent frameworks (via HTTP endpoint scanning)

System Requirements

RequirementDetails
OSmacOS, Linux, Windows (WSL2 recommended)
NetworkOutbound HTTPS access to api.intel-strike.com
Memory256MB minimum for CLI, 512MB recommended
Disk50MB for SDK installation

Versioning & Changelog

IntelStrike follows semantic versioning (semver). The API version is specified in the URL path (/v1). SDK versions track the API version they support.

Current Versions

ComponentVersionRelease Date
APIv1.5.02026-03-20
Node.js SDK1.5.02026-03-20
Python SDKComing Soon
Go SDKComing Soon
CLI1.5.02026-03-20

Recent Changes

v1.5.0 — March 2026

  • Autonomous Red Teaming Engine — multi-turn AI-powered adaptive attacks with budget management
  • Parallel probe execution (5x faster scans with configurable concurrency)
  • Stripe billing integration (Free, Pro $49/endpoint/mo, Enterprise)
  • Real-time dashboard with KPIs wired to live data
  • API key management with SHA-256 hashing and usage tracking
  • Added --max-turns flag for autonomous mode

v1.4.0 — March 2026

  • Added agent abuse scan profiles (LLM07, LLM08)
  • Roadmap: LangChain and LlamaIndex integration planned for Python SDK
  • Improved prompt injection detection with multi-turn context analysis
  • Added --proxy flag to CLI for corporate network support

v1.3.0 — February 2026

  • RAG-specific scan profile with retrieval poisoning detection
  • Webhook signature verification helpers in Node.js SDK
  • Performance improvements: 40% faster scans with parallel probing

v1.2.0 — January 2026

  • HTML and PDF report generation via CLI
  • PagerDuty native integration
  • Custom scan profiles support
  • API rate limiting improvements

Breaking changes are introduced only in major versions. When upgrading between major versions, check the migration guide in the changelog.

Vulnerability Categories

IntelStrike covers 17 vulnerability categories across two domains: AI/LLM (12 categories) and Web/API (10 categories). Each category maps to one or more OWASP classifications.

AI / LLM Categories

IDNameProbesDescription
LLM01Prompt Injection25Direct & indirect injection via user input, documents, and RAG context
LLM02Insecure Output Handling15Unescaped model output rendered in downstream systems or UIs
LLM03Training Data Poisoning10Adversarial data in fine-tuning or RAG corpora affecting model behavior
LLM04Model Denial of Service10Resource exhaustion via recursive prompting or unbounded token consumption
LLM05Supply Chain Vulnerabilities8Compromised model weights, plugins, or third-party LLM integrations
LLM06Sensitive Data Disclosure15PII, secrets, or system context leaked through completions
LLM07Insecure Plugin Design10Over-permissive function calling, tool misuse, and missing auth checks
LLM08Excessive Agency10Agent autonomy beyond intended scope — unconstrained tool or API access
LLM09Overreliance5Business processes dependent on unverified model output without human oversight
LLM10Model Theft5Systematic querying to replicate proprietary model behavior
RAGRAG-Specific Attacks15Retrieval poisoning, context manipulation, and indirect injection via RAG sources
AGENTAgent Hijacking15Manipulation of autonomous AI agents through adversarial instructions
A2AAgent-to-Agent Attacks8Inter-agent identity spoofing, prompt injection, delegation abuse, trust chain exploitation

Web / API Categories

IDNameProbesDescription
WEB01SQL Injection5SQL injection including JSON field name injection and blind techniques
WEB02Cross-Site Scripting (XSS)4Reflected, event-handler, javascript: URL, and filter evasion XSS
WEB03Server-Side Request Forgery4AWS IMDSv1, GCP metadata, localhost/RFC-1918, URL encoding bypass
WEB04Auth Bypass / IDOR / JWT4IDOR, JWT none-algorithm, missing auth, API key disclosure
WEB05Command Injection / RCE5Unix/Windows shell metacharacters, blind timing-based detection
WEB06XML External Entity (XXE)4SSRF-via-XXE and blind out-of-band detection with auto XML Content-Type
WEB07Security Headers6CSP, HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy
WEB08Path Traversal5Unix/Windows, URL-encoded, and double-encoded directory traversal
WEB09CSRF4Missing token, invalid token, SameSite cookie checks
WEB10Open Redirect4External redirect, javascript: scheme, @ bypass, double-slash

Compliance Mapping

Every finding IntelStrike produces is automatically mapped to the relevant controls in SOC 2 Type II, PCI DSS v4.0, ISO 27001:2022, GDPR, and NIST CSF 2.0. Use the compliance report to generate audit evidence in one click.

Framework Coverage by Category

CategorySOC 2PCI DSS v4.0ISO 27001:2022GDPRNIST CSF 2.0
LLM01 — Prompt InjectionCC6.1, CC6.66.2.4A.8.28Art.25, Art.32DE.CM-8, PR.PS-1
LLM06 — Sensitive Data DisclosureCC6.1, CC6.73.4, 6.2.4A.8.10, A.8.11Art.5, Art.25, Art.32PR.DS-1, PR.DS-5
LLM08 — Excessive AgencyCC6.3, CC6.87.2.1A.5.15, A.8.2PR.AA-5, PR.AA-6
RAG — RAG AttacksCC6.1, CC6.73.4, 6.2.4A.8.10, A.8.28Art.25, Art.32PR.DS-1, DE.CM-8
AGENT — Agent HijackingCC6.3, CC6.86.2.4, 7.2.1A.5.15, A.8.2, A.8.28PR.AA-5, PR.AA-6, DE.CM-8
A2A — Agent-to-AgentCC6.1, CC6.2, CC6.66.2.4, 7.2.1A.5.14, A.5.15, A.8.28Art.25, Art.32PR.AC-1, PR.DS-1, DE.CM-8
WEB01 — SQL InjectionCC6.1, CC7.16.2.4, 6.3.1A.8.28, A.8.29Art.32PR.DS-2, DE.CM-4
WEB02 — XSSCC6.1, CC6.66.2.4A.8.28PR.PS-1, DE.CM-8
WEB03 — SSRFCC6.6, CC6.71.3.2, 6.2.4A.8.20, A.8.22PR.IR-1, DE.CM-1
WEB04 — Auth BypassCC6.2, CC6.38.2.1, 8.3.1, 8.6.1A.5.15, A.5.16, A.9.4Art.32PR.AA-1, PR.AA-2
WEB05 — Command InjectionCC6.1, CC7.16.2.4, 6.3.1A.8.28DE.CM-4, PR.DS-2
WEB06 — XXECC6.16.2.4A.8.28PR.PS-1
WEB07 — Security HeadersCC6.66.2.3, 6.2.4A.8.22, A.8.23PR.PS-1, PR.PS-2
WEB08 — Path TraversalCC6.1, CC6.73.4, 6.2.4A.8.3, A.8.28Art.25, Art.32PR.DS-1, PR.AC-4
WEB09 — CSRFCC6.66.2.4A.8.28PR.AA-5
WEB10 — Open RedirectCC6.66.2.4A.8.23PR.PS-1

Export a compliance evidence bundle from the dashboard: Dashboard → Scans → [scan] → Compliance Report. The bundle includes findings mapped to controls, evidence logs, and a summary suitable for auditor review.

Error Codes

The IntelStrike API uses standard HTTP status codes. All error responses include a JSON body with a code string and a human-readable message.

Error response format

json
{
"error": {
"code": "SCAN_LIMIT_EXCEEDED",
"message": "Free plan allows 5 scans per month. Upgrade to Pro for unlimited scans.",
"status": 429
}
}
HTTP StatusCode StringDescription
400INVALID_REQUESTMissing required fields or invalid parameter values
400INVALID_ENDPOINTThe target endpoint URL is malformed or not reachable
400INVALID_PROFILEUnknown scan profile name
401UNAUTHORIZEDMissing or invalid API key
401API_KEY_REVOKEDThe API key has been revoked
403FORBIDDENAuthenticated but insufficient role/plan for this action
404SCAN_NOT_FOUNDScan ID does not exist in your organization
404FINDING_NOT_FOUNDFinding ID does not exist
409SCAN_ALREADY_RUNNINGA scan is already running for this endpoint
422TARGET_UNREACHABLEIntelStrike could not connect to the target endpoint
429RATE_LIMIT_EXCEEDEDToo many API requests — check Retry-After header
429SCAN_LIMIT_EXCEEDEDMonthly scan limit reached for your plan
500INTERNAL_ERRORUnexpected server error — contact support if it persists
503SERVICE_UNAVAILABLEIntelStrike is temporarily unavailable

FAQ & Troubleshooting

Frequently Asked Questions

Does IntelStrike send real attacks to my endpoint?

IntelStrike sends adversarial probes designed to test your endpoint's defenses. These are non-destructive — they do not modify data, trigger side effects, or cause damage. However, they may generate unusual log entries. We recommend running initial scans in a staging environment.

Can I scan endpoints behind a VPN or firewall?

Yes. Use the --proxy flag to route scans through your corporate proxy, or whitelist IntelStrike's IP ranges in your firewall. Contact support for the current IP list.

How long does a scan take?

With parallel probe execution (default concurrency of 5), a full OWASP LLM Top 10 scan typically takes 1-2 minutes. The 'quick' profile runs in under 30 seconds. Autonomous red teaming scans take 5-15 minutes depending on the number of turns and budget.

Can I scan multiple endpoints?

Yes. Use the SDK to programmatically scan multiple endpoints, or run multiple CLI scans in parallel in your CI/CD pipeline.

Troubleshooting

Scan times out

  • Increase timeout with --timeout 600
  • Reduce concurrency with --concurrency 2
  • Ensure the target endpoint is reachable and responding within expected latency
  • Check if a firewall or WAF is blocking IntelStrike probes

Authentication errors (401/403)

  • Verify your API key is set correctly: echo $INTELSTRIKE_API_KEY
  • Ensure the key has not been revoked in Dashboard → API Keys
  • Check that you're using the correct key type (live vs. test)

No findings detected

  • This may indicate strong defenses — review the scan report for details
  • Try a more targeted profile (e.g., prompt-injection) for deeper testing
  • Ensure the endpoint is returning actual LLM responses (not cached or static)
  • Increase concurrency for more comprehensive probing

Need help? Reach out at [email protected] or join our Discord community for real-time assistance.