Skip to content
Citadel

Find the security holesin your appbefore anyone else.

Built your app with Claude Code, Codex, Cursor or Lovable? Citadel audits its code against OWASP and CWE: exposed secrets, vulnerable dependencies, injections, misconfigurations. You get the list of fixes to make, in priority order, then we check that they work.

Standards
OWASP Top 10, ASVS and CWE
Analysis
your code (static) and your live site (dynamic), with our own rules
Your code
stays yours

Coding with AI?
Citadel is for you.

You build with AI but don’t code

Claude Code or Codex writes your app. You have no way to check what it produces.

What you get

Every flaw explained in plain words, with the exact prompt to paste into your assistant to fix it.

You are a junior developer

You can code, but you don’t know yet how to audit an app’s security.

What you get

The exact line, the OWASP and CWE reference, why it is dangerous and the expected fix.

You are a senior developer or an agency

You know the risks, but reviewing all the code before every release takes hours.

What you get

Deduplicated results, cited sources (CVE, GHSA, originating rule) and a report you can hand to your clients.

What a coding assistant
often lets through.

Coding with AI saves you a huge amount of time. But an assistant’s first goal is to make your app work, not to protect it. Here are the eight families of flaws it regularly produces, and that we look for in every app.

A01 · API1 · API5

Access control

  • Another account’s objects readable by their ID (IDOR, BOLA)
  • Admin functions callable by a regular user
  • “role” or “plan” field editable from a form
A07 · API2

Authentication and sessions

  • JWTs accepted without checking the algorithm, or signed with a weak secret
  • No limit on sign-in attempts
  • Predictable or never-expiring reset links
A03 · CWE-89 · CWE-79

Injections

  • Raw SQL built by string concatenation
  • HTML inserted without escaping (stored or reflected XSS)
  • System commands and eval driven by user input
A02 · CWE-798 · CWE-532

Secrets and data

  • API keys in client code or in Git history
  • Passwords hashed with MD5 or SHA-1
  • Tokens and personal data written to logs
A05 · A10

Configuration

  • Debug mode and source maps live in production
  • CORS open to every origin with cookies
  • Server that fetches any URL (SSRF to 169.254.169.254)
A04 · CWE-434 · CWE-22

File uploads

  • Executable file accepted under an image name
  • SVG carrying JavaScript served from your domain
  • File name with ../ escaping the intended folder
A06 · A08 · API6

Dependencies and payments

  • npm or Composer packages with published CVEs
  • Payment webhooks accepted without a signature
  • Price or discount decided by the browser
LLM01 · LLM05 · API4

AI features

  • Prompt injection that triggers an agent’s tools
  • Model output displayed or executed unchecked
  • AI routes with no limit, billed on every call

What are you launching?
Here’s what could happen.

These flaws are not theoretical. Pick your type of app: each scenario starts from a real, documented flaw and shows how it turns into an incident.

Incident scenarioBack office, CRM, ERP

What if one customer could see
your entire customer list?

They change /customers/1042 to /customers/1041 in the address bar. It works. They write a ten-line script. By morning, your full file, with phone numbers, addresses and revenue, is for sale on a forum.

The flaw

  • CWE-639
  • OWASP API1
  • A01

What Citadel checks

  • Ownership check on every routesoon
  • Exposed sequential IDs
  • CSV exports reachable without a role checksoon
Check my app before it happens

Free security check · 2 minutes

Is your app
exposed right now?

Eight questions on the flaws we find most often in apps built with AI. Your result shows up right away, no sign-up needed.

“I don’t know” counts as a risk: what nobody has checked is exactly what an attacker exploits.

  • Secret keys and data access
  • Database, payments and AI routes
  • Injections, accounts and dependencies

For every flaw,
what to do.

  • Where: the file, line and code snippet involved.

  • Severity: scored with CVSS when the flaw is referenced, otherwise by its real impact on your app.

  • Confidence: how certain the detection is, so you fix the sure things first.

  • References: OWASP, CWE, and the CVE or GHSA ID when there is one.

  • Fix: the expected fix, and the prompt to paste into Claude Code, Codex or Cursor.

  • Verification: a new analysis confirms the flaw is gone.

Sample finding

CVSS 9.8
CriticalHigh confidenceCWE-89 · OWASP A03:2021

SQL injection in the order search

app/api/orders/search/route.ts · lines 14 to 16 · detected by code analysis

13 const email = searchParams.get("email");
14 const rows = await prisma.$queryRawUnsafe(
15   `SELECT * FROM orders WHERE email = '${email}'`
16 );

The risk

With ' OR '1'='1 as the email, the query returns every order of every customer. A variant can modify or drop the table.

The fix

await prisma.$queryRaw`
  SELECT * FROM orders
  WHERE email = ${email}`;

The query becomes parameterised: user input is never interpreted as SQL again.

Fix prompt for your assistant

In app/api/orders/search/route.ts, replace prisma.$queryRawUnsafe with the parameterised prisma.$queryRaw form using a template literal. Check that no other $queryRawUnsafe or $executeRawUnsafe call receives data from the request, and add a test that sends ' OR '1'='1 as the email.

46 checks,
tailored to your stack.

Flaws don’t hide in the same places in a Next.js, Laravel or Supabase app. Our rules target the mistakes specific to each technology, in your code (static analysis) and on your live site (dynamic analysis). 33 checks are live today.

  • OWASP Top 10 (2021)
  • OWASP API Security Top 10 (2023)
  • OWASP Top 10 for LLM Applications (2025)
  • OWASP ASVS
  • CWE Top 25
  • CVSS
  • NVD · GHSA · OSV
  • SARIF export
CheckReferenceCheck typeStatus
Next.js version vulnerable to middleware bypass (CVE-2025-29927)A06 · CVEVulnerable dependenciesLive
Secret exposed in a NEXT_PUBLIC_ variableCWE-200 · A02Secrets + Citadel rulesLive
dangerouslySetInnerHTML fed with external dataCWE-79 · A03Code analysisLive
Redirect built from URL parametersCWE-601 · A01Code analysisLive
images.remotePatterns open to every domainCWE-918 · A10Citadel rulesLive
Source maps published in productionCWE-540 · A05Citadel rulesLive
Server Actions and route handlers without a session checkCWE-862 · A01Citadel rulesComing soon

Outside the automated scope: your app’s own business logic, manual penetration testing and your hosting configuration. When your app needs them, the report tells you.

How an analysis
works.

AI wrote your code: it shouldn’t be the one judging it. Detection relies on well-known open source tools and on rules hand-written by our seasoned developers.

  1. You connect Citadel to your GitHub repoTwo clicks, read-only access to that repository only. No GitHub? A ZIP archive works too.
  2. We identify your stackpackage.json, composer.json, Supabase config: we pick the rules that fit your project.
  3. The analysis runs in isolationOur checks go through all the code: leftover secrets, vulnerable dependencies, code flaws, from config files to database migrations.
  4. Every result is verified and rankedDuplicates removed, severity and confidence assigned, OWASP and CWE reference added.
  5. You fix, we re-checkYou follow the report, then a new analysis confirms every flaw is fixed.
citadel · sample analysis
  • Isolated container, no internet
  • Code deleted after the analysis
  • Secrets masked in the report
AA

Arthur A.

Founder of Citadel

Who is behind
Citadel.

Citadel was founded by Arthur A., a developer with years of experience, an information systems security expert and a hands-on agentic coder. He builds with AI agents every day, and has seen up close how AI can be as harmful as it is powerful.

In minutes, an agent ships a feature that works, and all too often leaves behind an admin route with no access check, a payment webhook accepted without a signature or a hand-built SQL query. The app, meanwhile, works perfectly.

What about people outside the trade? Those launching their idea with Claude Code or Codex without ever having written a line of code, those just starting out? How would they avoid these disasters?

Arthur A., founder

Citadel is a collective’s answer: developers, AI engineers and cybersecurity specialists brought together by that question. Every check, every rule and every explanation is written and reviewed by the team, based on the OWASP standards. Automation runs that work on every analysis. It never decides for you.

  • Software engineering
  • Artificial intelligence
  • Cybersecurity

The Citadel team

Cheaper
than a breach.

During the pilot, your first full analysis is free. The prices below will apply afterwards.

Pro

Recommended

Apps in production

$25 / month

  • 10 projects
  • Automatic analysis on every push
  • Full report and prompts
  • New CVE alerts
Start with the free analysis

* Within fair use. Enterprise plans and human review: on quote.

Your
questions.

Is it an AI that analyses my code?

No. Detection relies on deterministic analysis engines and our own rules: the same code gives the same result on every run. An AI can then draft a proposed fix, which you approve before anything changes.

What exactly do you check?

Eight families of flaws, from access control to AI features, plus checks specific to Next.js, Node.js, Laravel and Supabase. The checks table gives, for each one, its OWASP and CWE reference, the tool that detects it and whether it is already live.

I can’t code. Will I be able to fix things?

Yes. Every flaw is explained in plain words and comes with the prompt to paste into Claude Code, Codex or Cursor. A new analysis then confirms the fix works.

What happens to my code?

It is analysed in an isolated container with no internet access, then deleted when the analysis ends. Only the results are kept, with secrets masked. You can delete your projects and reports at any time.

Which technologies are supported?

Next.js, React, Node.js, Laravel and Supabase. Secrets and dependencies are analysed whatever the project’s language.

Does this replace a human security audit?

No. Citadel covers the flaws that can be detected automatically. For an app handling health, financial or highly sensitive data, a human audit is still recommended, and the report tells you so.

Get your app
audited.

The pilot is open to a limited number of apps. Your first full analysis is free.

  • Full report with OWASP and CWE references
  • Ready-to-paste fix prompts
  • A new analysis after your fixes
  • A call with our team to walk through every result

30 seconds · no commitment

Book my free analysis

Your stack (pick as many as apply)

We only use your address to organise your analysis. It is never sold or shared. Privacy

One flaw a month,
and how to fix it.

The Citadel letter: a common security mistake in apps built with AI, a code example, and the prompt to fix it. One email a month, unsubscribe in one click.

We only use your address to send the letter. It is never sold or shared. Privacy

Get my app audited