CodeAuditAgent

Rilascia codice sicuro, più velocemente.

Il tuo ingegnere della sicurezza autonomo. Analizza il tuo codice GitHub, rileva le vulnerabilità e ottieni subito patch generate dall'IA.

acme/storefront · src/api/users.ts
Esempio
CriticaCWE-89

SQL injection nella ricerca utenti

req.query.name viene concatenato nella query, quindi qualsiasi visitatore può leggere o eliminare la tabella degli utenti.

41  export async function search(req) {- 42    const q = `SELECT * FROM users WHERE name = '${req.query.name}'`;+ 42    const q = 'SELECT * FROM users WHERE name = $1';+ 43    return db.query(q, [req.query.name]);
Patch pronta da rivedereClaude Fable 5.1
Esempio illustrativo: una SQL injection critica (CWE-89) con una patch basata su query parametrizzata.

Una revisione di sicurezza a ogni modifica, senza attese.

La profondità di un auditor senior, alla velocità della tua merge queue.

Rilevamento approfondito delle vulnerabilità

Segue i dati dalla richiesta al database per individuare injection, controlli di accesso violati, segreti esposti, SSRF e falle logiche che sfuggono ai linter basati su pattern. Ogni problema è mappato al suo CWE.

Patch generate all'istante

Ogni problema include una patch concreta scritta sul tuo codice reale, insieme all'exploit che chiude. Rivedi un diff, non una predica.

Basato su Claude Fable 5.1

Gli audit girano su Claude Fable 5.1 con le linee guida di un auditor di sicurezza senior: citare le prove, valutare la gravità in base alla reale sfruttabilità e dichiarare onestamente il livello di confidenza.

Guarda un report prima di avviarne uno.

Un punteggio di rischio che puoi difendere e problemi che puoi risolvere in pochi minuti.

acme/storefront · report di esempio · dati illustrativi

Per ogni problema: la riga esatta, la classe CWE e una patch. Clicca per espandere.

Punteggio di rischio
82
File letti
37
  • 01CriticaChiave segreta Stripe nel codice

    lib/billing.ts:3

    - const stripe = new Stripe("sk_live_51H…");

    + const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!); // and rotate the leaked key

  • 02AltaManca il controllo di proprietà sul download delle fatture

    app/api/invoices/[id]/route.ts:12

    - const invoice = await db.invoice.findUnique({ where: { id } });

    + const invoice = await db.invoice.findFirst({ where: { id, userId: session.user.id } });

  • 03MediaOpen redirect dopo l'accesso

    app/login/page.tsx:27

    - router.push(searchParams.get('next') ?? '/');

    + router.push(safeRelativePath(searchParams.get('next')));

Prezzi semplici

Inizia gratis, poi scegli il piano adatto ai tuoi repository.

Starter

Per sviluppatori indipendenti e piccoli team che rilasciano in fretta.

$49/mese

  • 5 repository
  • 50 audit al mese
  • Audit di base (fino a 40 file per esecuzione)
  • Problemi mappati su CWE con patch
Prova gratis
Per i team

Pro

Per team in crescita che revisionano molti repository.

$199/mese

  • Repository illimitati
  • 500 audit al mese
  • Audit agentici approfonditi (fino a 80 file per esecuzione)
  • Supporto prioritario
Prova gratis

Piano gratuito: 1 repository e 3 audit al mese. Nessuna carta di credito richiesta.