Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Benchmarks & speeds and improvements #90

Closed
MyraBaba opened this issue Oct 21, 2024 · 9 comments
Closed

Benchmarks & speeds and improvements #90

MyraBaba opened this issue Oct 21, 2024 · 9 comments

Comments

@MyraBaba
Copy link

Hi,

I cam a cross your project today and wll have a try.

We wonder the benchmarks of the processing 2000 sigma rules over 5gig log ie ? Do you have such benchmarks ?

How we can improve the processing speed ? We can re-write critical part in c++ if it helps ?

Best

@wagga40
Copy link
Owner

wagga40 commented Oct 21, 2024

Hi,

I just ran Zircolite on 15 GB of EVTX files (Sysmon, Security etc.) :

  • With multiple files and the use of GNU Parallel, It took 1 min 41 s with 2723 rules
  • By using Zircolite on all the files at once, it took 9 min 54s with 2723 rules (from the sigma official repository) on Python 3.10 (newer version of Python will be faster).

For the same dataset, Hayabusa took 8 min. Both tools use alot of memory.

The main part of Zircolite (the detection process) is only performed on one CPU Core. I am currently working on a way to speed things up by using all the cores.

@MyraBaba
Copy link
Author

MyraBaba commented Oct 21, 2024 via email

@wagga40
Copy link
Owner

wagga40 commented Oct 21, 2024

Thanks.

The memory usage is high 15GB EVTX ~30GB - 45GB memory

For the aforementioned test, without GNU Parallel, memory usage peaked at 25 GB.

@wagga40 wagga40 closed this as completed Oct 21, 2024
@wagga40
Copy link
Owner

wagga40 commented Oct 24, 2024

Just to let you know that the future version of zircolite takes 1 min 51 s to execute with the same 15 GB dataset on the very same computer.

@MyraBaba
Copy link
Author

@wagga40 is it 1 core or multiple core result 1 min 51 s ?

sqlite insert looks last longer..

@wagga40
Copy link
Owner

wagga40 commented Oct 25, 2024

multiple cores.

@wagga40
Copy link
Owner

wagga40 commented Oct 25, 2024

sqlite insert looks last longer..

You should not focus to much on SQLite Insertion, on the actual version (single core) for the same dataset takes only 25 secs...

Most of the execution time is on executing rules.

@MyraBaba
Copy link
Author

MyraBaba commented Oct 25, 2024 via email

@wagga40
Copy link
Owner

wagga40 commented Oct 25, 2024

I still have some things I need to adjust but I think this week end.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants