Om Wazuh met VirusTotal te integreren, schakelt u FIM in om belangrijke mappen te bewaken, voegt u de integratie met uw VirusTotal-API-sleutel toe in ossec.conf, en Wazuh stuurt automatisch de hash van elk nieuw of gewijzigd bestand naar de 70+ antivirusengines van VirusTotal.
Hoe werkt de Wazuh FIM- en VirusTotal-integratie?
FIM (File Integrity Monitoring) detecteert nieuwe of gewijzigde bestanden, maar weet niet of ze kwaadaardig zijn. VirusTotal analyseert hashes tegen meer dan 70 antivirusengines. Door ze te integreren, stuurt Wazuh automatisch elk verdacht bestand naar VirusTotal en krijgt u meldingen direct in het dashboard.
Wat zijn de limieten van de gratis API?
Voordat u iets configureert, leer de limieten kennen, want ze bepalen welke mappen u bewaakt:
- 4 verzoeken/minuut
- 500 verzoeken/dag
Als u te veel drukke mappen bewaakt, gebruikt u de limiet binnen enkele uren op. De oplossing: wees chirurgisch over welke mappen bestanden naar VirusTotal sturen met het attribuut report_changes.
Premium API: sinds oktober 2025 begint het Lite-plan bij $5.000/jaar. Voor labs en middelgrote omgevingen volstaat de gratis API mits goed geconfigureerd.
Stap 1: de API-sleutel verkrijgen
- Ga naar virustotal.com
- Maak een gratis account aan als u er nog geen heeft
- Klik op uw avatar → API key
- Kopieer de sleutel
Stap 2: de integratie configureren op de Manager
Bewerk het configuratiebestand van de Wazuh-server:
nano /var/ossec/etc/ossec.conf
Voeg dit blok toe vóór de sluitende tag </ossec_config>:
<integration>
<name>virustotal</name>
<api_key>TU_API_KEY_AQUI</api_key>
<rule_id>550,554</rule_id>
<alert_format>json</alert_format>
</integration> Uitleg:
rule_id 550: nieuw bestand gedetecteerd door FIMrule_id 554: gewijzigd bestand- Telkens als FIM iets detecteert in een bewaakte map, stuurt het de SHA256-hash naar VirusTotal
Herstart de manager:
systemctl restart wazuh-manager
systemctl status wazuh-manager Bekijk het integratielog:
tail -f /var/ossec/logs/integrations.log Stap 3: hoe configureer je FIM op de Agent?
Bewerk op de agent /var/ossec/etc/ossec.conf en bepaal welke mappen FIM bewaakt. Alleen mappen met report_changes="yes" sturen hashes naar VirusTotal:
<syscheck>
<!-- Volledige scan eenmaal per dag -->
<frequency>86400</frequency>
<scan_on_start>yes</scan_on_start>
<!-- Mappen met HOOG RISICO: bewaakt MET VirusTotal -->
<directories realtime="yes" check_all="yes" report_changes="yes">/tmp</directories>
<directories realtime="yes" check_all="yes" report_changes="yes">/root</directories>
</syscheck> Onderbouwing:
/tmp,/root: waar malware doorgaans terechtkomt → ja, VirusTotal/etc,/bin: systeemwijzigingen, geen malware → gewone FIM, geen VirusTotal
Herstart de agent:
systemctl restart wazuh-agent Stap 4: hoe test je met een EICAR-bestand?
Het EICAR-testbestand is een standaard om antivirus te testen zonder echte malware. Elke engine markeert het opzettelijk als kwaadaardig.
echo 'X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*' > /tmp/eicar_test.txt FIM detecteert het nieuwe bestand → activeert regel 550 → stuurt de hash naar VirusTotal → u ontvangt een melding.
Ga binnen 30-60 seconden naar het dashboard: Endpoint Security → Malware Detection
U ziet:
- Rule ID: 87105 (VirusTotal: Alert)
- Bestand: /tmp/eicar_test.txt
- Positives: aantal engines dat het markeerde
- Permalink: directe link naar de analyse op virustotal.com
Ruim op na de test:
rm /tmp/eicar_test.txt Samenvatting
| Component | Configuratie |
| Manager | <integration> met API-sleutel en rule_id 550,554 |
| FIM van de agent | report_changes="yes" alleen op mappen met hoog risico |
| API-limieten | 4 verz./min, 500 verz./dag (gratis versie) |
| Melding | Rule ID 87105 in Malware Detection |
Hoe houd je de integratie op termijn houdbaar?
De meest voorkomende fout is report_changes="yes" inschakelen op te brede mappen en de 500 dagelijkse verzoeken vóór de lunch opgebruiken. Een goed afgestemde opstelling stuurt doorgaans minder dan 50 hashes per dag, wat ruim binnen het gratis quotum blijft. Wanneer een echte detectie afgaat, bereikt de melding het dashboard in ongeveer 30 tot 60 seconden en bevat het een directe VirusTotal-permalink die toont hoeveel van de 70+ engines het bestand markeerden, waardevol bewijs tijdens een incident.
Voor productieomgevingen raden we aan deze integratie te koppelen aan een geautomatiseerde active response, zodat een bestand dat door meerdere engines wordt gemarkeerd automatisch in quarantaine wordt geplaatst of de agent wordt geïsoleerd, in plaats van te wachten tot een analist reageert. Dat verandert een passieve detectie in een indammingsactie gemeten in seconden in plaats van uren.
Veelgestelde vragen
Hoe werkt de Wazuh- en VirusTotal-integratie?
FIM (File Integrity Monitoring) detecteert nieuwe of gewijzigde bestanden in de bewaakte mappen en berekent hun SHA256-hash. De VirusTotal-integratie, geconfigureerd op de Wazuh Manager met uw API-sleutel, stuurt die hash naar VirusTotal, dat hem controleert tegen meer dan 70 antivirusengines. Als een engine het bestand als kwaadaardig markeert, activeert Wazuh regel 87105 in het Malware Detection-dashboard binnen 30 tot 60 seconden.
Wat zijn de limieten van de gratis VirusTotal-API?
De gratis VirusTotal-API staat 4 verzoeken per minuut en 500 verzoeken per dag toe. Daarom schakelt u report_changes="yes" alleen in op mappen met hoog risico zoals /tmp en /root, zodat u het dagquotum niet in enkele uren opgebruikt. Sinds oktober 2025 begint het betaalde Lite-plan bij $5.000 per jaar, maar voor labs en middelgrote omgevingen volstaat de gratis versie mits chirurgisch geconfigureerd.
Welke Wazuh-regel-ID's activeren de VirusTotal-lookup?
Regel 550 gaat af wanneer FIM een nieuw bestand detecteert en regel 554 wanneer het een gewijzigd bestand detecteert. Beide worden aangehaald in het <integration>-blok met rule_id 550,554, zodat elke wijziging in een bewaakte map de hash naar VirusTotal stuurt. De resulterende VirusTotal-melding is regel 87105.
Wat is het EICAR-bestand en waarom gebruik je het om de integratie te testen?
Het EICAR-testbestand is een industriestandaard-string die elke antivirusengine opzettelijk als kwaadaardig markeert, hoewel hij volledig ongevaarlijk is. Ermee valideert u de volledige detectieketen (FIM, VirusTotal, dashboardmelding) zonder echte malware te gebruiken. Na het aanmaken in /tmp en het bevestigen van de melding verwijdert u het bestand gewoon.
Welke mappen moeten bestanden naar VirusTotal sturen?
Alleen mappen waar malware doorgaans terechtkomt, zoals /tmp en /root, zouden report_changes="yes" moeten gebruiken en VirusTotal moeten bereiken. Systeemmappen zoals /etc en /bin veranderen om legitieme redenen (updates, configuratie) en zouden uw API-quotum verspillen, dus die moeten gewone FIM gebruiken zonder de VirusTotal-lookup.
Volgende stappen
We behandelen meer integraties zoals Slack, TheHive en geautomatiseerde active responses als onderdeel van onze beheerde Wazuh-dienst. Ontdek onze Wazuh-dienst.