Security audit

Security audit voor je webshop: weten waar je staat

Een security audit laat in korte tijd zien waar je webshop open staat. Wij kijken van binnenuit naar platform, extensies, maatwerk, server, toegang en checkout. Je krijgt geen stapel scanner-output, maar een lijst op volgorde van risico.

  • Van core-versie tot checkout
  • Actielijst op volgorde van risico
  • Fixes door hetzelfde team mogelijk

De meeste hacks gebruiken bekende gaten

Bij de grote Magento-lekken van de afgelopen jaren ging het zelden om onbekende aanvallen. TrojanOrders, CosmicSting en SessionReaper troffen vooral shops die een beschikbare patch nog niet hadden geïnstalleerd. Het probleem was niet de fix, maar het overzicht.

Een audit geeft dat overzicht. Welke versie draai je, welke extensies zijn verouderd, wie heeft admin-toegang, welke scripts staan op je betaalpagina? Veel eigenaren weten dat niet precies. Dat is geen verwijt: het verandert door de tijd, en niemand houdt het vanzelf bij.

Wij doen audits voor Magento 2 en Hyvä, voor Laravel- en Filament-applicaties en voor de maatwerkkant van Shopify-shops. Het resultaat is een lijst waar je morgen mee aan de slag kunt.

Wat we controleren, per laag

Een webshop is meer dan de applicatie. We lopen alle lagen langs waar een aanvaller binnen kan komen.

Platform en patches

  • Versie van Magento, Laravel of Filament en de security-support daarvan
  • Geïnstalleerde security-releases en losse patches
  • PHP-versie en ondersteuning, inclusief bekende lekken zoals PHP2Shell
  • Bekende kwetsbaarheden in dependencies via composer audit

Extensies en dependencies

  • Inventaris van alle extensies en packages, met onderhoudsstatus
  • Verlaten of uitgeschakelde modules die nog op de server staan
  • Herkomst van code: marketplace, leverancier, eigen maatwerk
  • npm- en build-dependencies van de frontend

Maatwerkcode

  • Escaping in templates en Blade-views
  • Raw SQL met gebruikersinvoer
  • Autorisatie op controllers, endpoints en API's
  • Uploads, bestandsverwerking en externe requests

Toegang en accounts

  • 2FA voor alle admin-gebruikers
  • Admin achter IP-allowlist of VPN
  • Oude, gedeelde of overbodige accounts
  • API-gebruikers, integratietokens en hun rechten

Server en configuratie

  • Webroot, bestandsrechten en PHP-uitvoer in uploadmappen
  • Publiek bereikbare services: Redis, OpenSearch, MySQL
  • Production mode, debug-instellingen en foutmeldingen
  • Secrets: env.php of .env buiten git, sleutels geroteerd na incidenten

Checkout en betaalpagina

  • CSP en SRI op betaalpagina's
  • Inventaris van scripts op de checkout
  • Tekenen van skimmers in bestanden en database
  • Logging, monitoring en back-ups

Wat een audit oplevert: een geprioriteerde lijst

Elke bevinding krijgt een prioriteit. Zo weet je wat vandaag moet en wat in het volgende sprintje past.

PrioriteitWat valt eronderWanneer oplossen
KritiekActief misbruikte lekken, ontbrekende kritieke patches, tekenen van een bestaande compromittering.Direct. We melden dit tijdens de audit, niet pas in het rapport.
HoogAdmin zonder 2FA, publiek bereikbare services, verouderde extensies met bekende lekken.Binnen enkele dagen.
MiddelTe ruime rechten, ontbrekende CSP op de checkout, zwakke foutafhandeling.In de komende weken, ingepland.
LaagVerbeterpunten die het risico verkleinen maar geen directe ingang zijn.Meenemen in regulier onderhoud.

Doorlooptijd: wat je kunt verwachten

Een audit van een standaard webshop doen we meestal in enkele dagen werk. Hoe meer maatwerk, extensies en koppelingen, hoe langer het duurt. Een B2B-platform met eigen modules en API's vraagt meer tijd dan een shop op een bekende set extensies.

Wat de doorlooptijd vooral bepaalt is toegang. Met leesrechten op de repository, de server en een admin-account kunnen we direct beginnen. Moeten we wachten op een hostingpartij of oud-leverancier, dan schuift alles op. Dat regel je dus het liefst vooraf. Wij sturen een korte lijst met wat we nodig hebben, zodat je het in één keer kunt aanvragen.

Na een korte intake krijg je een voorstel met scope en planning. Vinden we tijdens de audit iets kritieks, dan bellen we meteen. Je wacht nooit op een rapport om een open deur te horen.

Wat een audit niet is

Een audit is geen garantie. Hij laat zien hoe je shop er op dit moment voor staat. Een week later kan er een nieuw kritiek lek verschijnen in core, een extensie of PHP zelf. Daarom heeft een audit pas echt waarde als er daarna een patchritme en monitoring staan.

Een audit is ook geen geautomatiseerde scan met een logo erop. Tools gebruiken we zeker: composer audit, malware-scanners zoals de Adobe Security Scan Tool of Sansec eComscan, en scripts om configuratie te controleren. Maar de waarde zit in het lezen van code, het beoordelen van rechten en het wegen van wat een bevinding in jouw situatie betekent.

En een audit is geen verkooptraject. Is je shop goed op orde, dan staat dat in het rapport. Soms is het eerlijkste advies dat je niets extra nodig hebt, behalve doorgaan met wat je al doet.

Audit of pentest?

Beide nuttig, voor verschillende vragen.

KenmerkSecurity auditPentest
VraagWaar staan we open en wat moet eerst?Wat kan een aanvaller hier echt mee?
WerkwijzeReview van binnenuit: versies, code, configuratie, toegang.Gecontroleerde aanval, met tests op logica en uitbuitbaarheid.
Sterk inBreed overzicht, snelle winst, bekende risico's.Maatwerk, API's, access control, betaalflows.
Past bijStandaard webshops, eerste nulmeting, nieuwe eigenaar of nieuwe partner.Maatwerk, portals, PCI-eisen, B2B-klanten die erom vragen.
VolgordeMeestal eerst.Vaak daarna, als de basis op orde is.

Zo werken we

Kort, concreet en met hetzelfde team van begin tot eind.

  1. 1

    Intake

    Een gesprek over je shop, hosting, maatwerk en aanleiding. We bepalen samen de scope.

  2. 2

    Toegang

    Leesrechten op repository, server en admin. Waar nodig stemmen we direct af met je hostingpartij.

  3. 3

    Audit

    We lopen alle lagen langs met tooling en handmatige review. Kritieke bevindingen melden we direct.

  4. 4

    Rapport en bespreking

    Een geprioriteerde lijst met per bevinding uitleg, risico en oplossing. We lopen hem samen door.

  5. 5

    Oplossen

    Je lost het zelf op, met je eigen partij, of wij doen het. Daarna controleren we of het echt dicht is.

Wat je krijgt

  • Een overzicht van versies, patches, extensies en dependencies
  • Een geprioriteerde actielijst: kritiek, hoog, middel, laag
  • Per bevinding uitleg, risico en concrete oplossing
  • Directe melding van kritieke problemen tijdens de audit
  • Een korte samenvatting voor eigenaar of directie
  • Een advies over vervolg: onderhoud, pentest of niets extra
  • Optioneel: de fixes doorgevoerd en gecontroleerd

Waarom Coding.nl

15+ jaar e-commerce

We weten welke bevindingen in de praktijk tot een hack leiden en welke vooral op papier staan.

Hyvä Silver Partner, Hypernode Silver Partner

We kennen de Magento-stack van frontend tot hosting. Dat maakt de audit sneller en de adviezen concreter.

We lossen het ook op

Magento, Laravel en Filament zijn ons dagelijkse werk. Geen rapport dat je zelf moet gaan vertalen naar tickets.

Vast senior team, direct contact

Geen tussenlagen. Je praat met degene die je shop heeft doorgelicht.

Hyvä Silver PartnerHypernode Silver Partner

Veelgestelde vragen

Een review van binnenuit waarin we alle lagen van je shop controleren: platform, patches, extensies, maatwerkcode, toegang, server en checkout. Het doel is een helder beeld van waar je open staat en wat eerst moet. Je krijgt een geprioriteerde actielijst, geen ongefilterde scanner-output.

Wil je weten waar je webshop open staat?

Vertel ons op welk platform je draait, waar je host en hoeveel maatwerk er in zit. Je krijgt een concreet voorstel voor een audit, of een eerlijk advies als iets anders beter past.