dissect.target.loaders.targetd#

Module Contents#

Classes#

TargetdLoader

Load remote targets through a broker.

Functions#

Attributes#

dissect.target.loaders.targetd.TARGETD_AVAILABLE = False#
dissect.target.loaders.targetd.TARGETD_AVAILABLE = True#
class dissect.target.loaders.targetd.TargetdLoader(path: pathlib.Path | str, **kwargs)#

Bases: dissect.target.helpers.targetd.ProxyLoader

Load remote targets through a broker.

instance#
plugin_bridge(*args, **kwargs) list[Any]#

Command Execution Bridge Plugin for Targetd.

This is a generic plugin interceptor that becomes active only if using the targetd loader. This plugin acts as a bridge to connect to the Targetd broker and will translate the requested plugin-operation into Targetd-commands using the selected adapter (i.e. Flow.Remoting).

each(func: Callable, target: dissect.target.target.Target | None = None) Any#

Allows you to attach a scriptlet (function) to each of the remote hosts. The results of the function are accumulated using +=. Exceptions are catched and logged as warnings.

Usage:

def my_function(remote_target):

…do something interesting…

targets = Target.open( targetd://… ) targets.each(my_function)

map(target: dissect.target.target.Target) None#

Maps the loaded path into a Target.

Parameters:

target – The target that we’re mapping into.

static detect(path: pathlib.Path) bool#

Detects wether this Loader class can load this specific path.

Parameters:

path – The target path to check.

Returns:

True if the path can be loaded by a Loader instance. False otherwise.

__del__() None#
dissect.target.loaders.targetd.command_runner(link: str, targetd: targetd.clients.Client, *args, **kwargs) None#