Belangrijkste punten
- Met de logboekregistratie van Windows en PowerShell herkent u verborgen of verdachte Remote Desktop Protocol-activiteit (RDP).
- Configureer Event ID 4624 (aanmelding), 4634 (afmelding) en de TerminalServices-logboeken (21, 23, 25) om alle RDP-sessieactiviteit te volgen en ongeautoriseerde toegang te detecteren.
- Gebruik gebeurtenistriggers in PowerShell om notificaties te versturen bij ongebruikelijke RDP-activiteit, mislukte aanmeldingen of toegangspogingen buiten kantooruren.
- Versterk uw eindpuntbeveiliging en automatiseer RDP-monitoring en -respons met het monitoring- en beheerplatform van NinjaOne.
Ongeautoriseerde remote desktop-sessies kunnen ernstige beveiligingsgaten veroorzaken die standaard monitoringtools vaak missen. U hebt betrouwbare methoden nodig om onverwachte RDP-sessies te monitoren met de ingebouwde logfuncties van Windows. PowerShell en analyse van het gebeurtenissenlogboek bieden volledige sessiemonitoring zonder dat u extra software nodig hebt. Zo detecteert u mogelijke dreigingen voordat ze schade aanrichten.
Wat is Remote Desktop Protocol?
Remote Desktop Protocol is de netwerkcommunicatiestandaard van Microsoft waarmee u via een grafische interface verbinding maakt met Windows-systemen op afstand. Het protocol gebruikt standaard versleutelde kanalen op TCP-poort 3389 en stuurt beeldgegevens, toetsenbordinvoer, muisbewegingen en audio heen en weer tussen uw lokale machine en de externe server.
De basis van RDP-sessiemonitoring
Effectieve RDP-sessiemonitoring begint met de juiste Windows-auditbeleidsregels, verzameling van gebeurtenissenlogboeken en een nulmeting die volledige verbindingsgegevens vastlegt. Uw organisatie heeft gestandaardiseerde logframeworks nodig die authenticatiegebeurtenissen, sessieactiviteiten en het beëindigen van verbindingen vastleggen op alle systemen waarop RDP is ingeschakeld.
Audittrail instellen voor beveiligingsgebeurtenissen
Het Windows-beveiligingslogboek legt RDP-authenticatie- en sessiegebeurtenissen vast via specifieke gebeurtenis-ID’s die gedetailleerde verbindingsinformatie tonen, waaronder bron-IP-adressen, gebruikersaccounts en tijdstempels. Gebeurtenis-ID 4624 registreert geslaagde aanmeldingen met aanmeldingstype 10 voor RDP-verbindingen en gebeurtenis-ID 4634 documenteert afmeldingen die overeenkomen met beëindigde sessies.
Met uitgebreide aanmeldingsauditing zorgt u ervoor dat alle RDP-verbindingspogingen vermeldingen in het beveiligingslogboek opleveren die u kunt analyseren.
Volg deze opdrachten om de juiste auditlogging in te schakelen:
- Open de opdrachtprompt als administrator
- Voer uit: auditpol /set /subcategory:”Logon” /success:enable /failure:enable
- Controleer de instellingen met: auditpol /get /subcategory:”Logon”
- Test door een RDP-verbinding te maken en Logboeken te controleren
- Bevestig dat gebeurtenis-ID 4624 met aanmeldingstype 10 in de beveiligingslogboeken verschijnt
Registratie van RDP-sessies in het gebeurtenissenlogboek inschakelen
De operationele logboeken van TerminalServices-LocalSessionManager bevatten gedetailleerde gegevens over sessiebeheer. Die vullen de RDP-sessievermeldingen in het beveiligingslogboek aan met verbindingsdetails en informatie over de sessiestatus. Gebeurtenis-ID 21 toont een geslaagde RDP-sessie, gebeurtenis-ID 23 registreert verbroken verbindingen en gebeurtenis-ID 25 legt vast wanneer gebruikers een eerder verbroken sessie hervatten.
Doorloop deze configuratiestappen:
- Open PowerShell als administrator.
- Voer uit: wevtutil sl Microsoft-Windows-TerminalServices-LocalSessionManager/Operational /e:true
- Controleer met: wevtutil gl Microsoft-Windows-TerminalServices-LocalSessionManager/Operational.
- Controleer in Logboeken of de nieuwe logbron aanwezig is.
- Test de RDP-verbinding om te bevestigen dat de gebeurtenissen verschijnen.
Normale verbindingspatronen vastleggen
Een nulmeting vraagt om systematische analyse van legitiem RDP-gebruik: typische verbindingstijden, geautoriseerde gebruikersaccounts, goedgekeurde bron-IP-adressen en standaardwaarden voor de duur van een sessie. Analyse van historische gegevens laat zien wanneer beheerders normaal gesproken toegang nemen, welke onderhoudsvensters routine zijn en welk gebruikersgedrag te verwachten is. Die gegevens dienen als referentiepunt om afwijkingen op te sporen.
Inzicht in uw normale RDP-patronen helpt u ongebruikelijke activiteit te herkennen die op een beveiligingsdreiging kan wijzen. De opdracht Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4624; Data='10'} haalt RDP-aanmeldingsgebeurtenissen op voor statistische analyse en het berekenen van een nulmeting.
Notificaties instellen voor verdachte activiteit
Geautomatiseerde waarschuwingssystemen controleren realtime gebeurtenisstromen op ongeautoriseerde toegangspogingen, ongebruikelijke verbindingspatronen of verdacht sessiegedrag dat direct onderzoek vereist. Monitoringscripts op basis van PowerShell beoordelen de frequentie van verbindingen, de reputatie van bron-IP-adressen, toegangspogingen buiten kantooruren en reeksen mislukte authenticaties om mogelijke beveiligingsincidenten te signaleren.
Gebeurtenisgestuurde monitoring verstuurt direct een melding zodra er verdachte RDP-sessieactiviteit plaatsvindt op de bewaakte systemen. Met de cmdlet Register-WmiEvent stelt u realtime notificaties in zodat uw securityteam op de hoogte blijft van mogelijke dreigingen.
RDP-sessies ophalen met PowerShell
PowerShell beschikt over ingebouwde mogelijkheden om RDP-verbindingsgegevens uit Windows-gebeurtenissenlogboeken te halen, te filteren en te analyseren via cmdlets die zowel het beveiligingslogboek als de TerminalServices-logbronnen benaderen.
Get-WinEvent gebruiken om RDP-verbindingsgebeurtenissen vast te leggen
De cmdlet Get-WinEvent geeft volledige toegang tot Windows-gebeurtenissenlogboeken met filtermogelijkheden waarmee u RDP-gerelateerde gebeurtenissen isoleert uit enorme logbestanden met duizenden vermeldingen. Met specifieke filterhashtables richt u zich op relevante gebeurtenis-ID’s zoals 4624 voor geslaagde aanmeldingen, 4625 voor mislukte pogingen en TerminalServices-gebeurtenissen met details over sessiebeheer.
Geavanceerde filteropties bevatten tijdsbereiken waarmee u recente RDP-verbindingen binnen een bepaalde periode opvraagt. De opdracht Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4624; StartTime=(Get-Date).AddHours(-24)} haalt de RDP-verbindingen van de afgelopen 24 uur op voor analyse.
Aanmeldingspatronen filteren en analyseren met PowerShell
Dankzij de objectgeoriënteerde architectuur van PowerShell kunt u RDP-gebeurtenisgegevens grondig analyseren via pipelinebewerkingen die verbindingsrecords tegelijk sorteren, groeperen en filteren op meerdere criteria. De cmdlet Where-Object filtert gebeurtenissen op specifieke eigenschappen zoals bron-IP-adressen, gebruikersaccounts of authenticatietypen die bij RDP-verbindingen horen.
Statistische functies zoals Group-Object en Measure-Object berekenen verbindingsfrequenties, brengen ongebruikelijke toegangspatronen aan het licht en genereren overzichtsrapporten die mogelijke beveiligingsproblemen uitlichten. Deze ingebouwde cmdlets maken van ruwe gebeurtenisgegevens bruikbare security-informatie.
Eigen scripts maken voor RDP-sessiemonitoring
Monitoringscripts combineren analyse van gebeurtenissenlogboeken, realtime notificaties en geautomatiseerde rapportage in één PowerShell-oplossing die continu draait zonder handmatig ingrijpen. Aangepaste functies bundelen complexe filterlogica, routines voor gegevensverwerking en opmaakprocedures die gestandaardiseerde rapporten opleveren voor securityteams en management.
Volg deze aanpak bij de ontwikkeling:
- Bepaal uw monitoringvereisten en drempelwaarden voor notificaties.
- Maak PowerShell-functies voor het filteren en analyseren van gebeurtenissen.
- Richt waarschuwingsmechanismen in via e-mail of logsystemen.
- Voeg foutafhandeling en logging toe voor een betrouwbaar script.
- Test het script grondig in uw omgeving.
- Zet het in als geplande taak of Windows-service.
Geavanceerde monitoring met Windows-opdrachten
Naast de basistechnieken met PowerShell maken geavanceerde monitoringimplementaties gebruik van gespecialiseerde Windows-opdrachten, WMI-query’s en systeem-API’s die dieper inzicht geven in de status van RDP-sessiemonitoring en in verbindingsdetails.
WMI-klassen zoals Win32_LogonSession en Win32_NetworkLoginProfile bieden programmatische toegang tot gedetailleerde authenticatie-informatie, waarmee u een volledige beveiligingsanalyse kunt uitvoeren.
Actieve RDP-verbindingen opvragen
De opdracht qwinsta geeft direct inzicht in de huidige status van RDP-sessies, inclusief actieve verbindingen, verbroken sessies en console-aanmeldingen die het gebruik van het systeem laten zien. Deze opdrachtregeltool toont sessie-ID’s, gebruikersnamen, sessienamen, sessietypen en actuele statussen waarmee u ongeautoriseerde actieve verbindingen herkent die direct onderzoek vereisen.
Dankzij PowerShell-integratie via Invoke-Command voert u qwinsta op afstand uit op meerdere systemen. Zo krijgt u centraal zicht op de status van RDP-sessies in uw hele infrastructuur.
Geautomatiseerde responsworkflows inrichten
Geautomatiseerde responssystemen voeren vooraf gedefinieerde acties uit zodra verdachte RDP-activiteit een beveiligingsmelding genereert. Dat verkort de reactietijd en beperkt de mogelijke schade van ongeautoriseerde toegangspogingen. PowerShell-scripts werken samen met securitytools, ticketsystemen en communicatieplatforms om de reactie op gedetecteerde dreigingen te coördineren.
Richtlijnen om te volgen:
- Leg responsprocedures vast voor de verschillende soorten dreigingen.
- Maak PowerShell-functies voor elke responsactie.
- Integreer met bestaande securitytools en communicatiesystemen.
- Richt goedkeuringsworkflows in voor acties met grote impact.
- Voeg logging en audittrails toe voor alle geautomatiseerde acties.
Documentatie- en rapportageprocedures
Uitgebreide documentatie legt monitoringconfiguraties, nulmetingen, drempelwaarden voor notificaties en responsprocedures vast, zodat de implementatie in uw hele omgeving consistent verloopt. Regelmatige rapportage geeft inzicht in RDP-gebruikspatronen, beveiligingsincidenten en de effectiviteit van het monitoringsysteem en ondersteunt zo de continue verbetering.
Bouw een complete strategie voor RDP-sessiemonitoring
Uw RDP-monitoringstrategie heeft regelmatige updates nodig om effectief te blijven tegen veranderende dreigingen en wisselende eisen aan de infrastructuur. Maandelijkse evaluaties van drempelwaarden, basispatronen en detectieregels helpen u om in te spelen op nieuwe aanvalstechnieken en organisatorische veranderingen. Continue verbetering betekent ook dat u threat intelligence-feeds integreert, PowerShell-scripts bijwerkt en geautomatiseerde responsworkflows verfijnt op basis van incidentanalyse en feedback van het securityteam.
Zet de volgende stap in het beveiligen van RDP-toegang
Onbewaakte RDP-sessies zijn een open uitnodiging voor aanvallers. NinjaOne Remote combineert veilige en betrouwbare remote access-tools binnen een compleet platform voor endpoint monitoring en -beheer, waarmee u ongeautoriseerde toegang tot sessies op afstand detecteert en sneller reageert. Start vandaag nog uw gratis trial en neem de controle terug voordat dreigingen door de mazen glippen.
Quick-start guide
Hoewel er geen kant-en-klaar script bestaat dat precies dit doet, biedt NinjaOne verschillende scripts en mogelijkheden die helpen bij het monitoren van RDP-sessies:
1. RDP-gerelateerde scripts:
– Er is een script “Remote Desktop – Check Status and Port” dat de status van Remote Desktop rapporteert en de poort waarop het luistert.
– Met het script “Search Event Log” zoekt u in Logboeken naar specifieke gebeurtenissen op basis van gebeurtenissenlogboek, bron of gebeurtenis-ID’s.
2. Aanpak via het gebeurtenissenlogboek:
U kunt een eigen script maken om RDP-sessies te monitoren door specifieke vermeldingen in het Windows-gebeurtenissenlogboek te controleren. De belangrijkste gebeurtenis-ID’s om in de gaten te houden:
– Gebeurtenis-ID 4624 (geslaagde aanmelding)
– Gebeurtenis-ID 4625 (mislukte aanmeldingspoging)
– Gebeurtenis-ID 4634 (afmelding)
– Gebeurtenis-ID 4647 (door gebruiker gestarte afmelding)
– Gebeurtenis-ID 4778 (sessie opnieuw verbonden)
– Gebeurtenis-ID 4779 (sessie verbroken)
3. Aanbevolen monitoringmethode:
– Gebruik het script “Search Event Log” om notificaties te maken voor onverwachte RDP-sessiegebeurtenissen
– Filter op specifieke voorwaarden zoals:
– Aanmeldingen vanaf onverwachte IP-adressen
– Aanmeldingen buiten kantooruren
– Meerdere mislukte aanmeldingspogingen
Wij raden u aan samen met uw IT-securityteam te bepalen wanneer een RDP-sessie precies “onverwacht” is, op basis van het beveiligingsbeleid van uw organisatie.