Cover
Zacznij teraz za darmo 4_Lecture_4_BasicDynamicAnalysis.pdf
Summary
# Statische versus dynamische analyse
Statische en dynamische analyse zijn twee complementaire benaderingen voor malware-analyse die verschillende inzichten bieden in het gedrag en de functionaliteit van verdachte bestanden [2](#page=2).
### 1.1 Statische analyse
Statische analyse omvat het onderzoeken van een bestand zonder het daadwerkelijk uit te voeren. Deze methode is veilig omdat er geen executierisico is. Technieken omvatten het inspecteren van strings, PE-headers en 'magic bytes'. Statische analyse kan waardevolle informatie onthullen, zoals geïmporteerde functies, ingebedde strings, IP-adressen en domeinnamen [3](#page=3).
#### 1.1.1 Beperkingen van statische analyse
Ondanks de veiligheid en de inzichten die statische analyse biedt, heeft het ook beperkingen. Obfuscatie en packing technieken kunnen de analyse bemoeilijken. Complexe code of een grote bestandsgrootte kan tijdrovend zijn om te analyseren. Dynamisch opgeloste imports, zoals het importeren van `WinExec` direct, kunnen gemist worden. In plaats daarvan kan een malware `LoadLibrary("kernel32.dll")` aanroepen om de DLL te laden, vervolgens `GetProcAddress("WinExec")` gebruiken om het geheugenadres van de `WinExec` functie te verkrijgen, en deze functie vervolgens aan te roepen via die pointer. Statische analyse onthult niet het daadwerkelijke gedrag van de malware en kan moeite hebben met droppers en stagers [4](#page=4).
### 1.2 Dynamische (gedrags)analyse
Dynamische analyse, of gedragsanalyse, wordt uitgevoerd nadat statische analyse is voltooid en wordt beschouwd als een aanvulling daarop. Deze methode maakt het mogelijk om de functionaliteit van de malware te observeren terwijl deze actief is. Het is echter belangrijk op te merken dat ook dynamische analyse niet volledig waterdicht is [5](#page=5).
> **Tip:** Statische en dynamische analyse mogen nooit worden overgeslagen; ze vullen elkaar aan om een completer beeld te krijgen van de malware.
---
# Dynamische analyse: methoden en tools
Dynamische analyse is een methode om malware te bestuderen door deze uit te voeren in een gecontroleerde omgeving en de gedragingen ervan te observeren en vast te leggen [26](#page=26) [6](#page=6).
### 2.1 Indicatoren om naar te zoeken tijdens dynamische analyse
Bij dynamische analyse worden specifieke indicatoren gezocht die wijzen op kwaadaardige activiteiten. Deze indicatoren omvatten [6](#page=6):
* **Registeractiviteit:** Wijzigingen aan het Windows-register waaronder het instellen van persistentie [21](#page=21) [6](#page=6).
* **Procesactiviteit:** Het creëren van nieuwe processen (child processes) [6](#page=6).
* **Bestandsactiviteit:** Het aanmaken of verwijderen van bestanden [6](#page=6).
* **Netwerkactiviteit:** Communicatie met externe domeinen of het downloaden van bestanden [6](#page=6).
### 2.2 Sandboxes voor dynamische analyse
Sandboxes zijn geïsoleerde omgevingen die worden gebruikt om verdachte software veilig uit te voeren zonder het host-systeem te infecteren. Er zijn verschillende soorten sandboxes beschikbaar [8](#page=8):
* **Lokaal/Privé:**
* Cuckoo Sandbox: Een volledig open-source sandbox met een leercurve [8](#page=8).
* Sandboxie Plus/Classic: Eveneens volledig open-source [8](#page=8).
* Uw eigen VM: Een virtuele machine die u zelf configureert met uw eigen tools [8](#page=8).
* **Online/Cloud:**
* Hybrid Analysis: Biedt een beperkte gratis versie [8](#page=8).
* Any.run: Een betaalde dienst [8](#page=8).
* Joe Sandbox: Beschikbaar in betaalde en lokale versies [8](#page=8).
* VirusTotal: Voert ook enige dynamische analyse uit [8](#page=8).
> **Tip:** Gebruik nooit online/cloud sandboxes met samples van CTF-evenementen of eigen samples, vanwege beveiligingsrisico's [8](#page=8).
#### 2.2.1 Problemen met sandboxes
Malware kan detecteren dat het in een sandbox draait, wat kan leiden tot vermijding van detectie of veranderd gedrag. Veelvoorkomende detectiemethoden en uitdagingen zijn [9](#page=9):
* **Detectie van VM-technologie:** Malware kan controleren of het binnen een virtuele machine draait [9](#page=9).
* **Ontbrekende componenten:** Sandbox-omgevingen missen mogelijk benodigde DLL's of omgevingsvariabelen [9](#page=9).
* **OS-incompatibiliteit:** Het besturingssysteem in de sandbox is mogelijk niet compatibel [9](#page=9).
* **Externe input vereist:** Sommige malware vereist externe input, zoals internettoegang, wat in een sandbox beperkt kan zijn [9](#page=9).
* **Trage uitvoering:** Malware die langzaam is in het uitvoeren van de payload of die lange periodes slaapt, kan worden gemist omdat sandboxes niet oneindig wachten [9](#page=9).
### 2.3 Uitvoeren van malware
Wees altijd voorzichtig bij het uitvoeren van potentieel kwaadaardige software [11](#page=11).
* **Executables:** Kunnen vaak direct worden uitgevoerd [11](#page=11).
* **DLL's:**
* Normale DLL's hebben exports, specifieke functies die direct kunnen worden aangeroepen. Dit kan met `rundll32.exe`: `rundll32.exe {DLLnaam}, {Export} [argumenten]`. Voorbeeld: `rundll32.exe rip.dll, Install C:\` [11](#page=11).
* Sommige DLL's moeten worden omgezet naar een uitvoerbaar bestand als er geen exports zijn. Dit kan door de `IMAGE_FILE_DLL` flag in de PE `IMAGE_FILE_HEADER` te verwijderen. Dit houdt in dat de 'Characteristics' worden aangepast, vaak door een '2' (DLL) te vervangen door een '0'. Een DLL die als EXE wordt opgeslagen, zal echter alleen iets doen als deze een `main` of `WinMain` functie bevat [11](#page=11).
> **Tip:** Gebruik nooit de dubbelklik-methode. Gebruik de command line, zelfs voor GUI-programma's, door `Shift+Rechtsklik` in de map te gebruiken [11](#page=11).
#### 2.3.1 Wat is een DLL?
DLL staat voor Dynamic-Link Library. Het is een gedeelde bibliotheek die in Windows-programma's wordt gebruikt. DLL's zijn collecties van functies, klassen of bronnen die door meerdere programma's kunnen worden gebruikt, wat zorgt voor een modulair ontwerp, minder schijfruimte en gemakkelijker updates. Voorbeelden zijn `kernel32.dll` (kern-API's) en `user32.dll` (GUI-functies) [12](#page=12).
#### 2.3.2 Installeren van malware als service
Service DLL's zijn ook veelvoorkomend en kunnen zichzelf installeren als service via een 'install' export. Dit kan met `rundll32 [ipr32x.dll,InstallService [ServiceName]` gevolgd door `net start [ServiceName]`. Handmatige installatie kan via de registry editor in `HKLM\SYSTEM\CurrentControlSet\Service\[AppMgmt]\Parameters\ServiceDLL` [13](#page=13).
Een EXE als service installeren kan met het commando `sc create`. Let wel, niet elke EXE kan als service worden geïnstalleerd; het moet een callback naar de ServiceManager bevatten [13](#page=13).
### 2.4 Monitoring tools
Om het gedrag van malware te monitoren, worden diverse tools gebruikt.
#### 2.4.1 Process Explorer
Process Explorer is een krachtig hulpmiddel uit de Sysinternals suite dat meer functionaliteit biedt dan de standaard Windows Taakbeheer. Het toont de ouder-kindrelaties van processen en biedt de mogelijkheid om de weergegeven kolommen te configureren [15](#page=15) [16](#page=16).
* **Belangrijke functies:**
* Toont geladen DLL's per proces (`Ctrl+D`) [16](#page=16).
* Toont handlers (bestands-, event-, thread-handlers) per proces (`Ctrl+H`) [16](#page=16).
* Toont proces-strings in schijf en geheugen [16](#page=16).
* Automatische vernieuwing van de weergave (aanpasbaar) [16](#page=16).
* Groene kleur duidt op nieuwe processen, rode kleur op beëindigde processen [16](#page=16).
* Pauzeren van de vernieuwing met de spatiebalk (`SPACE`) [16](#page=16).
> **Tip:** Als een proces slechts seconden draait, wordt het mogelijk niet zichtbaar in Process Explorer omdat het een polling-mechanisme gebruikt in plaats van een push-mechanisme [18](#page=18).
Bij het dubbelklikken op een proces worden de eigenschappen ervan getoond, inclusief statistieken, het pad naar de executable en strings. Ook kan hier de digitale handtekening van de EXE worden geverifieerd. Het ontbreken van een handtekening kan een indicatie van kwaadaardigheid zijn [17](#page=17).
#### 2.4.2 Process Monitor (Procmon)
Process Monitor is vergelijkbaar met Wireshark, maar dan voor processen. Het vangt continu gebeurtenissen op totdat het wordt gestopt of de geheugenruimte vol is [18](#page=18).
* **Filtering:** Vanwege de grote hoeveelheid gegenereerde events is filtering essentieel. Procmon biedt automatische filters voor Register, Bestandssysteem, Procesactiviteit en netwerkevents. Goede filters zijn bijvoorbeeld `regsetvalue` en `writefile` operaties [19](#page=19).
#### 2.4.3 Regshot
Regshot is een tool specifiek voor registeranalyse. Het wordt gebruikt om snapshots van het register te maken voor en na de executie van malware. Door de verschillende snapshots te vergelijken, kunnen wijzigingen aan hives, waarden en keys worden geïdentificeerd [20](#page=20).
#### 2.4.4 Belangrijke registry keys voor persistentie
Bij het onderzoeken van opstartmechanismen en persistentie zijn de volgende registry keys van belang [21](#page=21):
* `HKCU\Software\Microsoft\CurrentVersion\Run`
* `HKCU\Software\Microsoft\CurrentVersion\RunOnce`
* `HKLM\Software\Microsoft\CurrentVersion\Run`
* `HKLM\Software\Microsoft\CurrentVersion\RunOnce`
* `HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tasks` (voor geplande taken)
### 2.5 Faken van het netwerk
Om netwerkcommunicatie van malware te simuleren en te analyseren zonder echte verbindingen te maken, kunnen netwerk "fake"-diensten worden opgezet [22](#page=22) [23](#page=23).
#### 2.5.1 Handmatige methoden
* **Fake DNS:**
* ApateDNS: Een gratis GUI-tool voor Windows die op alle DNS-verzoeken hetzelfde adres antwoordt [22](#page=22).
* fakeDNS.py: Een gratis Linux-tool die hetzelfde doet [22](#page=22).
* **Netcat webserver:** Netcat kan worden ingesteld om te luisteren op een specifieke poort (bijvoorbeeld 80) en alle inkomende verbindingen vast te leggen [22](#page=22).
* **INetSim:** Een gratis, Linux-gebaseerde VM die fake DNS, HTTP, HTTPS, FTP, IRC en meer simuleert [22](#page=22).
#### 2.5.2 Automatische methode met FakeNet(-NG)
FakeNet(-NG) is een gratis command-line tool voor Windows die een breed scala aan diensten nabootst, waaronder DNS, HTTP, HTTPS, PING en EMAIL. Het maakt gebruik van een Layered Service Provider om zich te 'hooken' op de `send()` en `connect()` API-calls [23](#page=23).
* **Functionaliteit:**
* Fake DNS, HTTP, HTTPS, PING en EMAIL [23](#page=23).
* Genereert een pcap-bestand met alle netwerkactiviteit voor verdere analyse [24](#page=24).
* Ondersteunt plug-ins voor aangepaste responses, zoals voor SMTP, of het aanpassen van de standaard HTTP-webpagina [24](#page=24).
* Beschikbaar op GitHub [24](#page=24).
### 2.6 Dynamische analyse breakdown
Het uitvoeren van dynamische analyse volgt een gestructureerd proces [26](#page=26) [27](#page=27):
1. **Omgevingsopzet:** Creëer een veilige, gecontroleerde en geïsoleerde VM-omgeving die een realistische systeemsituatie nabootst [26](#page=26).
2. **Baseline capture:** Maak een snapshot van de VM in de 'schone' staat. Dit dient als referentiepunt voor systeembestanden, registerstatussen, lopende processen en netwerkconfiguratie [26](#page=26).
3. **Tool deployment:** Installeer en configureer alle benodigde monitoringstools (bv. Regshot, Procmon, FakeNet-NG). Maak een initiële Regshot snapshot [26](#page=26).
4. **Malware executie:** Voer de malware uit in de geïsoleerde omgeving. Gebruik de command line om output te kunnen observeren [27](#page=27).
5. **Observatie & logging:** Laat de malware gedurende een adequate periode draaien terwijl de monitoringstools alles vastleggen [27](#page=27).
6. **Analyse van verzamelde data:** Stop de malware en de monitoringstools. Analyseer de logs, maak een tweede Regshot snapshot en vergelijk deze met de initiële baseline. Het doel is om de veranderingen in de systeemtoestand te identificeren [27](#page=27).
---
# Netwerk simulatie en omgeving
Om netwerkactiviteit tijdens malware-analyse effectief te observeren en vast te leggen, is het simuleren van een gecontroleerde netwerkomgeving cruciaal. Dit stelt analisten in staat om te zien hoe malware communiceert met externe servers zonder daadwerkelijke blootstelling aan potentieel gevaarlijke netwerken. Er zijn zowel handmatige als geautomatiseerde technieken beschikbaar voor het opzetten van dergelijke gesimuleerde omgevingen [22](#page=22) [23](#page=23).
### 3.1 Handmatige netwerksimulatie technieken
Handmatige methoden vereisen meer configuratie, maar bieden fijne controle over de gesimuleerde diensten [22](#page=22).
#### 3.1.1 Fake DNS tools
Fake DNS tools zijn essentieel om alle DNS-verzoeken die door de malware worden gegenereerd, af te vangen en te beantwoorden. Deze tools kunnen zo geconfigureerd worden dat ze alle DNS-verzoeken beantwoorden met een specifiek, gecontroleerd IP-adres [22](#page=22).
* **ApateDNS**: Een gratis GUI-tool voor Windows die alle DNS-verzoeken met hetzelfde adres beantwoordt [22](#page=22).
* **fakeDNS.py**: Een gratis tool voor Linux die hetzelfde functionaliteit biedt als ApateDNS [22](#page=22).
#### 3.1.2 Netcat webserver
Netcat (nc) is een veelzijdig hulpprogramma voor TCP-communicatie dat kan worden gebruikt om eenvoudige webservers te simuleren. Door Netcat te laten luisteren op poort 80, gecombineerd met een fake DNS-tool, kunnen alle inkomende verbindingen zichtbaar worden gemaakt [22](#page=22).
* Voorbeeld: `nc -l -p 80` [22](#page=22).
* Een alternatieve Python 3 commando is: `python3 -m http.server 80` [22](#page=22).
#### 3.1.3 INetSim
INetSim is een gratis, Linux-gebaseerde virtuele machine die diverse netwerkdiensten kan simuleren. Het ondersteunt onder andere fake DNS, HTTP, HTTPS, FTP en IRC [22](#page=22).
### 3.2 Geautomatiseerde netwerksimulatie met FakeNet-NG
FakeNet-NG biedt een geautomatiseerde en gebruiksvriendelijke oplossing voor het simuleren van netwerkomgevingen tijdens malware-analyse [23](#page=23).
#### 3.2.1 Functionaliteit van FakeNet-NG
FakeNet-NG is een gratis command-line tool voor Windows die vele diensten simuleert en positief beantwoordt. Het kan reageren op DNS, HTTP, HTTPS, PING en e-mail verzoeken. Het maakt gebruik van een Layered Service Provider (LSP) om de `send()` en `connect()` API-aanroepen te 'hooken', waardoor het onderschepte netwerkverkeer kan manipuleren. De tool is gebouwd op Python en is volledig configureerbaar [23](#page=23).
#### 3.2.2 Analyse en uitbreidbaarheid
Een belangrijk voordeel van FakeNet-NG is de mogelijkheid om een pcap-bestand te genereren dat alle netwerkactiviteit vastlegt voor verdere analyse. Daarnaast ondersteunt FakeNet-NG plug-ins, wat de functionaliteit verder uitbreidt [24](#page=24).
* **Voorbeelden van plug-in gebruik**:
* Het creëren van een aangepast script voor SMTP-antwoorden, specifiek voor bepaalde malware-gedragingen [24](#page=24).
* Het aanpassen van de standaard HTTP-webpagina die wordt getoond [24](#page=24).
FakeNet-NG is beschikbaar op GitHub [24](#page=24).
> **Tip:** Het gebruik van geautomatiseerde tools zoals FakeNet-NG versnelt het opzetten van de analyseomgeving aanzienlijk, waardoor analisten zich meer kunnen richten op de analyse van het malware-gedrag zelf [23](#page=23).
> **Voorbeeld:** Een analist die een nieuwe malware-sample analyseert, kan FakeNet-NG opzetten om te observeren met welke command-and-control (C2) servers de malware probeert te communiceren, welke data het probeert te exfiltreren, en hoe het zich presenteert aan het gesimuleerde netwerk [23](#page=23) [24](#page=24).
---
# Praktische laboratoriumoefeningen
Deze sectie beschrijft de praktische laboratoriumoefeningen waarbij studenten worden aangemoedigd om zowel statische als dynamische analysetechnieken toe te passen om verborgen "flags" te ontdekken binnen verschillende uitvoerbare bestanden en DLL's [29](#page=29).
### 4.1 Doelstellingen van de oefening
Het primaire doel van deze laboratoriumoefeningen is om studenten praktische ervaring te bieden met het toepassen van basis statische en dynamische analyse op softwarecomponenten om specifieke informatie (flags) te achterhalen. Dit traint hun vaardigheden in het onderzoeken van uitvoerbare bestanden en dynamische-link bibliotheken (DLL's) [29](#page=29).
### 4.2 Opdrachten en uitdagingsniveaus
De opdrachten variëren in complexiteit, met een aantal kernopdrachten en optionele uitdagingen.
#### 4.2.1 Kernopdrachten
De kernopdrachten vereisen het gebruik van zowel statische als dynamische analyse om flags te vinden in de volgende bestanden:
* **L3a-FrameworkQuestion.exe**: Een uitvoerbaar bestand [29](#page=29).
* MD5-hash: `719729d8480c3ad43549f6892b0dbfa2` [29](#page=29).
* **L3b-Flippo.dll**: Een dynamische-link bibliotheek [29](#page=29).
* MD5-hash: `6c0a71c2b56e013cea17f99eda288004` [29](#page=29).
* **L3c-Shipme.dll**: Een dynamische-link bibliotheek [29](#page=29).
* MD5-hash: `bfaacc08d5d7165ffb3f1e5db9b9398a` [29](#page=29).
* **L3d-Dropper.exe**: Een uitvoerbaar bestand met een verborgen derde vlag [29](#page=29).
* MD5-hash: `b41555e9bcd2ed6390ba45643800f9bb` [29](#page=29).
#### 4.2.2 Optionele uitdagingen
Er zijn ook optionele uitdagingen beschikbaar die verder gaan dan de vereisten voor de examens.
* **L3e-EvaluationVersion.exe**: Dit is een moeilijke opdracht die als een aanzienlijke uitdaging wordt beschouwd en buiten de examenstof valt [29](#page=29).
* Bevat 4 flags [29](#page=29).
* MD5-hash: `fb06bb20d730bb154eadc444783c04f7` [29](#page=29).
> **Tip:** Voor een efficiënte aanpak is het raadzaam om eerst statische analyse uit te voeren om een globaal beeld te krijgen van de functionaliteit van het bestand, gevolgd door dynamische analyse om het gedrag tijdens uitvoering te observeren.
> **Voorbeeld:** Bij het analyseren van een DLL met statische tools zou je kunnen zoeken naar geïmporteerde functies die wijzen op verdachte activiteiten, zoals netwerkcommunicatie of bestandmanipulatie. Vervolgens zou je met dynamische analyse, zoals een debugger of een sandbox-omgeving, kunnen observeren welke van deze functies daadwerkelijk worden aangeroepen en met welke parameters.
---
## Veelgemaakte fouten om te vermijden
- Bestudeer alle onderwerpen grondig voor examens
- Let op formules en belangrijke definities
- Oefen met de voorbeelden in elke sectie
- Memoriseer niet zonder de onderliggende concepten te begrijpen
Glossary
| Term | Definition |
|------|------------|
| Statische analyse | Een methode om software te onderzoeken zonder deze uit te voeren. Dit omvat het inspecteren van bestandsstructuren, strings, PE-headers en andere metadata om informatie te verkrijgen over de functionaliteit van het programma. |
| Dynamische analyse | Een methode om software te onderzoeken door deze uit te voeren in een gecontroleerde omgeving (zoals een sandbox of virtuele machine) en het gedrag ervan te observeren. Dit helpt bij het identificeren van acties zoals registerwijzigingen, procescreatie, bestandshandelingen en netwerkcommunicatie. |
| PE-header (Portable Executable header) | Een structuur aan het begin van een uitvoerbaar bestand op Windows-systemen die metadata bevat over het bestand, zoals architectuur, secties, import- en exporttabellen. |
| Obfuscation | Technieken die worden gebruikt om code moeilijker te lezen en te begrijpen, wat de reverse engineering bemoeilijkt. Dit kan onder meer het versleutelen van strings, het wijzigen van de controleflow of het gebruiken van anti-debugging technieken omvatten. |
| Packer | Een programma dat een uitvoerbaar bestand comprimeert of versleutelt om de bestandsgrootte te verkleinen of detectie te omzeilen. Bij uitvoering wordt de originele code gedecodeerd en uitgevoerd vanuit het geheugen. |
| WinExec | Een Windows API-functie die een string interpreteert als een commando en dit uitvoert. |
| LoadLibrary | Een Windows API-functie die een DLL laadt in het adresbereik van het aanroepende proces. |
| GetProcAddress | Een Windows API-functie die het geheugenadres van een geëxporteerde functie uit een geladen DLL retourneert. |
| Sandbox | Een geïsoleerde omgeving, vaak een virtuele machine, die wordt gebruikt om potentieel schadelijke software veilig uit te voeren en te analyseren zonder het hostsysteem te infecteren. |
| Cuckoo Sandbox | Een open-source geautomatiseerd malware-analysedesk die dynamische analyse uitvoert en gedetailleerde rapporten genereert over het gedrag van de sample. |
| Sandboxie | Een programma dat toepassingen isoleert in het besturingssysteem, zodat deze geen permanente wijzigingen op het systeem kunnen aanbrengen. |
| Process Explorer | Een geavanceerd hulpprogramma van Microsoft Sysinternals dat gedetailleerde informatie toont over draaiende processen, inclusief hun boomstructuur, geladen DLL's, handvatten en prestatiegegevens. |
| Process Monitor (Procmon) | Een krachtig hulpprogramma van Microsoft Sysinternals dat realtime systeembusactiviteit vastlegt, inclusief bestands-, register-, proces-, netwerk- en threadactiviteit. |
| RegShot | Een open-source hulpprogramma dat twee snapshots van het Windows-register vergelijkt om wijzigingen te identificeren die door een programma zijn aangebracht. |
| Persistence (Persistentie) | Technieken die door malware worden gebruikt om ervoor te zorgen dat deze opnieuw wordt gestart na een systeemherstart of het sluiten van het programma, bijvoorbeeld door middel van registervermeldingen of geplande taken. |
| FakeNet-NG | Een open-source hulpprogramma dat netwerkdiensten simuleert om de netwerkactiviteit van malware te isoleren en te analyseren. Het kan reageren op DNS-, HTTP-, HTTPS- en andere verzoeken. |
| DLL (Dynamic-Link Library) | Een bibliotheek met functies en resources die door meerdere programma's tegelijk kunnen worden gebruikt op Windows-systemen. |
| Rundll32.exe | Een Windows-programma dat DLL-functies kan uitvoeren. |
| Service DLL | Een DLL die ontworpen is om geïnstalleerd te worden als een Windows-service om langdurige functionaliteit te bieden. |
| IOC (Indicator of Compromise) | Bewijsstukken die wijzen op een mogelijke inbreuk op de beveiliging, zoals verdachte netwerkverbindingen, aangepaste bestanden of ongeldige registervermeldingen. |
| Dropper/Stager | Een type malware dat is ontworpen om andere, meer schadelijke malware (de payload) te downloaden en uit te voeren. Stagers zijn vaak klein en proberen detectie te ontwijken. |