forked from p15670423/monkey
Agent: Add IFingerprinter
This commit is contained in:
parent
5695808adb
commit
4361aa2325
|
@ -9,3 +9,4 @@ from .i_puppet import (
|
||||||
PostBreachData,
|
PostBreachData,
|
||||||
UnknownPluginError,
|
UnknownPluginError,
|
||||||
)
|
)
|
||||||
|
from .i_fingerprinter import IFingerprinter
|
||||||
|
|
|
@ -0,0 +1,27 @@
|
||||||
|
from abc import abstractmethod
|
||||||
|
from typing import Dict
|
||||||
|
|
||||||
|
from . import FingerprintData, PingScanData, PortScanData
|
||||||
|
|
||||||
|
|
||||||
|
class IFingerprinter:
|
||||||
|
@abstractmethod
|
||||||
|
def get_host_fingerprint(
|
||||||
|
self,
|
||||||
|
host: str,
|
||||||
|
ping_scan_data: PingScanData,
|
||||||
|
port_scan_data: Dict[int, PortScanData],
|
||||||
|
options: Dict,
|
||||||
|
) -> FingerprintData:
|
||||||
|
"""
|
||||||
|
Attempts to gather detailed information about a host and its services
|
||||||
|
:param str host: The domain name or IP address of a host
|
||||||
|
:param PingScanData ping_scan_data: Data retrieved from the target host via ICMP
|
||||||
|
:param Dict[int, PortScanData] port_scan_data: Data retrieved from the target host via a TCP
|
||||||
|
port scan
|
||||||
|
:param Dict options: A dictionary containing options that modify the behavior of the
|
||||||
|
fingerprinter
|
||||||
|
:return: Detailed information about the target host
|
||||||
|
:rtype: FingerprintData
|
||||||
|
"""
|
||||||
|
pass
|
|
@ -86,7 +86,8 @@ class IPuppet(metaclass=abc.ABCMeta):
|
||||||
options: Dict,
|
options: Dict,
|
||||||
) -> FingerprintData:
|
) -> FingerprintData:
|
||||||
"""
|
"""
|
||||||
Runs a fingerprinter against a remote host
|
Runs a specific fingerprinter to attempt to gather detailed information about a host and its
|
||||||
|
services
|
||||||
:param str name: The name of the fingerprinter to run
|
:param str name: The name of the fingerprinter to run
|
||||||
:param str host: The domain name or IP address of a host
|
:param str host: The domain name or IP address of a host
|
||||||
:param PingScanData ping_scan_data: Data retrieved from the target host via ICMP
|
:param PingScanData ping_scan_data: Data retrieved from the target host via ICMP
|
||||||
|
@ -94,7 +95,7 @@ class IPuppet(metaclass=abc.ABCMeta):
|
||||||
port scan
|
port scan
|
||||||
:param Dict options: A dictionary containing options that modify the behavior of the
|
:param Dict options: A dictionary containing options that modify the behavior of the
|
||||||
fingerprinter
|
fingerprinter
|
||||||
:return: The data collected by running the fingerprinter on the specified host
|
:return: Detailed information about the target host
|
||||||
:rtype: FingerprintData
|
:rtype: FingerprintData
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue