-
Notifications
You must be signed in to change notification settings - Fork 807
Closed
Description
Refactor
Component(s) to be refactored
- HadoopExploiter
Explanation
The time has come! It's time to start migrating exploiters from being integrated with the agent monolith to plugins that are loaded on-demand.
Tasks
- Generate a config schema for the hadoop exploiter (0d) @ilija-lazoroski @shreyamalviya
- Read through the existing exploiter and identify any timeouts, ports, or other options that should be configurable.
- Generate a plugin manifest for the hadoop exploiter (0d) @shreyamalviya
- Rewrite the hadoop exploiter as a plugin (0d) @mssalvatore
- Put this in
monkey/agent_plugins/exploiters/hadoop
-
If ports inTry all configured portsTargetHost
are open, run exploiter. If closed, return. If unknown, run exploiter. - Write a runner to speed up tests/debugging
- Unit tests! - @mssalvatore
- Don't inherit from
WebRCE
orHostExploiter
- Don't forget to add MITRE attack tags
- Tag the
ExploitationEvent
with relevant CVEs (AFAIK there are no CVEs, that's just how Hadoop is by default :/). - Write a build script that builds the plugin as a tar archive (Do we need one for each supported OS?) @ilija-lazoroski
- Test ETE @ilija-lazoroski
- Add more logging @ilija-lazoroski
- Fix agent download race condition @mssalvatore
- Put this in
- Remove hardcoded Hadoop (0d) @ilija-lazoroski
- Create a wrapper to wrap plugins and protect them from trying to access the same handle simultaneously (0d) @mssalvatore
- Make TCPPortSelector multiprocessing safe (0d) - @ilija-lazoroski @cakekoa
- Pass TCPPortSelector to exploiter plugins at construction (0d) - @mssalvatore