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

Remove the security report's dependency on the Monkey model #2507

Closed
8 tasks done
mssalvatore opened this issue Oct 26, 2022 · 2 comments · Fixed by #2551
Closed
8 tasks done

Remove the security report's dependency on the Monkey model #2507

mssalvatore opened this issue Oct 26, 2022 · 2 comments · Fixed by #2551

Comments

@mssalvatore
Copy link
Collaborator

mssalvatore commented Oct 26, 2022

Refactor

Component(s) to be refactored

  • monkey_island.cc.services.reporting.ReportService

Explanation

The Monkey model has been superseded by the Agent model. Various parts of the Monkey model have been broken out into other components, such as events or signals. Decouple the ReportService from the Monkey model.

Tasks

@ilija-lazoroski
Copy link
Contributor

Encryption/decryption of the events takes the longest when generating the reports. First thing that will upgrade the performance is to create an index when we get the events by type. That increases the performance by ~20%. Next thing is to fix encryption/decryption slowness which will be done in #2545

@ilija-lazoroski
Copy link
Contributor

Test 1:

  1. Removed encryption/decryption
  2. Added index for event type field
  3. No caching

image

image

Test 2:

  1. Removed encryption/decryption
  2. Added index for event type field
  3. Caching
    First time generating the report:

image

Every other time:
image
image

It is safe to say that saving the report in the database and retrieving it if it is the latest saves more time then regenerating it again. It is good enough mechanism for now.

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

Successfully merging a pull request may close this issue.

2 participants