Skip to content

DeployDecoy

Bases: DecoyAction

Creates a misleading process on the designated host depending on available and compatible options.

The candidate decoys in this action is specifically for CC4.

Attributes:

Name Type Description
session int

The id of the session executing the action.

agent str

The agent executing the action.

hostname str

The hostname of the host targeted by the action.

duration int

Time steps to take the action.


CybORG.Simulator.Actions.ConcreteActions.DecoyActions.DecoyAction.DecoyAction

Bases: Action

Creates a Decoy Service on the specified host.

An exploit targetting an decoy service will automatically fail.

Parameters:

Name Type Description Default
session int

The id of the session executing the action.

required
agent str

The agent executing the action.

required
hostname str

The hostname of the host targeted by the action.

required

Functions

__create_process

__create_process(obs: Observation, sess: Session, host: Host, decoy: Decoy) -> None

Creates a process & service from Decoy on current host, adds it to the observation.

__init__

__init__(*, session: int, agent: str, hostname: str)

Instantiates DecoyAction class.

Parameters:

Name Type Description Default
session int

The id of the session executing the action.

required
agent str

The agent executing the action.

required
hostname str

The hostname of the host targeted by the action.

required

__select_one_factory

__select_one_factory(host: Host, state: State) -> DecoyFactory

Examines all decoy factories and returns one randomly compatible one. Raises RuntimeError if no compatible ones are found.

execute

execute(state: State) -> Observation

Executes the action to create a decoy.

Parameters:

Name Type Description Default
state State

The current state of CybORG.

required

Returns:

Name Type Description
obs Observation

The observation to be returned to the agent.


CybORG.Simulator.Actions.AbstractActions.Misinform.DecoyFactory

Assembles process informationt to appear as a vulnerable process

Functions

is_host_compatible

is_host_compatible(host: Host) -> bool

Determines whether an instance of this decoy can be placed successfully on the given host

Parameters:

Name Type Description Default
host Host

Host to examine for compatibility with this decoy.

required

make_decoy

make_decoy(host: Host) -> Decoy

Creates a Decoy instance that contains the necessary information to put a decoy on a given host.

Parameters:

Name Type Description Default
host Host

a host that this decoy will be placed on

required