/
/

Onverwachte RDP-sessies monitoren met gebeurtenissenlogboeken en PowerShell

door Team Ninja
How to Monitor for Unexpected RDP Sessions Using Event Logs and PowerShell blog banner image

Directe samenvatting

Deze blogpost van NinjaOne biedt een uitgebreide basislijst met CMD-commands en een deep dive duik in Windows-commands met meer dan 70 essentiële cmd-commands voor zowel beginners als gevorderden. Het legt praktische opdrachtpromptcommando’s uit voor file management, directory navigation, network troubleshooting, disk operations en automatisering met echte voorbeelden om de productiviteit te verbeteren. Of u nu fundamentele cmd-commands leert of geavanceerde Windows CLI-tools onder de knie krijgt, deze gids helpt u de Command Prompt effectiever te gebruiken.

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:

  1. Open de opdrachtprompt als administrator
  2. Voer uit: auditpol /set /subcategory:”Logon” /success:enable /failure:enable
  3. Controleer de instellingen met: auditpol /get /subcategory:”Logon”
  4. Test door een RDP-verbinding te maken en Logboeken te controleren
  5. 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:

  1. Open PowerShell als administrator.
  2. Voer uit: wevtutil sl Microsoft-Windows-TerminalServices-LocalSessionManager/Operational /e:true
  3. Controleer met: wevtutil gl Microsoft-Windows-TerminalServices-LocalSessionManager/Operational.
  4. Controleer in Logboeken of de nieuwe logbron aanwezig is.
  5. 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.

FAQs

U detecteert ongeautoriseerde RDP-sessies met Windows-gebeurtenissenlogboeken en PowerShell. Schakel auditlogging in voor gebeurtenis-ID 4624 en 4634 en analyseer de vermeldingen vervolgens met Get-WinEvent in PowerShell.

De belangrijkste gebeurtenis-ID’s voor RDP-monitoring:

  • 4624 – Geslaagde aanmeldingen
  • 4625 – Mislukte aanmeldingspogingen
  • 4634 – Afmeldingen
  • 21, 23 en 25 – TerminalServices-gebeurtenissen die verbindingen, verbroken verbindingen en herverbindingen tonen.

Gebruik de opdracht Get-WinEvent om sessielogboeken uit Logboeken op te halen en te filteren. Analyseer daarna gebruikerspatronen, bron-IP-adressen en aanmeldingsfrequenties met opdrachten als Where-Object en Group-Object.

Een nulmeting van het normale RDP-gebruik helpt u afwijkingen te herkennen. Alles wat afwijkt van het gebruikelijke kan wijzen op ongeautoriseerde toegangspogingen of gecompromitteerde referenties.

NinjaOne beveiligt RDP-toegang met realtime endpoint monitoring en notificaties, zodat IT- en securityteams verdachte RDP-activiteit sneller opmerken en erop reageren.

Dit vindt u misschien ook leuk

Klaar om de moeilijkste delen van IT te vereenvoudigen?

NinjaOne Algemene Voorwaarden

Door op de knop “Ik accepteer” hieronder te klikken, geeft u aan dat u de volgende wettelijke voorwaarden en onze Gebruiksvoorwaarden accepteert:

  • Eigendomsrechten: NinjaOne bezit en blijft eigenaar van alle rechten, aanspraken en belangen in en op het script (inclusief het auteursrecht). NinjaOne geeft u een beperkte licentie om het script te gebruiken in overeenstemming met deze wettelijke voorwaarden.
  • Gebruiksbeperking: U mag het script alleen gebruiken voor uw legitieme persoonlijke of interne bedrijfsdoeleinden en u mag het script niet delen met derden.
  • Republicatieverbod: Het is onder geen beding toegestaan om het script opnieuw te publiceren in een scriptbibliotheek die toebehoort aan of onder controle staat van een andere softwareleverancier.
  • Garantie disclaimer: Het script wordt geleverd “zoals het is” en “zoals het beschikbaar is”, zonder enige vorm van garantie. NinjaOne belooft of garandeert niet dat het script vrij van gebreken zal zijn of dat het aan uw specifieke behoeften of verwachtingen zal voldoen.
  • Risicoaanvaarding: Het gebruik van het script is op eigen risico. U erkent dat het gebruik van het script bepaalde inherente risico’s met zich meebrengt en u begrijpt en aanvaardt elk van deze risico’s.
  • Verklaring van afstand en vrijwaring: U zult NinjaOne niet verantwoordelijk houden voor enige nadelige of onbedoelde gevolgen die voortvloeien uit uw gebruik van het script en u doet afstand van alle wettelijke of billijke rechten of rechtsmiddelen die u tegen NinjaOne kunt hebben met betrekking tot uw gebruik van het script.
  • EULA: Als u een NinjaOne-klant bent, is uw gebruik van het script onderworpen aan de licentieovereenkomst voor eindgebruikers die op u van toepassing is (EULA).