Merge pull request #2062 from guardicore/1965-common-credentials

1965 common credentials
This commit is contained in:
Mike Salvatore 2022-07-06 08:29:17 -04:00 committed by GitHub
commit bce20fb687
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
33 changed files with 39 additions and 60 deletions

View File

@ -0,0 +1,8 @@
from .credential_component_type import CredentialComponentType
from .i_credential_component import ICredentialComponent
from .credentials import Credentials
from .lm_hash import LMHash
from .nt_hash import NTHash
from .password import Password
from .ssh_keypair import SSHKeypair
from .username import Username

View File

@ -1,6 +1,6 @@
from abc import ABC, abstractmethod
from common.common_consts.credential_component_type import CredentialComponentType
from . import CredentialComponentType
class ICredentialComponent(ABC):

View File

@ -1,7 +1,6 @@
from dataclasses import dataclass, field
from common.common_consts.credential_component_type import CredentialComponentType
from infection_monkey.i_puppet import ICredentialComponent
from . import CredentialComponentType, ICredentialComponent
@dataclass(frozen=True)

View File

@ -1,7 +1,6 @@
from dataclasses import dataclass, field
from common.common_consts.credential_component_type import CredentialComponentType
from infection_monkey.i_puppet import ICredentialComponent
from . import CredentialComponentType, ICredentialComponent
@dataclass(frozen=True)

View File

@ -1,7 +1,6 @@
from dataclasses import dataclass, field
from common.common_consts.credential_component_type import CredentialComponentType
from infection_monkey.i_puppet import ICredentialComponent
from . import CredentialComponentType, ICredentialComponent
@dataclass(frozen=True)

View File

@ -1,7 +1,6 @@
from dataclasses import dataclass, field
from common.common_consts.credential_component_type import CredentialComponentType
from infection_monkey.i_puppet import ICredentialComponent
from . import CredentialComponentType, ICredentialComponent
@dataclass(frozen=True)

View File

@ -1,7 +1,6 @@
from dataclasses import dataclass, field
from common.common_consts.credential_component_type import CredentialComponentType
from infection_monkey.i_puppet import ICredentialComponent
from . import CredentialComponentType, ICredentialComponent
@dataclass(frozen=True)

View File

@ -1,7 +1,2 @@
from .credential_components.nt_hash import NTHash
from .credential_components.lm_hash import LMHash
from .credential_components.password import Password
from .credential_components.username import Username
from .credential_components.ssh_keypair import SSHKeypair
from .mimikatz_collector import MimikatzCredentialCollector
from .ssh_collector import SSHCredentialCollector

View File

@ -1,8 +1,8 @@
import logging
from typing import Sequence
from infection_monkey.credential_collectors import LMHash, NTHash, Password, Username
from infection_monkey.i_puppet.credential_collection import Credentials, ICredentialCollector
from common.credentials import Credentials, LMHash, NTHash, Password, Username
from infection_monkey.i_puppet import ICredentialCollector
from infection_monkey.model import USERNAME_PREFIX
from . import pypykatz_handler

View File

@ -1,9 +1,9 @@
import logging
from typing import Dict, Iterable, Sequence
from infection_monkey.credential_collectors import SSHKeypair, Username
from common.credentials import Credentials, SSHKeypair, Username
from infection_monkey.credential_collectors.ssh_collector import ssh_handler
from infection_monkey.i_puppet.credential_collection import Credentials, ICredentialCollector
from infection_monkey.i_puppet import ICredentialCollector
from infection_monkey.telemetry.messengers.i_telemetry_messenger import ITelemetryMessenger
logger = logging.getLogger(__name__)

View File

@ -1,10 +1,9 @@
import logging
from typing import Any, Iterable, Mapping
from common.common_consts.credential_component_type import CredentialComponentType
from common.credentials import CredentialComponentType, Credentials
from infection_monkey.custom_types import PropagationCredentials
from infection_monkey.i_control_channel import IControlChannel
from infection_monkey.i_puppet import Credentials
from infection_monkey.utils.decorators import request_cache
from .i_credentials_store import ICredentialsStore

View File

@ -1,8 +1,8 @@
import abc
from typing import Iterable
from common.credentials import Credentials
from infection_monkey.custom_types import PropagationCredentials
from infection_monkey.i_puppet import Credentials
class ICredentialsStore(metaclass=abc.ABCMeta):

View File

@ -16,7 +16,7 @@ from impacket.dcerpc.v5 import epm, nrpc, rpcrt, transport
from impacket.dcerpc.v5.dtypes import NULL
from common.common_consts.timeouts import LONG_REQUEST_TIMEOUT
from infection_monkey.credential_collectors import LMHash, NTHash, Username
from common.credentials import Credentials, LMHash, NTHash, Username
from infection_monkey.exploit.HostExploiter import HostExploiter
from infection_monkey.exploit.tools.wmi_tools import WmiTools
from infection_monkey.exploit.zerologon_utils.dump_secrets import DumpSecrets
@ -24,7 +24,6 @@ from infection_monkey.exploit.zerologon_utils.options import OptionsForSecretsdu
from infection_monkey.exploit.zerologon_utils.vuln_assessment import get_dc_details, is_exploitable
from infection_monkey.exploit.zerologon_utils.wmiexec import Wmiexec
from infection_monkey.i_puppet import ExploiterResultData
from infection_monkey.i_puppet.credential_collection import Credentials
from infection_monkey.telemetry.credentials_telem import CredentialsTelem
from infection_monkey.utils.capture_output import StdoutCapture
from infection_monkey.utils.threading import interruptible_iter

View File

@ -10,8 +10,4 @@ from .i_puppet import (
UnknownPluginError,
)
from .i_fingerprinter import IFingerprinter
from .credential_collection import (
Credentials,
ICredentialCollector,
ICredentialComponent,
)
from .i_credential_collector import ICredentialCollector

View File

@ -1,3 +0,0 @@
from .i_credential_collector import ICredentialCollector
from .credentials import Credentials
from .i_credential_component import ICredentialComponent

View File

@ -1,7 +1,7 @@
from abc import ABC, abstractmethod
from typing import Mapping, Optional, Sequence
from .credentials import Credentials
from common.credentials import Credentials
class ICredentialCollector(ABC):

View File

@ -5,10 +5,10 @@ from dataclasses import dataclass
from enum import Enum
from typing import Dict, Iterable, List, Mapping, Sequence
from common.credentials import Credentials
from infection_monkey.model import VictimHost
from . import PluginType
from .credential_collection import Credentials
class PortStatus(Enum):

View File

@ -3,9 +3,9 @@ import threading
from typing import Dict, Iterable, List, Sequence
from common.common_consts.timeouts import CONNECTION_TIMEOUT
from common.credentials import Credentials
from infection_monkey import network_scanning
from infection_monkey.i_puppet import (
Credentials,
ExploiterResultData,
FingerprintData,
IPuppet,

View File

@ -3,7 +3,7 @@ import json
from typing import Dict, Iterable
from common.common_consts.telem_categories import TelemCategoryEnum
from infection_monkey.i_puppet.credential_collection import Credentials, ICredentialComponent
from common.credentials import Credentials, ICredentialComponent
from infection_monkey.telemetry.base_telem import BaseTelem

View File

@ -1,7 +1,7 @@
from abc import ABC
from typing import Sequence
from monkey_island.cc.services.telemetry.processing.credentials import Credentials
from common.credentials import Credentials
class ICredentialsRepository(ABC):

View File

@ -1,7 +1,7 @@
import logging
from typing import Mapping, Sequence
from common.common_consts.credential_component_type import CredentialComponentType
from common.credentials import CredentialComponentType
from monkey_island.cc.models import StolenCredentials
logger = logging.getLogger(__name__)

View File

@ -2,7 +2,7 @@ import logging
from itertools import chain
from typing import Mapping
from common.common_consts.credential_component_type import CredentialComponentType
from common.credentials import CredentialComponentType
from monkey_island.cc.models import StolenCredentials
from .credentials import Credentials

View File

@ -2,17 +2,11 @@ from typing import Sequence
import pytest
from infection_monkey.credential_collectors import (
LMHash,
MimikatzCredentialCollector,
NTHash,
Password,
Username,
)
from common.credentials import Credentials, LMHash, NTHash, Password, Username
from infection_monkey.credential_collectors import MimikatzCredentialCollector
from infection_monkey.credential_collectors.mimikatz_collector.windows_credentials import (
WindowsCredentials,
)
from infection_monkey.i_puppet import Credentials
def patch_pypykatz(win_creds: [WindowsCredentials], monkeypatch):

View File

@ -2,8 +2,8 @@ from unittest.mock import MagicMock
import pytest
from infection_monkey.credential_collectors import SSHCredentialCollector, SSHKeypair, Username
from infection_monkey.i_puppet.credential_collection import Credentials
from common.credentials import Credentials, SSHKeypair, Username
from infection_monkey.credential_collectors import SSHCredentialCollector
@pytest.fixture

View File

@ -2,9 +2,8 @@ from unittest.mock import MagicMock
import pytest
from infection_monkey.credential_collectors import Password, SSHKeypair, Username
from common.credentials import Credentials, Password, SSHKeypair, Username
from infection_monkey.credential_store import AggregatingCredentialsStore
from infection_monkey.i_puppet import Credentials
CONTROL_CHANNEL_CREDENTIALS = {
"exploit_user_list": ["Administrator", "root", "user1"],

View File

@ -3,9 +3,8 @@ import threading
from typing import Dict, Iterable, List, Sequence
from common import OperatingSystems
from infection_monkey.credential_collectors import LMHash, Password, SSHKeypair, Username
from common.credentials import Credentials, LMHash, Password, SSHKeypair, Username
from infection_monkey.i_puppet import (
Credentials,
ExploiterResultData,
FingerprintData,
IPuppet,

View File

@ -1,7 +1,6 @@
from unittest.mock import MagicMock
from infection_monkey.credential_collectors import Password, SSHKeypair, Username
from infection_monkey.i_puppet import Credentials
from common.credentials import Credentials, Password, SSHKeypair, Username
from infection_monkey.telemetry.credentials_telem import CredentialsTelem
from infection_monkey.telemetry.messengers.credentials_intercepting_telemetry_messenger import (
CredentialsInterceptingTelemetryMessenger,

View File

@ -2,8 +2,7 @@ import json
import pytest
from infection_monkey.credential_collectors import Password, SSHKeypair, Username
from infection_monkey.i_puppet import Credentials
from common.credentials import Credentials, Password, SSHKeypair, Username
from infection_monkey.telemetry.credentials_telem import CredentialsTelem
USERNAME = "m0nkey"

View File

@ -1,6 +1,6 @@
import pytest
from common.common_consts.credential_component_type import CredentialComponentType
from common.credentials import CredentialComponentType
from monkey_island.cc.models import Monkey, StolenCredentials
from monkey_island.cc.services.reporting.stolen_credentials import (
extract_ssh_keys,

View File

@ -6,13 +6,13 @@ from tests.unit_tests.monkey_island.cc.services.telemetry.processing.credentials
CREDENTIAL_TELEM_TEMPLATE,
)
from common.common_consts.credential_component_type import CredentialComponentType
from common.config_value_paths import (
LM_HASH_LIST_PATH,
NTLM_HASH_LIST_PATH,
PASSWORD_LIST_PATH,
USER_LIST_PATH,
)
from common.credentials import CredentialComponentType
from monkey_island.cc.models import StolenCredentials
from monkey_island.cc.services.config import ConfigService
from monkey_island.cc.services.telemetry.processing.credentials.credentials_parser import (