💼 Management Samenvatting
Microsoft Defender for SQL Server on Virtual Machines biedt gespecialiseerde dreigingsdetectie voor SQL Server-instanties die draaien op Azure Virtual Machines en Azure Arc-ingeschakelde servers. De service detecteert SQL-injecties, brute-force-aanvallen en abnormale database-toegangspatronen met behulp van machine learning en SQL-specifieke dreigingsinformatie. Deze VM-gebaseerde SQL-bescherming is essentieel omdat IaaS SQL Server-installaties vaak kwetsbaarder zijn dan PaaS Azure SQL Database-omgevingen.
✓ Arc-ingeschakeld SQL Servers
SQL-servers op virtuele machines hebben vaak direct toegankelijke netwerkpoorten (TCP 1433) naar internet of bedrijfsnetwerken, waardoor ze primaire doelen zijn voor aanvallers die database-niveau aanvallen uitvoeren die netwerkbeveiligingscontroles omzeilen. Zonder gespecialiseerde SQL-dreigingsdetectie blijven kritieke aanvallen onopgemerkt. SQL-injectieaanvallen manipuleren WHERE-clausules voor onbevoegde gegevens toegang, brute-force-wachtwoordaanvallen richten zich op de sa-account of andere SQL-aanmeldingen die vaak zwakkere wachtwoorden hebben dan Azure AD-accounts. Laterale beweging vindt plaats via xp_cmdshell of xp_regread opgeslagen procedures die OS-opdrachtuitvoering mogelijk maken. Privilege-escalatie gebeurt via gekoppelde serverconfiguraties of impersonatie, gegevensexfiltratie via BACKUP TO URL of bulk export-query's, kwaadaardige opgeslagen procedures die backdoors installeren, en application-layer-aanvallen die web application firewalls volledig omzeilen. VM-gebaseerde SQL heeft typisch minder ingebouwde beveiligingscontroles dan PaaS Azure SQL Database, zoals geen automatische dreigingsdetectie, geen Azure AD-only enforcement en handmatige patching, wat het risico verder vergroot. Defender for SQL Server on VMs is vereist voor CIS Azure Foundations Benchmark 2.1.13 en essentieel voor naleving van NIS2, ISO 27001 en BIO.
Connection:
Connect-AzAccountRequired Modules: Az.Accounts, Az.Security
Implementatie
Deze controle activeert Microsoft Defender for SQL Server on Virtual Machines op alle abonnementen door de prijscategorie 'SqlServerVirtualMachines' in te stellen op 'Standard'. De service bewaakt alle SQL Server-instanties op Azure VM's en Arc-ingeschakelde servers met ML-gebaseerde gedragsanalyse. Dit omvat SQL-injectiepogingen via patroonherkenning en anomaliedetectie, brute-force-authenticatieaanvallen tegen SQL-aanmeldingen met analyse van aanmeldingsfoutpatronen, abnormale querypatronen zoals ongebruikelijk SELECT-volume, verdachte WHERE-clausules en UNION-gebaseerde injecties, detectie van gegevensexfiltratie via ongebruikelijke uitgaande gegevensoverdrachtsvolumes, privilege-escalatiepogingen via GRANT-statements of rolwijzigingen, uitvoering van kwaadaardige opgeslagen procedures zoals xp_cmdshell, xp_regread en sp_OACreate, ongebruikelijke geografische toegangslocaties die gecompromitteerde referenties aangeven, anomalieën in applicatiegebruikersimpersonatie, en verdachte gekoppelde serverquery's. Waarschuwingen worden gegenereerd in Microsoft Defender for Cloud met MITRE ATT&CK-mapping, queryvoorbeelden en herstelrichtlijnen. De kosten bedragen ongeveer 5 procent van de VM-rekenkosten per VM met SQL Server.
Vereisten
Voordat Microsoft Defender for SQL Server on Virtual Machines kan worden geactiveerd, moeten organisaties ervoor zorgen dat aan alle technische en organisatorische vereisten wordt voldaan. De implementatie vereist een solide basis van bestaande Azure-infrastructuur en beveiligingsservices. Ten eerste moeten er SQL Server-instanties actief zijn die draaien op Azure Virtual Machines of Azure Arc-ingeschakelde servers. Deze SQL-servers vormen het primaire doelwit voor de beveiligingsmonitoring en dreigingsdetectie die Defender biedt. Het maakt niet uit of de SQL Server-instanties deel uitmaken van een Always On-beschikbaarheidsgroep, een failovercluster of als standalone-servers opereren; alle configuraties worden ondersteund door de service. Voor Azure Arc-ingeschakelde servers is het belangrijk dat de Arc-agent correct is geïnstalleerd en verbonden met Azure Arc, zodat de SQL Server-instanties zichtbaar zijn in de Azure-portal en kunnen worden bewaakt door Defender for Cloud. De Arc-verbinding zorgt ervoor dat on-premises SQL-servers of servers in andere cloudomgevingen ook kunnen profiteren van de geavanceerde dreigingsdetectie die normaal gesproken alleen beschikbaar is voor native Azure-resources. Vanuit een technisch perspectief is PowerShell versie 5.1 of hoger vereist voor de automatisering en configuratie van de Defender-service. Dit betekent dat de beheerder die de implementatie uitvoert toegang moet hebben tot een systeem met een ondersteunde PowerShell-versie, of gebruik moet maken van Azure Cloud Shell die automatisch de nieuwste versie biedt. De vereiste PowerShell-modules zijn Az.Accounts en Az.Security, die deel uitmaken van de Az-modulecollectie. Deze modules moeten worden geïnstalleerd en bijgewerkt naar de nieuwste versie om compatibiliteitsproblemen te voorkomen. De Az.Accounts-module is essentieel voor authenticatie en verbinding met Azure-abonnementen, terwijl de Az.Security-module specifieke cmdlets biedt voor het beheren van Defender for Cloud-instellingen, inclusief het instellen van prijscategorieën en het ophalen van beveiligingsstatusinformatie. Een kritieke vereiste is dat Microsoft Defender for Cloud al moet zijn ingeschakeld op het Azure-abonnement waar de SQL-servers zich bevinden. Defender for Cloud vormt het centrale platform waarop alle Defender-plannen worden geactiveerd, inclusief Defender for SQL Server on VMs. Zonder een actieve Defender for Cloud-implementatie kan de SQL-specifieke bescherming niet worden geactiveerd. Organisaties moeten ervoor zorgen dat de standaard Defender for Cloud-instellingen zijn geconfigureerd, inclusief de dataverzameling voor werkruimten en de automatische provisioning van agents waar van toepassing. Vanuit een organisatorisch perspectief moeten beheerders de juiste Azure RBAC-rollen hebben toegewezen, zoals Security Admin of Contributor op abonnementsniveau, om wijzigingen aan te kunnen brengen in de Defender-configuratie. Daarnaast is het belangrijk dat er een duidelijk proces is voor het beheren van beveiligingswaarschuwingen die door de service worden gegenereerd, inclusief escalatiepaden en responsprocedures voor verschillende typen dreigingen. Budgettaire overwegingen zijn ook van belang, aangezien de service ongeveer 5 procent van de VM-rekenkosten per VM met SQL Server in rekening brengt. Organisaties moeten deze kosten meenemen in hun beveiligingsbudget en ervoor zorgen dat er voldoende budget beschikbaar is voor alle SQL Server-VM's die bescherming nodig hebben.
Monitoring en Bewaking
Het monitoren van de status van Microsoft Defender for SQL Server on Virtual Machines is een kritieke activiteit voor security teams en compliance officers. Regelmatige controle zorgt ervoor dat de beveiligingsservice actief blijft en dat alle SQL Server-instanties adequaat worden beschermd tegen dreigingen. De monitoring kan worden uitgevoerd via verschillende methoden, waaronder PowerShell-automatisering, de Azure-portal en Azure Resource Graph-queries. De primaire monitoringmethode maakt gebruik van de PowerShell-cmdlet Get-AzSecurityPricing met de parameter Name ingesteld op 'SqlServerVirtualMachines'. Deze cmdlet retourneert de huidige prijscategorie van de Defender-service, waarbij 'Standard' aangeeft dat de service actief is en 'Free' of de afwezigheid van de configuratie aangeeft dat de service niet is geactiveerd. De monitoringfunctie in het bijbehorende PowerShell-script voert deze controle uit op alle abonnementen binnen de tenant, waardoor organisaties een volledig overzicht krijgen van de compliance-status. Naast de statuscontrole is het belangrijk om regelmatig de beveiligingswaarschuwingen te controleren die door Defender for SQL Server on VMs worden gegenereerd. Deze waarschuwingen verschijnen in Microsoft Defender for Cloud onder de sectie Security alerts en bevatten gedetailleerde informatie over gedetecteerde dreigingen, inclusief de MITRE ATT&CK-techniek die wordt gebruikt, de SQL-query die de waarschuwing heeft veroorzaakt, en aanbevolen herstelacties. Security teams moeten een proces hebben voor het dagelijks of wekelijks controleren van deze waarschuwingen, waarbij prioriteit wordt gegeven aan waarschuwingen met een hoge ernstgraad. De monitoring moet ook de dekking van SQL Server-instanties omvatten, waarbij wordt gecontroleerd of alle bekende SQL-servers daadwerkelijk worden bewaakt door de service. Dit kan worden gedaan door de lijst van SQL Server-VM's te vergelijken met de lijst van instanties die door Defender worden bewaakt. Azure Resource Graph kan worden gebruikt om een query uit te voeren die alle SQL Server-VM's identificeert en vervolgens controleert of deze zijn opgenomen in de Defender-monitoring. Automatische monitoring kan worden geïmplementeerd met behulp van Azure Monitor-logboeken en waarschuwingsregels die een melding genereren wanneer de Defender-status verandert van Standard naar Free, of wanneer er gedurende een bepaalde periode geen waarschuwingen worden gegenereerd terwijl dit wel wordt verwacht. Deze proactieve monitoring benadering zorgt ervoor dat problemen snel worden geïdentificeerd en opgelost voordat ze leiden tot beveiligingsincidenten. Voor compliance-doeleinden moeten organisaties regelmatig rapporten genereren die de status van Defender for SQL Server on VMs documenteren, inclusief het aantal bewaakte SQL-servers, het aantal gegenereerde waarschuwingen en de responsietijden op kritieke dreigingen. Deze rapporten kunnen worden gebruikt tijdens audits om aan te tonen dat de organisatie voldoet aan de vereisten van CIS Azure Foundations Benchmark 2.1.13 en andere relevante compliance-frameworks.
Gebruik PowerShell-script defender-sql-servers-machines-on.ps1 (functie Invoke-Monitoring) – Controleert Defender voor SQL VMs prijscategorie met Get-AzSecurityPricing -Name 'SqlServerVirtualMachines'.
Remediatie en Implementatie
Wanneer monitoring aangeeft dat Microsoft Defender for SQL Server on Virtual Machines niet is geactiveerd of is ingesteld op de verkeerde prijscategorie, moet onmiddellijk remediatie worden uitgevoerd om de beveiligingsdekking te herstellen. De remediatieprocedure is relatief eenvoudig maar vereist wel de juiste machtigingen en een goed begrip van de impact op de organisatie. De primaire remediatieactie bestaat uit het activeren van de Defender-service door de prijscategorie in te stellen op 'Standard' voor alle relevante Azure-abonnementen. Dit wordt gedaan met behulp van de PowerShell-cmdlet Set-AzSecurityPricing, waarbij de parameter Name wordt ingesteld op 'SqlServerVirtualMachines' en de parameter PricingTier wordt ingesteld op 'Standard'. De remediatiefunctie in het bijbehorende PowerShell-script voert deze actie automatisch uit op alle abonnementen waar de service nog niet is geactiveerd, waardoor een consistente beveiligingspostuur wordt gegarandeerd binnen de hele organisatie. Voordat de remediatie wordt uitgevoerd, is het belangrijk om een impactanalyse uit te voeren om te begrijpen welke SQL Server-VM's worden beïnvloed en wat de kostenimplicaties zijn. De service brengt ongeveer 5 procent van de VM-rekenkosten in rekening per VM met SQL Server, dus organisaties moeten ervoor zorgen dat er voldoende budget beschikbaar is. Daarnaast moet worden gecontroleerd of alle vereisten zijn vervuld, zoals de aanwezigheid van actieve SQL Server-instanties en een werkende Defender for Cloud-implementatie. Tijdens de remediatieprocedure moet er communicatie plaatsvinden met relevante stakeholders, inclusief de databasebeheerders, security teams en financieel beheer, om hen te informeren over de wijzigingen en de verwachte impact. Na de activering van de service begint Defender for SQL Server on VMs onmiddellijk met het monitoren van alle gedetecteerde SQL Server-instanties. Het kan echter enkele minuten tot uren duren voordat de eerste waarschuwingen worden gegenereerd, afhankelijk van de activiteit op de SQL-servers. Organisaties moeten een verificatieproces hebben om te bevestigen dat de service correct is geactiveerd en dat de monitoring daadwerkelijk plaatsvindt. Dit kan worden gedaan door de status te controleren in de Azure-portal onder Defender for Cloud, of door de monitoringfunctie opnieuw uit te voeren om te verifiëren dat de prijscategorie nu is ingesteld op 'Standard'. In gevallen waar de remediatie faalt, bijvoorbeeld vanwege onvoldoende machtigingen of technische problemen, moeten organisaties een escalatieproces hebben om deze problemen snel op te lossen. Dit kan het inschakelen van een beheerder met hogere machtigingen omvatten, of het contact opnemen met Microsoft Support als er sprake is van een technisch probleem met de Azure-service zelf. Na succesvolle remediatie moeten organisaties een follow-up monitoringplan implementeren om ervoor te zorgen dat de service actief blijft en niet onbedoeld wordt uitgeschakeld. Dit omvat regelmatige controles, automatische waarschuwingen bij statuswijzigingen, en documentatie van de remediatieacties voor audit-doeleinden.
Gebruik PowerShell-script defender-sql-servers-machines-on.ps1 (functie Invoke-Remediation) – Activeert Defender met Set-AzSecurityPricing -Name 'SqlServerVirtualMachines' -PricingTier 'Standard'.
Compliance en Auditing
Microsoft Defender for SQL Server on Virtual Machines speelt een cruciale rol bij het voldoen aan verschillende compliance-frameworks en beveiligingsstandaarden die relevant zijn voor Nederlandse overheidsorganisaties en bedrijven. De implementatie van deze service is niet alleen een best practice, maar in veel gevallen een expliciete vereiste volgens verschillende compliance-frameworks. De CIS Azure Foundations Benchmark versie 3.0.0 bevat specifieke controle 2.1.13 die vereist dat Microsoft Defender voor SQL Server op machines is ingesteld op 'On'. Deze controle valt onder het niveau 2 (L2) van de benchmark, wat betekent dat het wordt aanbevolen voor organisaties met een hogere beveiligingspostuur. De CIS-benchmark wordt wereldwijd erkend als een autoritatieve bron voor cloudbeveiligingsconfiguraties, en naleving van deze benchmark wordt vaak gebruikt als basis voor security assessments en audits. Voor Nederlandse organisaties die werken met gevoelige gegevens is ISO 27001-naleving van groot belang. De ISO 27001-controle A.12.4.1 richt zich op het loggen van gebeurtenissen en audit trails, wat direct wordt ondersteund door de uitgebreide logging- en waarschuwingsmogelijkheden van Defender for SQL Server on VMs. De service genereert gedetailleerde logs van alle gedetecteerde dreigingen, inclusief SQL-injectiepogingen, brute-force-aanvallen en abnormale toegangspatronen. Deze logs kunnen worden gebruikt om te voldoen aan de ISO 27001-vereisten voor gebeurtenislogboekregistratie en kunnen worden geïntegreerd met SIEM-systemen voor centrale monitoring en analyse. De NIS2-richtlijn, die van toepassing is op essentiële en belangrijke entiteiten in de Europese Unie, bevat in Artikel 21 specifieke vereisten voor de detectie van beveiligingsdreigingen. Defender for SQL Server on VMs biedt geavanceerde dreigingsdetectie die voldoet aan deze vereisten door gebruik te maken van machine learning en gedragsanalyse om bedreigingen te identificeren die traditionele beveiligingscontroles mogelijk missen. De service detecteert niet alleen bekende aanvallen, maar ook zero-day-bedreigingen en geavanceerde persistente bedreigingen (APT's) die gebruikmaken van legitieme SQL-functionaliteit voor kwaadaardige doeleinden. Voor Nederlandse overheidsorganisaties is naleving van de Baseline Informatiebeveiliging Overheid (BIO) essentieel. De BIO-controle 12.04.01 richt zich specifiek op databasebeveiliging en vereist dat organisaties passende maatregelen treffen om databases te beschermen tegen dreigingen. Defender for SQL Server on VMs biedt deze bescherming door continue monitoring en detectie van database-specifieke aanvallen. De service helpt organisaties ook om te voldoen aan de AVG-vereisten door het detecteren van onbevoegde toegang tot persoonsgegevens en het genereren van audit trails die kunnen worden gebruikt om te bewijzen dat passende technische en organisatorische maatregelen zijn getroffen om gegevens te beschermen. Tijdens compliance-audits moeten organisaties kunnen aantonen dat de service actief is en correct functioneert. Dit vereist regelmatige monitoring en documentatie van de Defender-status, inclusief het genereren van rapporten die de compliance-status per framework documenteren. De PowerShell-monitoringfunctie kan worden gebruikt om automatisch compliance-rapporten te genereren die aantonen dat alle SQL-servers worden bewaakt en dat de service is ingesteld op de juiste prijscategorie. Deze rapporten kunnen worden opgenomen in audit-documentatie en worden gebruikt om te bewijzen dat de organisatie voldoet aan de vereisten van de verschillende compliance-frameworks.
Compliance & Frameworks
- CIS M365: Control 2.1.13 (L2) - zorg ervoor dat Microsoft Defender voor SQL Server op machines is ingesteld op On
- BIO: 12.04.01 - Database security
- ISO 27001:2022: A.12.4.1 - Gebeurtenissen logging en audittrails
- NIS2: Artikel - Database Detectie van beveiligingsdreigingen
Automation
Gebruik het onderstaande PowerShell script om deze security control te monitoren en te implementeren. Het script bevat functies voor zowel monitoring (-Monitoring) als remediation (-Remediation).
Risico zonder implementatie
Management Samenvatting
Defender for SQL on VMs biedt dreigingsdetectie voor SQL Server-instanties op Azure VM's: SQL-injecties, brute-force-aanvallen en abnormale toegang. Activatie: Defender for Cloud → SQL-servers op machines → AAN. Kosten: 5 procent van de VM-kosten. Verplicht volgens CIS 2.1.13. Implementatie: 1 tot 2 uur. Verplicht voor SQL Server op VM's.
- Implementatietijd: 2 uur
- FTE required: 0.02 FTE