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

There is currently no way of having a boefje gather information outside the OpenKAT instance. #3222

Open
2 tasks
Souf149 opened this issue Jul 10, 2024 · 0 comments · May be fixed by #3299
Open
2 tasks

There is currently no way of having a boefje gather information outside the OpenKAT instance. #3222

Souf149 opened this issue Jul 10, 2024 · 0 comments · May be fixed by #3299

Comments

@Souf149
Copy link
Contributor

Souf149 commented Jul 10, 2024

I'd add the label backend to this issue.

About this feature

Detailed description

Currently OpenKAT runs all its boefjes locally. But some vulnerabilities are only able to be found from another perspective.

Feature benefit/User story

As a user of the OpenKAT vulnerability scanner, I want to scan multiple networks that lie outside OpenKAT so that more vulnerabilities can be found.

Specifications

The implementation should include:

  • A new boefje that will not be ran inside OpenKAT.
  • A way for the scheduler to know that a task is supposed to run remote or locally.

Additional information

There are 2 ways to implement this feature. Either OpenKAT would send a request to the outside to start a boefje. Or a boefje on the remote could request OpenKAT's scheduler for jobs.

Design

This part should only be filled in by the OpenKAT design team.

Screenshots

Include screenshots of the proposed design changes here.

Figma link

Link to the Figma design for further visualization (if applicable)

Implementation

This part should only be filled in by the developers.

Possible solution

An idea could be to create a new boefje which has an attribute inside its boefje.json that explains to OpenKAT that the boefje is supposed to be ran remote or locally (or potentially both?). Then when a new task is created for this boefje. The task will have an attribute that shows whether the task should be ran locally or remote.

From there a remote boefje from the outside could request the scheduler to give them a task that has to be ran remotely.

Alternatives considered

Another way of deciding whether the boefje should be ran locally or from the remote is by giving the user a new option inside every (potentially remote) boefje's settings that can contain an URL where OpenKAT can request a boefje to be ran.

image

This however could be hard to find for the user since the option to run remote would be hidden in the boefje's settings.

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