Geschreven door: Martijn Kamminga

Ransomware is nog steeds een van de hoogste bedreigingen van cybercriminaliteit. De hoeveelheid cybercrime incidenten, mede door  ransomware, is goed voor 51%, aldus het CrowdStrike 2020 rapport op Dark Reading. 

(link: https://www.darkreading.com/application-security/ransomware-makes-up-half-of-all-major-incidents/d/d-id/1339667 )

Er zijn diverse typen ransomware, o.a.:

  • Encrypting ransomware
  • Non-encrypting ransomware
  • Targeted ransomware
  • Exfiltration 
  • Mobile ransomware

Natuurlijk wil je weten hoe je jezelf hiertegen kan beschermen. Wij geven hierbij een aantal opties, waaronder de F-Secure en Checkpoint EDR/RDR oplossingen.

Via deze blog wil ik laten zien dat na het encrypten van bestanden, de bestanden worden gedetecteerd met F-Secure en Checkpoint. 

Bestandsintegriteit 

We hebben twee bestanden die (fictief) belangrijk kunnen zijn. Denk hierbij aan backup-, of andere fileshare bestanden.

Een document.txt die wij delen in de folder fileshare.

En een document.txt als backup in de folder backup.

We draaien een Powershell script en we zien dat de bestanden integer zijn. Deze bevatten de tekst “This is a FileShare Document”.

(Het powershell script is aan het eind van dit document te vinden).

Zodra de inhoud wordt bewerkt, al is het maar een spatie, valt de integriteit weg en wordt er een e-mail alert gestuurd naar de mail van de opgegeven afdeling, zoals support@itorganisatie.com. Deze mail wordt verstuurd aan de hand van de e-mail parameters in het PowerShell script.

Bestandsencryptie & Detectie

We gaan de integriteit controleren door de bestanden te encrypten, zoals een ransomware programma het ook zou uitvoeren.

We starten het Ransomware Encrypt script en selecteren de folder C:\fileshare

Na het succesvol uitvoeren van het script wordt de inhoud van folder fileshare ge-encrypt en ziet er als volgt uit.

We draaien de integriteitscheck nog een keer en we zien dat de content is aangepast en dat er een email gestuurd is.

De email die wij ontvangen (en zo hebben ingesteld) is als volgt: 

Even snel samengevat is het proces dan als volgt wanneer wij de backup share ook encrypten.

Waarop wij dan 2 mails binnen krijgen. Die van de fileshare (zoals eerder al encrypted) en die van de backup share.

Minder risico’s en bewustwording

In zo’n geval heeft u dus een probleem. Notificaties zijn natuurlijk goed en tegen nul euro kosten ook financieel prettig, maar wat u zoekt is bescherming en/of isolatie. In zo’n geval komt F-Secure RDR met cliënt isolatie om de hoek kijken, of natuurlijk Checkpoint die het gevaar (threat) meteen stopt. Niet altijd is het wenselijk om een cliënt in isolatie te stoppen om alleen nog maar met F-Secure servers te kunnen praten. Bedrijfscontinuïteit is ook van belang. Dat hangt natuurlijk af van het aantal incidenten. Na alle incidenten die wij afgelopen jaren hebben ervaren is een Security Awareness training, die wij ook klassikaal verzorgen, een absolute must om incidenten te verminderen.

F-Secure

In onze F-Secure portal met RDR/EDR oplossing is nu gedetecteerd dat er een incident heeft plaatsgevonden zoals hieronder afgebeeld. 

We bekijken het incident en we zien dat Powershell is uitgevoerd:

Verdere inspectie geeft ons meer inzicht in wat er eigenlijk is gebeurd.

Waarop wij samen met u kunnen besluiten om een policy in te zetten om systemen automatisch te isoleren met een bepaalde threat-categorie.

Checkpoint

In het geval van Checkpoint wordt het bestand, zodra het aangeroepen is en methodes bevat die onveilig zouden kunnen zijn, online in een Sandbox omgeving geplaatst om de code te analyseren. Wanneer deze bedreigend is wordt de code gestopt, wordt het lokaal gerapporteerd en online in de Sandblast omgeving gestopt.

Dit script is een goede start, maar wil je naast meldingen ook beveiligen dan is het zeker aan te raden dat u kiest voor een product als F-Secure of Checkpoint.

F-secure of Checkpoint

Om een gedegen keus te maken tussen de verschillende producten is onderzoek nodig. Misschien heeft u een eerste indruk van een product, of wat wij hebben laten zien doet u al hebben besloten wat de keuze gaat worden. Er is een tool die u daar inzage in kan geven, genaamd attack-eval-scoring. Het ziet er als volgt uit, en aan de hand daarvan kunt u een beslissing maken voor in elk geval F-Secure. De resultaten hieronder zijn een indicator van wat u kan verwachten op het gebied van bescherming. Wees er wel bewust van dat geen enkel product 100% bescherming biedt. Echter zonder bescherming bent u uiterst kwetsbaar. Met een Endpoint Security en EDR/RDR oplossing bent u voor een goede 80-90% gedekt. Overige tooling zoals een Honeypot of Network Analyzer bieden dat stukje extra inzicht in uw netwerk op het gebied van detectie en kan ingezet worden bij onze Basic/Advanced Security Monitoring.

Wat kan Networking4all voor u betekenen?

Networking4all heeft de expertise in huis om voor uw organisatie een Endpoint Security met EDR/RDR oplossing te integreren. Elke onderneming is anders, daarom gaan wij graag met u in gesprek wat voor uw organisatie de beste oplossing is.

U kunt tijdens kantooruren contact met ons opnemen waarna, indien gewenst, een gesprek ingepland kan worden samen met een van onze security specialisten. 

Uiteraard zijn er bij ons ook diensten waarbij wij 24/7 paraat staan om u te ondersteunen. Dit kan bij ons Advanced Security Monitoring pakket.

Voor vragen bel of mail ons op:

+31 (0)20 788 10 30 

sales@networking4all.com

Bijlage en setup:

Voer de Powershell code op de volgende manier uit:

  • Pas de mail parameters aan
  • Pas de file en backup parameters aan
  • Gebruik een apart backup/service account  
    • Met permissies op de File Share
    • Met permissies op de Backup Share
      • Bij voorkeur voor alleen die gedeelde submap (waar Domain Users ook rechten hebben)
  • Dit op de file server
  • Maak een 1 minuut scheduled task (Ja, dat kan.)
  • Pas de contents van de file aan naar 1 teken meer 
    • En informeer uw collega’s dat u gaat testen
  • Zet het in productie

Powershell integriteit check code :

##### FileShare Section #####

# Mail Settings FileShare Document Missing
function FileShareFileMissing () {
    $smtpFrom = "ITSupport@domain.com"
    $smtpTo = "ITSupport@domain.com"
    $messageSubject = "Alert: Indicator the File has been removed/renamed"
    $messageBody = "Please investigate the share on \\FS01\Data$ and verify it's not renamed and encrypted"
    $smtpServer = "smtp.gmail.com"
    $smtp = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
    $smtp.EnableSsl = $true
    $smtp.Credentials = New-Object System.Net.NetworkCredential("ITSupport@domain.com", "APPPASSWORD");
    $smtp.Send($smtpFrom , $smtpTo, $messageSubject, $messageBody)
	}

# Check/Create File:
    if (Test-Path -Path "\\FS01\Data$\Document.txt") {
    write-host "[*] -------------------------------------" -Foregroundcolor yellow
        write-host "[*] File allready exists" -Foregroundcolor green
    }
    else 
    {
    New-Item "\\FS01\Data$\Document.txt" -ItemType File -Value 'This is a FileShare Document'
    FileShareFileMissing
    }

# Mail Settings FileShare Alert

function FileShareAlertIT () {
    $smtpFrom = "ITSupport@domain.com"
    $smtpTo = "ITSupport@domain.com"
    $messageSubject = "Alert: FileShare Folder Compromised! Check and stop the Backup!"
    $messageBody = "Please investigate the file on \\FS01\Data$\Document.txt and stop the backup process NOW!"
    $smtpServer = "smtp.gmail.com"
    $smtp = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
    $smtp.EnableSsl = $true
    $smtp.Credentials = New-Object System.Net.NetworkCredential("ITSupport@domain.com", "APPPASSWORD");
    $smtp.Send($smtpFrom , $smtpTo, $messageSubject, $messageBody)
    }

# Read File on File Share: 

    $CheckContents = Get-Content -Path "\\FS01\Data$\Document.txt"
        if ($CheckContents -ne "This is a FileShare Document") {
            write-host "[*] Backup of FileShare Integrity is Compromised" -Foregroundcolor yellow
            write-host "[*] Sending out an e-mail ALERT" -Foregroundcolor yellow
            FileShareAlertIT
            write-host "[*] Finished"
    }
    else 
    {

    write-host "[*] -------------------------------------" -Foregroundcolor yellow
    write-host "[*] FileShare Integrity is Healthy"  -Foregroundcolor green
    write-host "[*] Awaiting next check..." -Foregroundcolor green
    write-host "[*] Running every 1-5 minutes" -Foregroundcolor green
    write-host "[*] Finished" -Foregroundcolor green
    write-host "[*] -------------------------------------" -Foregroundcolor yellow
    }

##### End FileShare Section #####
##### Use below in this powershell script or a seperate one #####
##### Backup Section #####

# Mail Settings BackupShare Alert

function BackupShareAlertIT () {
    $smtpFrom = "ITSupport@domain.com"
    $smtpTo = "ITSupport@domain.com"
    $messageSubject = "ALERT, ALERT: Backups have been compromised! Kill the process!"
    $messageBody = "Please investigate the file on \\BACKUPSRV\Data$\Document.txt and use the Offline Backups if Compromised!"
    $smtpServer = "smtp.gmail.com"
    $smtp = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
    $smtp.EnableSsl = $true
    $smtp.Credentials = New-Object System.Net.NetworkCredential("ITSupport@domain.com", "APPPASSWORD");
    $smtp.Send($smtpFrom , $smtpTo, $messageSubject, $messageBody)
    }

# Read File on Backup Share: # Relative path to File Share File Location

    $CheckContentsBackupDir = Get-Content -Path "\\BACKUPSRV\Data$\Document.txt" 
        if ($CheckContentsBackupDir -ne "This is a FileShare Document") {
            write-host "[*] Backup of FileShare Integrity is Compromised" -Foregroundcolor yellow
            write-host "[*] Sending out an e-mail ALERT" -Foregroundcolor yellow
            BackupShareAlertIT
            write-host "[*] Finished"
    }
    else 
    {
    write-host "[*] Backup FileShare Integrity is Healthy"  -Foregroundcolor green
    write-host "[*] Awaiting next check..." -Foregroundcolor green
    write-host "[*] Running every 1-5 minutes" -Foregroundcolor green
    write-host "[*] Finished" -Foregroundcolor green
    write-host "[*] -------------------------------------" -Foregroundcolor yellow
    }

##### End Backup Section #####

Deel artikel via: