Oefening: Uw database controleren
Stel dat u een waarschuwing ontvangt van de beveiligingsbeheerder van uw bedrijf. Er is een mogelijke beveiligingsschending op uw netwerk gedetecteerd. Een onbevoegd persoon heeft mogelijk toegang tot uw database via schadelijke activiteiten. Hoe zou u dit opsporen?
U weet dat u uw database actief moet controleren op verdachte activiteiten. Wat kunt u doen om niet alleen inzicht te krijgen in wat er in uw database gebeurt, maar ook om te voorkomen dat schadelijke activiteiten optreden?
Azure SQL Database heeft ingebouwde functies waarmee u kunt bijhouden wat er in uw database gebeurt. Het kan u bewaken en waarschuwen als er schadelijke activiteiten worden geïdentificeerd.
Azure SQL Database Auditing
Wanneer u Auditing inschakelt, worden bewerkingen die in de database plaatsvinden, opgeslagen om deze later te inspecteren of om deze te analyseren met geautomatiseerde hulpprogramma's. Controle wordt ook gebruikt voor compliancebeheer of om te begrijpen hoe uw database wordt gebruikt. Controleren is ook vereist als u Azure-dreigingsdetectie op uw Azure SQL-database wilt gebruiken.
U kunt SQL Database Auditing gebruiken voor het volgende:
- Een audittrail van geselecteerde gebeurtenissen bewaren. U kunt categorieën van database-acties definiëren die moeten worden gecontroleerd.
- Rapporteren over de database-activiteit. U kunt vooraf geconfigureerde rapporten en een dashboard gebruiken om snel aan de slag te gaan met de rapportage van activiteiten en gebeurtenissen.
- Rapporten analyseren. U kunt verdachte gebeurtenissen, ongebruikelijke activiteit en trends vinden.
Auditlogboeken worden geschreven naar toevoeg-blobs in een Azure Blob Storage-account dat u aanwijst. Auditbeleid kan worden toegepast op serverniveau of op databaseniveau. Zodra deze optie is ingeschakeld, kunt u de Azure-portal gebruiken om de logboeken weer te geven of naar Log Analytics of Event Hubs te verzenden voor verdere verwerking en analyse.
Controle in de praktijk
Schakel de controle van de server-blob en de database-blob niet tegelijk in, tenzij:
- U een ander opslagaccount of een andere retentieperiode wilt gebruiken voor een specifieke database.
- U de gebeurtenistypen of -categorieën voor een specifieke database wilt controleren die verschilt van de rest van de databases op de server. Er kunnen bijvoorbeeld ingevoegde tabellen zijn die moeten worden gecontroleerd, maar alleen voor een specifieke database.
Anders wordt u aangeraden alleen blobcontrole op serverniveau in te schakelen en de controle op databaseniveau uitgeschakeld te laten voor alle databases.
Volg deze stappen om controle op uw systeem in te stellen.
Meld u aan bij Azure Portal met het account waarmee u de sandbox hebt geactiveerd.
Zoek in de zoekbalk boven aan de portal naar uw server en selecteer vervolgens de server in de portal. Vervang NNNNN door het nummer van de servernaam.
Selecteer Controle in het linkermenuvenster onder Beveiliging.
Controle is standaard uitgeschakeld. Als u deze wilt inschakelen op uw databaseserver, schakelt u Azure AQL Auditing in op AAN.
Nadat de knop AAN is geselecteerd, schakelt u het selectievakje Opslag in.
Selecteer uw abonnement.
U kunt een bestaand opslagaccount selecteren of een nieuw opslagaccount maken om uw controles op te slaan. Het opslagaccount moet worden geconfigureerd om dezelfde regio te gebruiken als uw server.
In dit geval definieert u een nieuw opslagaccount. Selecteer Onder Opslagaccount de optie Nieuwe maken. Het deelvenster Opslagaccount maken wordt weergegeven. Geef de servernaam van het opslagaccount >
Laat de rest van de opties op de standaardinstellingen staan en selecteer OK. Laat in het deelvenster Opslaginstellingen de standaardwaarden staan en selecteer OK.
Selecteer Opslaan om uw wijzigingen op te slaan en controle in te schakelen op uw databaseserver.
Genereer nu enkele controlerecords en bekijk wat u kunt verwachten.
Meld u weer aan bij de database als applicationUser-gebruiker.
sqlcmd -S tcp:[server-name].database.windows.net,1433 -d marketplaceDb -U 'ApplicationUser' -P '[password]' -N -l 30
Voer de volgende query uit.
SELECT FirstName, LastName, EmailAddress, Phone FROM SalesLT.Customer; GO
Selecteer in Azure Portal op uw SQL-server SQL-databases in het linkermenuvenster en selecteer de Marketplace-database .
Selecteer Controle in het linkermenuvenster van uw Marketplace-database onder Beveiliging.
Omdat u controle hebt ingeschakeld op serverniveau, ziet u dat deze hier is ingeschakeld. Selecteer Auditlogboeken weergeven in de bovenste menubalk om de logboeken weer te geven.
U ziet een of meer auditrecords met PRINCIPAL NAME van ApplicationUser en EVENT TYPE van BATCH COMPLETED. Een van deze moet de details bevatten van de query die u hebt uitgevoerd. U ziet mogelijk ook andere gebeurtenissen, zoals mislukte en gelukte verificaties. Selecteer een record om de volledige details van de gebeurtenis te bekijken.
Met deze acties worden de controles op het niveau van de databaseserver geconfigureerd. De controles zijn van toepassing op alle databases op de server. U kunt de controle ook op databaseniveau configureren.
Bekijk een andere functie die gebruikmaakt van deze logboeken om de beveiliging van uw database te verbeteren.
Advanced Data Security voor Azure SQL Database
Advanced Data Security (ADS) biedt een serie geavanceerde SQL-beveiligingsfuncties, waaronder gegevensdetectie en -classificatie, evaluatie van beveiligingsproblemen en Advanced Threat Protection.
- Gegevensdetectie en -classificatie (momenteel in preview) biedt mogelijkheden die zijn ingebouwd in Azure SQL Database voor het detecteren, classificeren, labelen en beveiligen van gevoelige gegevens in uw databases. Het kan worden gebruikt voor het zichtbaar maken van de classificatiestatus van gegevens in uw database, en het traceren van de toegang tot gevoelige gegevens binnen en buiten de database.
- Evaluatie van beveiligingsproblemen is een eenvoudig te configureren service waarmee u potentiële zwakke plekken in de beveiliging van de database kunt detecteren, volgen en verhelpen. Deze service biedt u inzicht in de status van de beveiliging en bruikbare stappen om beveiligingsproblemen op te lossen en de beveiliging van uw database te verbeteren.
- Advanced Threat Protection detecteert vreemde activiteiten die duiden op ongebruikelijke en mogelijk schadelijke pogingen om toegang te verkrijgen tot of op aanvallen op uw databases. Hiermee wordt uw database continu gecontroleerd op verdachte activiteiten en wordt u onmiddellijk gewaarschuwd bij mogelijke beveiligingsproblemen, SQL-injectieaanvallen en afwijkende databasetoegangspatronen. Meldingen van Advanced Threat Protection bevatten detailinformatie over verdachte activiteiten en aanbevelingen voor het onderzoeken en tegenhouden ervan.
Installatie en configuratie
Schakel ADS in uw database in. ADS is een instelling op serverniveau, dus begin daar.
Ga terug in Azure Portal naar uw SQL-server. Zoek in de zoekbalk boven aan de pagina naar _<servernaam> en selecteer vervolgens de server.
Selecteer Microsoft Defender voor Cloud in het linkermenuvenster onder Beveiliging.
Selecteer Microsoft Defender voor SQL inschakelen.
Selecteer Configureren naast het bericht Ingeschakeld op abonnementsniveau. Het deelvenster Serverinstellingen wordt weergegeven.
Periodieke terugkerende scans zijn standaard ingeschakeld. Wanneer een wekelijkse scan wordt geactiveerd, wordt een samenvatting van het scanresultaat verzonden naar het e-mailadres dat u opgeeft. Schakel dit in dit geval uit. E-mailmeldingen ook naar beheerders en abonnementseigenaren verzenden is standaard ingeschakeld om de bedreigingen naar de servicebeheerders te verzenden. Selecteer Opslaan bovenaan om uw instellingen op te slaan.
Selecteer Onder Advanced Threat Protection-instellingen de optie Uw contactgegevens toevoegen... om het deelvenster Defender voor Cloud E-mailmeldingen te openen. Hier kunt u desgewenst definiëren waar e-mailberichten met meldingen worden bezorgd voor zowel de evaluatie van beveiligingsproblemen als Advanced Threat Protection als een lijst met door puntkomma's gescheiden e-mailadressen. E-mailmeldingen ook naar beheerders en abonnementseigenaren verzenden is standaard ingeschakeld om de bedreigingen naar de servicebeheerders te verzenden.
U kunt ook Controle inschakelen selecteren.... om Azure SQL Auditing in te schakelen.
Selecteer Opslaan om de wijzigingen toe te passen.
U ontvangt e-mailmeldingen wanneer beveiligingsproblemen worden gedetecteerd. In het e-mailbericht wordt beschreven wat er is gebeurd en welke acties moeten worden uitgevoerd.
Gegevensdetectie en -classificatie
Ga naar uw Marketplace-database. Zoek in de zoekbalk boven in Azure Portal naar Marketplace en selecteer vervolgens de database.
Selecteer in het linkermenuvenster onder Beveiliging de optie Gegevensdetectie en -classificatie.
Op het tabblad Classificatie worden kolommen in uw tabellen weergegeven die moeten worden beveiligd. Sommige kolommen bevatten mogelijk gevoelige informatie of worden beschouwd als geclassificeerd in verschillende landen of regio's.
Er wordt een bericht weergegeven als er kolommen moeten worden beveiligd. Dit bericht is opgemaakt als 15 kolommen met classificatieaanaanveling. U kunt de tekst selecteren om de aanbevelingen weer te geven.
Selecteer de kolommen die u wilt classificeren door het vinkje naast de kolom te selecteren of schakel het selectievakje links van de schemakop in. Selecteer de knop Geselecteerde aanbevelingen accepteren om de classificatieaan aanbevelingen toe te passen.
Bewerk vervolgens de kolommen en definieer vervolgens het informatietype en het vertrouwelijkheidslabel voor de database. Als u de wijzigingen wilt opslaan, selecteert u Opslaan.
Er moeten geen actieve aanbevelingen worden weergegeven zodra u de aanbevelingen met succes hebt beheerd.
Beveiligingsproblemen
Selecteer Microsoft Defender voor Cloud in het linkermenuvenster onder Beveiliging.
De sectie Aanbevelingen bevat configuratieproblemen in uw database en het bijbehorende risico.
Selecteer een aanbeveling. In het aanbevelingsvenster ziet u de details, zoals het risiconiveau, op welke database het van toepassing is, een beschrijving van het beveiligingsprobleem en het aanbevolen herstel om het probleem op te lossen. Pas de oplossing toe om het probleem of de problemen op te lossen. Zorg ervoor dat u alle beveiligingsproblemen aanpakt.
Beveiligingsincidenten en -waarschuwingen
In deze sectie wordt een lijst met gedetecteerde bedreigingen weergegeven.
Los deze problemen op door de aanbevelingen te volgen. Voor problemen zoals de sql-injectiewaarschuwingen kunt u de query bekijken en terugwerken naar de locatie waar de query wordt uitgevoerd in code. Zodra de code is gevonden, moet u de code herschrijven, zodat deze het probleem niet meer heeft.