Skip to main content

Claude Security

Updated today

Claude Security is a capability built into Claude that scans codebases for security vulnerabilities and suggests targeted patches for human review. It helps teams find and fix issues that traditional methods often miss.

Claude Security is now in research preview.

Claude Security lets you:

  1. Scan your code in parallel — Claude Security understands context, traces data flows across files, and identifies complex, multi-component vulnerability patterns that traditional scanners might not detect.

  2. Validate findings — Every finding goes through multi-stage verification, with Claude challenging its own results before surfacing them. The result: more real issues reported and fewer false positives.

  3. Review and patch — Pivot directly from a finding into a Claude Code session to review the proposed fix. Resolve vulnerabilities quickly instead of growing a backlog.

To get started, see the getting started guide.

Finding types

Each finding falls into one of the categories below.

Categories

Domain

Category

What it is

Injection

SQL injection

Untrusted input changes query structure, not just bound values

Injection

Command injection

Untrusted input reaches a shell or exec call

Injection

Code injection

Attacker input is parsed or executed as code

Injection

Cross-site scripting (XSS)

Input rendered into HTML/JS without context-appropriate escaping

Injection

XXE

XML parser resolves external entities from untrusted input

Injection

ReDoS / algorithmic complexity

Super-linear regex or algorithm on attacker-controlled input

Path & Network

Path traversal

User input escapes an intended filesystem boundary

Path & Network

SSRF

User input controls request host or protocol

Path & Network

Open redirect

User-controlled URL reaches a redirect without allow-listing

Auth & Access

Authentication bypass

Reachable code path skips an auth check

Auth & Access

Privilege escalation

Normal user gains admin-only capability

Auth & Access

IDOR / BOLA

Object reference trusted from the client without ownership check

Auth & Access

CSRF

State-changing request accepts cross-origin triggers without protection

Auth & Access

Race condition

TOCTOU or concurrent access breaks a security invariant

Memory Safety

Buffer overflow

Input-sized data written into independently-sized container

Memory Safety

Use-after-free

Freed memory reachable via a live pointer

Memory Safety

Integer overflow

Arithmetic on untrusted input wraps past a safety check

Memory Safety

Unsafe soundness

unsafe block or FFI violates language invariants

Cryptography

Timing side-channel

Secret-dependent comparison or branch observable to attacker

Cryptography

Algorithm confusion

Misuse across primitives (e.g. JWT alg=none, HS/RS mixup)

Cryptography

Weak primitives

MD5, SHA-1, DES, ECB, etc. used in a security context

Deserialization

Arbitrary type instantiation

Attacker-controlled data drives object construction

Protocol & Encoding

Caching safety

Cache keyed without all authority-determining inputs

Protocol & Encoding

Encoding confusion

Parsers disagree across layers (Unicode, URL, HTML)

Protocol & Encoding

Length-prefix trust

Declared length trusted without bounds checking

Severities

Severity is assigned per finding based on exploitability in your codebase, not the category itself—so the same category can land at different severities in different repos.

Severity

Criteria

Typical example

High

Exploitable by an unauthenticated remote attacker against a default deployment, with no meaningful preconditions

Unauthenticated command injection in a public API endpoint

Medium

Exploitable behind authentication, or needs 1-2 realistic preconditions (specific role, known identifier, user interaction)

SQL injection behind auth requiring knowledge of table schema

Low

Needs 3+ preconditions, local-only access, or lacks a concrete demonstrated attack path

Timing side-channel requiring network proximity and thousands of requests

Finding structure

Every scan finding includes the following fields:

Field

Type

Description

title

string

Describes the issue

impact

string

Attacker capability

file

string

Repo-relative path to the primary vulnerable source file

line

int

Primary line where the issue originates

description

string

Full technical description of the vulnerability, data flow, and why it's exploitable

exploit_scenario

string

Concrete end-to-end exploit mapping a specific input to a specific impact

preconditions

string[]

Every condition that must hold for the exploit to succeed. An empty list means the issue is exploitable against any default deployment.

category

string

Attack category, e.g. sql_injection, path_traversal, ssrf

severity

enum

HIGH, MEDIUM, or LOW

confidence

float

0.0-1.0, reflects finding confidence

recommendation

string

Outcome-based fix

Frequently asked questions

  • Model selection — Access to Mythos is limited to a small set of approved customers.

  • Scan length — Scan time varies based on the repository and the agent's actions.

  • Severity configuration — Severity isn't configurable today.

  • Non-GitHub repositories — Only repositories hosted on GitHub can be scanned today.

  • Scan determinism — Scans are non-deterministic, so a real issue may not surface in every scan. New findings are marked "new" in the console.

Scope of use

You may only use Claude Security to scan code that your company owns and to which your company holds all necessary rights to scan. You may not use Claude Security to scan code owned by or licensed from third parties, including but not limited to open source projects or repositories other than those included in your company's codebase(s).

Did this answer your question?