I appreciate the recent posts that include parenthesis defining some of the concepts of TM and McAfee, it's helping me to understand it more.
The concept of both:
Capture the new file (minifilter driver). ->
-> Agent uses highly efficient and extremely optimised local heuristics to quickly determine the risk lebel of the file. For Trend that’s the various patterns, for McAfee, there is a bunch of files too (including Yara rules and we will discuss the McAfee architecture in depth on another thread).
These rules are designed to do the job with minimal performance impact, as well as to reduce the overhead from hash calculations and full blown AI analysis->
-> If the local rules are inconclusive, agent calculates fingerprint (fuzzy hash) and submits to the cloud, along with some file metadata, including but not limited to certificates and so on.
Th server returns verdict: safe, malicious, suspicious, unknown. ->
-> If verdict is safe, they don’t deal with the file anymore. If malicious, they do what they are paid for and remove the file. ->
-> If suspicious or unknown, they subject it to static analysis, which involves disassembling (converting the machine code to assembly). For scripts and office files, static deobfuscation methods are used, such as decoding base64, hex and so on to ASCII.
At this point they extract a bunch of features (along with the emulator results which were gathered earlier), pre-filter them and feed them to the AI models online. The AI models return probability in percentage (or fraction) that the file is malware.
If the file still passes, behavioural monitoring is used to determine the risk level and mitigate any damage.
Any Trend Micro detections that contain TRX: that’s Trend Micro X-Gen (AI).
VSX + TRX: X-Gen detection that stems from VSX (emulator) results.
Example: Trojan.VSX.TRX.PE049Z -> file was emulated, machine learning model for portable executables with ID 049Z believes that the file behaves like malware.
JS.Downloader.TRX.JS07997 -> machine learning model with ID 07997 believes that this JS file is a loader, based on static analysis.
McAfee: RealProtect detections indicate static and dynamic AI analysis, as well as behavioural blocking detections.