BB: Add add_http_ports()

This commit is contained in:
Mike Salvatore 2022-07-19 08:12:46 -04:00
parent f1d9ea64e5
commit 0c6764daf5
1 changed files with 25 additions and 0 deletions

View File

@ -4,6 +4,7 @@ from typing import Sequence, Tuple
from common.configuration import ( from common.configuration import (
AgentConfiguration, AgentConfiguration,
ExploitationConfiguration, ExploitationConfiguration,
ExploitationOptionsConfiguration,
NetworkScanConfiguration, NetworkScanConfiguration,
PluginConfiguration, PluginConfiguration,
PropagationConfiguration, PropagationConfiguration,
@ -55,6 +56,19 @@ def add_credential_collectors(
return replace(agent_configuration, credential_collectors=tuple(credential_collectors)) return replace(agent_configuration, credential_collectors=tuple(credential_collectors))
def add_http_ports(
agent_configuration: AgentConfiguration, http_ports: Sequence[int]
) -> AgentConfiguration:
exploitation_options_configuration = agent_configuration.propagation.exploitation.options
exploitation_options_configuration = replace(
exploitation_options_configuration, http_ports=http_ports
)
return replace_exploitation_options_configuration(
agent_configuration, exploitation_options_configuration
)
def set_maximum_depth( def set_maximum_depth(
agent_configuration: AgentConfiguration, maximum_depth: int agent_configuration: AgentConfiguration, maximum_depth: int
) -> AgentConfiguration: ) -> AgentConfiguration:
@ -99,6 +113,17 @@ def replace_propagation_configuration(
return replace(agent_configuration, propagation=propagation_configuration) return replace(agent_configuration, propagation=propagation_configuration)
def replace_exploitation_options_configuration(
agent_configuration: AgentConfiguration,
exploitation_options_configuration: ExploitationOptionsConfiguration,
) -> AgentConfiguration:
exploitation_configuration = agent_configuration.propagation.exploitation
exploitation_configuration = replace(
exploitation_configuration, options=exploitation_options_configuration
)
return replace_exploitation_configuration(agent_configuration, exploitation_configuration)
def replace_agent_configuration( def replace_agent_configuration(
test_configuration: TestConfiguration, agent_configuration: AgentConfiguration test_configuration: TestConfiguration, agent_configuration: AgentConfiguration
) -> TestConfiguration: ) -> TestConfiguration: