Hi Nhân Nguyễn,
If you are getting the logs in the archive log file with this command
tail -f /var/ossec/logs/archives/archives.log | grep -E "Deep Security|CEF
That means the logs are coming to your Wazuh server.
As you do not see any logs in the alerts.log, that means they are not matching any rule.
You can test your logs to see if they match any rules by using the ruleset test tool.
Go to Tools > Ruleset test in the Wazuh dashboard and paste the log you found in the archive.log
Ref: Testing decoders and rules - Data analysis
Make sure to exclude the log header added by Wazuh before testing the log
Ex:
If you get this log in the archive.log
2024 Aug 29 11:42:45 DPW-SW1->/var/log/syslog Aug 29 11:42:44 DPW-SW1 74acb943ac7a,US-24-G1-7.0.50+15613: user: test
You need to use this part for the testing
Aug 29 11:42:44 DPW-SW1 74acb943ac7a,US-24-G1-7.0.50+15613: user: test
If they do not match any rules, you need to write some custom rules to trigger an alert. For that you can check these documents.
If you need any further help on this, please share some sample relevant logs from the archives.log file.
I believe this is the log your endpoint is forwarding.
2026-04-21T09:07:28+07:00 DeepSecurityABCD CEF:0|Trend Micro|Deep Security Manager|20.0.1112|276|Update: Summary Information|3|src=192.168.1.1 suser=System target=192.168.1.2 msg=Description Omitted TrendMicroDsTenant=Primary TrendMicroDsTenantId=0
And this is the syslog header added by the Wazuh Manager.
2026 Apr 21 16:31:01 DeepSecurityABCD->192.168.1.1
So you need to write the decoders and rules, and test them based on the actual logs that are forwarded by your endpoint, which seems to me
2026-04-21T09:07:28+07:00 DeepSecurityABCD CEF:0|Trend Micro|Deep Security Manager|20.0.1112|276|Update: Summary Information|3|src=192.168.1.1 suser=System target=192.168.1.2 msg=Description Omitted TrendMicroDsTenant=Primary TrendMicroDsTenantId=0
I have written some sample decoders based on that.
Decoders:
<decoder name="trendmicro-cef">
<program_name>CEF</program_name>
<prematch>Trend Micro\|Deep Security</prematch>
</decoder>
<decoder name="trendmicro-cef-child">
<parent>trendmicro-cef</parent>
<regex>(\d+)</regex>
<order>id</order>
</decoder>
<decoder name="trendmicro-cef-child">
<parent>trendmicro-cef</parent>
<regex>\d+\|\.+\|\.+\|\.+\|\.+\|(\S+\p\s\S+\s\S+)\|</regex>
<order>name</order>
</decoder>
<decoder name="trendmicro-cef-child">
<parent>trendmicro-cef</parent>
<regex>\d+\|\.+\|(\w+\s\w+\s\w+)</regex>
<order>product</order>
</decoder>
<decoder name="trendmicro-cef-child">
<parent>trendmicro-cef</parent>
<regex>\d+\|\.+\|\.+\|\.+\|\.+\|\.+\|(\d+)</regex>
<order>severity</order>
</decoder>
<decoder name="trendmicro-cef-child">
<parent>trendmicro-cef</parent>
<regex>\d+\|\.+\|\.+\|\.+\|(\d+)</regex>
<order>signature</order>
</decoder>
<decoder name="trendmicro-cef-child">
<parent>trendmicro-cef</parent>
<regex>\d+\|(\w+\s\w+)</regex>
<order>vendor</order>
</decoder>
<decoder name="trendmicro-cef-child">
<parent>trendmicro-cef</parent>
<regex>\d+\|\.+\|\.+\|(\d+\p\d+\p\d+)</regex>
<order>version</order>
</decoder>
Rules:
<group name="trendmicro,debug">
<rule id="100111" level="15">
<decoded_as>trendmicro-cef</decoded_as>
<description>DEBUG: Any Trend Micro CEF</description>
</rule>
</group>
Use ID numbers between 100000 and 120000 for custom rules to avoid conflicts.
Ref: Adding custom rules
