CODEBEVEILIGING IN HET AI-TIJDPERK

Lever sneller op
met AI.
Houd zicht
op beveiliging.

Een endpoint kan perfect werken en toch de gegevens van een andere klant blootleggen.

Heldere prioriteiten, begrijpelijke bevindingen en concrete stappen om problemen op te lossen. Voor kleine teams die met AI bouwen.

30 minuten · Google Meet. Bespreek je vragen over beveiliging en of een pilootproject past.

Voor teams zonder eigen beveiligingsteam.

Voor de bedrijfsleiding

Dezelfde bevinding. Twee doelgroepen.

Voor ontwikkelaars

Ontbrekende accountcontrole

Nazicht nodig Hoge prioriteit
// Authenticated requestconst invoice = await db.invoice.findUnique({  where: { id: invoiceId },});return invoice;

Uitleg. Een ingelogde gebruiker kan de factuur van een andere klant opvragen door het ID te wijzigen.

Volgende actie. Beperk de opvraging tot het account van de ingelogde gebruiker en test toegang tussen accounts.

Voor de bedrijfsleiding

Een klant zou de factuur van een andere klant kunnen bekijken

Hoge prioriteit Nazicht nodig
Mogelijke impact
Een ingelogde gebruiker zou de factuur van een andere klant kunnen bekijken door het ID in het verzoek te wijzigen.
Volgende beslissing
Kijk na vóór release. Bevestig dat de fix toegang tussen accounts blokkeert.

Nagekeken is niet hetzelfde als opgelost.

01 / CODEBEVEILIGING ↓

VAN BEVINDING NAAR VOLGENDE STAP

Vind. Begrijp. Los op. Controleer

Een bevinding moet een volgende stap bieden.

  1. 01

    Vind

    Bekijk de locatie, ernst en context van de bevinding.

  2. 02

    Begrijp

    Begrijp waarom het telt en wat er op het spel staat. Verken de GDPR-context in de roadmapweergave.

  3. 03

    Los op

    Kopieer de oplossingsprompt naar je AI-assistent. Kijk de voorgestelde wijziging na.

  4. 04

    Controleer

    Een latere controle bevestigt dat het probleem is opgelost. Nagekeken is niet hetzelfde als opgelost.

Voor ontwikkelaars

Voeg de ontbrekende accountcontrole toe

Voor · onbeperkte opvraging

const invoice = await db.invoice.findUnique({  where: { id: invoiceId },});return invoice;

Na · voorgestelde fix

const invoice = await db.invoice.findFirst({  where: { id: invoiceId, accountId: user.accountId },});if (!invoice) throw notFound();return invoice;

Waarom dit werkt. user is de geauthenticeerde sessie. Door de opvraging te beperken tot het account worden opvragingen tussen accounts geweigerd. Volledige handler en foutafhandeling weggelaten.

Bekijk prompt
Kijk de factuuropvraging in invoices.ts na op een ontbrekende eigenaarscontrole. Beperk de query tot het account van de ingelogde gebruiker (bijvoorbeeld accountId uit de sessie), zodat een verzoek voor de factuur van een ander account "niet gevonden" teruggeeft in plaats van het record. Voeg tests toe voor: een geautoriseerd verzoek, een verzoek voor de factuur van een ander account, en een niet-geauthenticeerd verzoek. Leg de wijziging uit zodat ik ze kan nakijken voordat ik ze toepas.

GDPR-context · Roadmap

Eén klant zou de facturen van een andere kunnen lezen

Risico

Het wijzigen van een factuur-ID zou de persoonsgegevens van een andere klant kunnen blootleggen.

Volgende actie

Beperk de toegang per account en test de fix.

Privacycontrole

Controleer op ongeautoriseerde toegang en bewaar bewijs van de reactie.

GDPR-context & bronnen

Als de GDPR van toepassing is op deze verwerking:

Art. 32 · Beveiliging
Controleer of de toegangscontroles een beveiligingsniveau bieden dat is afgestemd op het risico.
Art. 33 · Inschatting van het datalek
Als je kennis krijgt van een datalek met persoonsgegevens, meld dit zonder onnodige vertraging aan de toezichthouder en, indien haalbaar, binnen 72 uur na kennisname, tenzij het onwaarschijnlijk is dat er risico is voor betrokkenen.
Art. 5(2) · Verantwoordingsplicht
Bewaar bewijs van de bevinding, de beslissingen, de wijzigingen en de verificatie om de verantwoordingsplicht te kunnen aantonen.

Richtsnoeren over datalekken · EDPB

Bekijk samenvatting
ILLUSTRATIEVE SJABLOON: vervang de haakjes door bevestigde feiten voordat je dit deelt. Een factuuropvraging maakt mogelijk toegang tussen accounts mogelijk. Betrokken persoonsgegevens: [bevestigen]. Status van de fix en bewijs van verificatie: [bevestigen]. Bewijs van ongeautoriseerde toegang en tijdstip van kennisname: [bevestigen]. Beoordeel de toepasselijkheid van de GDPR, passende beveiligingsmaatregelen onder Art. 32, de verantwoordingsplicht onder Art. 5(2), en of melding onder Art. 33 vereist is.

GEBOUWD VOOR KLEINE ONTWIKKELTEAMS

Behoud de snelheid van AI.
Krijg een duidelijker beeld van het risico

Vertel ons over je repository en de beveiligingsvragen van je team. We bespreken samen of een pilootproject past.

  • Heldere prioriteiten.
  • Standaard geen blokkering.
  • Geen rankings van ontwikkelaars.
Plan een gesprek

30 minuten · Google Meet. Kies een moment op Calendly.

  • Duur, prijs en plaatsen: Spreken we af met je team.
  • Toegang tot repository: Omvang en rechten afgesproken vóór toegang.
  • Code en gegevens: Voorwaarden voor deployment en gegevensverwerking liggen nog niet vast; bevestig waar de code wordt verwerkt voordat je een repository koppelt.