Raspirus / raspirus

A user- and resources-friendly rules-based malware scanner
https://raspirus.deno.dev
GNU General Public License v3.0
124 stars 12 forks source link

Migrating to YARA-X #815

Closed Benji377 closed 2 months ago

Benji377 commented 3 months ago

Is your feature request related to a problem? Please describe. For far too long has the scanning been too inaccurate. We don't really have a good control of it because we simply cross-collect signatures from places and merge them together to a big database. We do have a small system to remove duplicates and flag false positives, but its manual and takes a while to set up. Furthermore, it is very complicated to find false positives because our user-base is too small and the database too big.

Describe the solution you'd like We tested YARA in the past and it was using way too many resources and too slow for our project. But now with the new release of YaraX this has drastically changed. It is even implemented in Rust, making it a perfect fit for our project.

Advantages:

Disadvantages:

Describe alternatives you've considered We also looked at fuzzy hashing or at the SIMBIoTA project and their TLSH approach from TrendMicro. The problem with those approaches is that we would need to have a collection of malware files to build the signatures onto. Furthermore, we would again have issues with false positives popping up and no idea why or how to fix them. Working with signatures is nice because it is simple and fast, but once you need to understand where a signature comes from it becomes much more difficult to manage.

Additional context

Benji377 commented 2 months ago

This has been implemented and tested on the Yara-x branch. Will be migrated to main once the rest of the app has been implemented