MCPcopy Create free account

hub / github.com/depthsecurity/RelayKing-Depth / functions

Functions175 in github.com/depthsecurity/RelayKing-Depth

↓ 20 callersMethod_is_verbose
Check if verbose output is enabled at given level
protocols/base_detector.py:147
↓ 13 callersMethod_get_timeout
Get connection timeout from config
protocols/base_detector.py:143
↓ 12 callersMethodshould_use_kerberos
Determine if Kerberos should be used for a given target. If --krb-dc-only is set, only use Kerberos for Domain Controllers (
core/config.py:81
↓ 11 callersMethodconnect
(self, username, password, domain, lmhash, nthash, aesKey, target, doKerberos, dcHost, pipe, timeout=5)
detectors/coercion.py:417
↓ 10 callersMethodis_relayable
Check if this protocol is relayable (no protections) for CONVENTIONAL NTLM relay. Note: This does NOT apply to NTLM reflection attac
protocols/base_detector.py:27
↓ 9 callersMethodsave
Write session state to disk (atomic: write tmp then rename).
core/session.py:52
↓ 8 callersMethod_create_result
Helper to create a ProtocolResult
protocols/base_detector.py:139
↓ 5 callersFunction_is_valid_unicast_ip
Check if an IP address is a valid unicast address for host resolution. Filters out: - Loopback (127.0.0.0/8) - Multicast (224.0.0.0/
core/target_parser.py:18
↓ 4 callersMethodset_phase
Update the current phase and immediately flush.
core/session.py:86
↓ 3 callersMethod_extract_hostname
Extract hostname from various LDAP attribute formats Args: value: String value from LDAP attribute Returns:
detectors/tier0_detector.py:190
↓ 3 callersMethod_get_config_summary
Get summary of scan configuration
core/scanner.py:804
↓ 3 callersMethod_get_credentials
Get credentials from config
detectors/coercion.py:43
↓ 3 callersMethodset_dc_hostnames
Set the list of DC hostnames (called after AD enumeration)
core/config.py:77
↓ 3 callersMethodset_port_scan_results
Store port scan results. Converts sets to lists for JSON.
core/session.py:124
↓ 2 callersMethod_check_basic_paths
Check root path and SCCM-specific paths only
protocols/http_detector.py:283
↓ 2 callersMethod_check_certsrv
Check if /certsrv/ endpoint returns 401
detectors/adcs_detector.py:44
↓ 2 callersMethod_get_lm_compat_level
Read LmCompatibilityLevel from remote registry Registry key: HKLM\\SYSTEM\\CurrentControlSet\\Control\\Lsa\\LmCompatibilityLevel
detectors/ntlmv1_detector.py:159
↓ 2 callersMethod_parse_target
Parse a single target specification
core/target_parser.py:84
↓ 2 callersMethod_run_port_scan
Run fast port scan on targets and return results.
core/scanner.py:467
↓ 2 callersMethoddetect
Detect SMTP configuration
protocols/additional_detectors.py:13
↓ 2 callersMethodget_completed_hosts
Return the set of hosts that have been fully scanned.
core/session.py:150
↓ 2 callersFunctionget_dynamic_endpoint
Get dynamic RPC endpoint
detectors/coercion.py:494
↓ 2 callersMethodscan_hosts
Fast scan multiple hosts for protocol ports Args: targets: List of target hostnames/IPs protocols: List of p
core/port_scanner.py:60
↓ 2 callersMethodskeleton
(self, all_results: Dict[str, Dict] = {}, ntlmv1_analysis: Dict = None)
core/relay_analyzer.py:54
↓ 1 callersMethod_calculate_impact
Calculate impact level for relay to this protocol
core/relay_analyzer.py:430
↓ 1 callersMethod_check_coercion
Check coercion vulnerabilities across all targets
core/scanner.py:638
↓ 1 callersMethod_check_connectivity
Quick connectivity check to see if a web server is listening Returns True if server responds, False otherwise
protocols/http_detector.py:251
↓ 1 callersMethod_check_dfscoerce
Check DFSCoerce vulnerability
detectors/coercion.py:152
↓ 1 callersMethod_check_dns_resolution
Check which hostnames resolve in DNS
core/target_parser.py:573
↓ 1 callersMethod_check_ghost_spn
Check for Ghost SPN relay vulnerabilities in Active Directory.
core/scanner.py:415
↓ 1 callersMethod_check_ldap_signing
Check if LDAP signing is enforced by attempting bind with signing=False Returns True if signing is required, False if not required, N
protocols/ldap_detector.py:142
↓ 1 callersMethod_check_ldaps_channel_binding
Check LDAPS channel binding enforcement using ldap3 (like RelayInformer) Returns True if enforced, False if not enforced, None if unk
protocols/ldap_detector.py:196
↓ 1 callersMethod_check_ntlmv1
Check NTLMv1 support via GPO and/or registry
core/scanner.py:676
↓ 1 callersMethod_check_path_for_ntlm
Check if a specific path requires NTLM authentication
protocols/http_detector.py:338
↓ 1 callersMethod_check_petitpotam
Check PetitPotam vulnerability across multiple pipes
detectors/coercion.py:56
↓ 1 callersMethod_check_port
Check if a single port is open Args: host: Target hostname or IP port: Port number Returns:
core/port_scanner.py:121
↓ 1 callersMethod_check_printerbug
Check PrinterBug vulnerability
detectors/coercion.py:104
↓ 1 callersMethod_check_printspooler_enabled
Check if PrintSpooler service is enabled via RPC over TCP Returns True if PrintSpooler is enabled, False otherwise Uses RPC
detectors/ntlm_reflection.py:358
↓ 1 callersMethod_check_wildcard_dns
Return True if any wildcard DNS entry exists in DomainDnsZones.
detectors/ghost_spn.py:223
↓ 1 callersMethod_coerce_all_mode
Special mode: --coerce-all Enumerate AD computers and coerce them all to authenticate to listener
core/scanner.py:482
↓ 1 callersMethod_connect_ldap
Establish LDAP connection. Returns (conn, use_impacket, search_base). Uses impacket for all auth types: - signing=True on ldap:// s
detectors/ghost_spn.py:160
↓ 1 callersFunction_deserialize_host_results
Deserialize a per-host results dict from JSON storage.
core/session.py:224
↓ 1 callersMethod_enumerate_ad
Enumerate computer accounts from Active Directory via LDAP
core/target_parser.py:176
↓ 1 callersMethod_enumerate_ad_impacket
Alternative AD enumeration using impacket
core/target_parser.py:535
↓ 1 callersMethod_enumerate_ntlm_paths
Enumerate all paths from web_ntlm_paths.dict for NTLM authentication Uses threading for performance
protocols/http_detector.py:295
↓ 1 callersMethod_find_dc
Find a DC from scan results (look for hosts with LDAP available)
core/scanner.py:721
↓ 1 callersMethod_find_ntlmv1_paths
Find NTLMv1-specific relay paths based on analysis results. NTLMv1 enables cross-protocol relay attacks because NTLMv1 doesn't suppo
core/relay_analyzer.py:321
↓ 1 callersMethod_find_relay_paths
Find relay paths for a specific host
core/relay_analyzer.py:173
↓ 1 callersMethod_generate_description
Generate description for relay path
core/relay_analyzer.py:480
↓ 1 callersMethod_get_base_dn
Convert domain to base DN
detectors/ntlmv1_detector.py:234
↓ 1 callersMethod_get_domain_controllers
Query AD for Domain Controllers (members of 'Domain Controllers' group) Returns set of DC hostnames
core/target_parser.py:469
↓ 1 callersMethod_get_search_base
Convert domain name to LDAP DN format
detectors/tier0_detector.py:25
↓ 1 callersMethod_get_spn_objects
Return list of dicts with sAMAccountName, servicePrincipalName, distinguishedName.
detectors/ghost_spn.py:255
↓ 1 callersMethod_get_tls_version
Get TLS version
protocols/http_detector.py:366
↓ 1 callersMethod_identify_high_value_targets
Identify SCCM and ADCS servers
core/relay_analyzer.py:155
↓ 1 callersMethod_is_comprehensive_scan
Check if user explicitly requested HTTP/HTTPS scanning
protocols/http_detector.py:276
↓ 1 callersMethod_is_high_value_target
Check if a host is a high-value/tier-0 target. Uses LDAP-detected tier-0 assets first (more accurate), falls back to hostnam
core/relay_analyzer.py:453
↓ 1 callersMethod_is_port_open
Check if a port is open
protocols/base_detector.py:151
↓ 1 callersMethod_is_port_open
Check if port is open
protocols/mssql_detector.py:50
↓ 1 callersMethod_is_vulnerable
Check if Windows version is vulnerable to CVE-2025-33073 Returns: True if vulnerable, False if patched, None if unknown
detectors/ntlm_reflection.py:465
↓ 1 callersMethod_is_vulnerable_cve2019_1040
Check if Windows version is vulnerable to CVE-2019-1040 (Drop the MIC). Returns: True if vulnerable, False if patched or
detectors/ntlm_reflection.py:483
↓ 1 callersMethod_parse_cidr
Parse CIDR notation and expand to individual IPs
core/target_parser.py:107
↓ 1 callersMethod_parse_file
Parse targets from file
core/target_parser.py:162
↓ 1 callersMethod_parse_range
Parse IP range (e.g., 192.168.1.1-254)
core/target_parser.py:129
↓ 1 callersMethod_ping_sweep
Ping sweep to find live hosts
core/target_parser.py:542
↓ 1 callersMethod_resolve_all
Resolve all hostnames in parallel. Returns dict: hostname -> list of IPs, or None if unresolvable.
detectors/ghost_spn.py:324
↓ 1 callersMethod_resolve_target_ip
Resolve target hostname to IP address(es) Uses custom DNS server (-ns) and TCP (--dns-tcp) if specified, otherwise falls bac
core/scanner.py:736
↓ 1 callersFunction_serialize_host_results
Serialize a per-host results dict for JSON storage. ProtocolResult objects are converted to dicts; plain dicts (webdav, ntlm_reflection)
core/session.py:199
↓ 1 callersMethod_test_epa
Test EPA enforcement using RelayInformer's approach: 1. Try connection with bogus channel binding 2. Try connection with miss
protocols/mssql_detector.py:61
↓ 1 callersMethod_test_https_epa
Test HTTPS EPA enforcement using RelayInformer-style detection. Logic (based on RelayInformer): 1. Try with correct/real CBT
protocols/http_detector.py:169
↓ 1 callersMethod_write_ghost_spn_file
Write all Ghost SPN findings to a plaintext file.
core/scanner.py:425
↓ 1 callersMethodadd_ghost_spn_paths
Inject up to max_paths Ghost SPN relay paths into analysis['relay_paths']. All findings are capped at max_paths entries in the repor
core/relay_analyzer.py:499
↓ 1 callersMethodanalyze
Analyze all scan results and identify relay paths Args: all_results: dict of {host: {protocol: ProtocolResult, ...}}
core/relay_analyzer.py:73
↓ 1 callersMethodanalyze
Analyze protocol results to identify CVE-2025-33073 vulnerability CVE-2025-33073 (NTLM Reflection) allows relaying FROM SMB TO other
detectors/ntlm_reflection.py:65
↓ 1 callersMethodcheck_creds
Check given credentials Returns string with: - status: "success" - error: Error message
core/creds_checker.py:19
↓ 1 callersMethodcheck_gpo
Check GPO for domain-wide NTLMv1 policy Returns dict with: - enabled: bool (True if NTLMv1 is allowed by GPO)
detectors/ntlmv1_detector.py:31
↓ 1 callersMethodconnect
(self, username, password, domain, lmhash, nthash, aesKey, target, doKerberos, dcHost, pipe, timeout=5)
detectors/coercion.py:223
↓ 1 callersMethodconnect
(self, username, password, domain, lmhash, nthash, aesKey, target, doKerberos, dcHost, pipe, timeout=5)
detectors/coercion.py:347
↓ 1 callersMethoddetect
Run Ghost SPN detection against Active Directory. Returns: dict with keys: 'vulnerable' - list of
detectors/ghost_spn.py:35
↓ 1 callersMethoddetect
Detect WebDAV/WebClient service Returns: dict with 'enabled' bool and optional 'error' str
detectors/webdav_detector.py:17
↓ 1 callersMethoddetect
Detect HTTP/HTTPS configuration If HTTP/HTTPS is explicitly requested (--protocols includes http/https), performs comprehens
protocols/http_detector.py:65
↓ 1 callersMethoddetect
Detect LDAP configuration using RelayInformer-style detection
protocols/ldap_detector.py:15
↓ 1 callersMethoddetect
Detect RPC configuration by testing authentication levels Tests in order: CONNECT -> CALL -> PKT_INTEGRITY -> PKT_PRIVACY Th
protocols/rpc_detector.py:15
↓ 1 callersMethoddetect_adcs
Detect ADCS (Certificate Authority) servers via LDAP query Based on Certipy logic Returns: Set of ADCS server ho
detectors/tier0_detector.py:104
↓ 1 callersMethoddetect_all
Detect all tier-0 assets Returns: Set of hostnames (lowercase) that are tier-0 assets
detectors/tier0_detector.py:30
↓ 1 callersMethoddetect_exchange
Detect Exchange servers via group membership query Returns: Set of Exchange server hostnames (lowercase)
detectors/tier0_detector.py:141
↓ 1 callersMethoddetect_sccm
Detect SCCM servers via LDAP query Based on SCCMHunter logic Returns: Set of SCCM server hostnames (lowercase)
detectors/tier0_detector.py:53
↓ 1 callersMethodexploit
Attempt PetitPotam exploit methods Returns list of successful methods
detectors/coercion.py:286
↓ 1 callersMethodexploit
Attempt PrinterBug exploit Returns list of successful methods
detectors/coercion.py:390
↓ 1 callersMethodexploit
Attempt DFSCoerce exploit methods Returns list of successful methods
detectors/coercion.py:453
↓ 1 callersMethodformat
Format results as XML
output/formatters.py:317
↓ 1 callersFunctiongenerate_relay_list
Generate a list of relay targets in URI format for NTLMRelayX. Format: protocol://hostname (or protocol://hostname:port/path for HTTP/HTTPS)
relayking.py:20
↓ 1 callersMethodget_completed_groups
(self)
core/session.py:176
↓ 1 callersMethodget_completed_host_results
Return deserialized scan results for all completed hosts. Each value is a dict of protocol -> ProtocolResult (or dict for webdav/ntlm
core/session.py:154
↓ 1 callersMethodget_dc_hostnames
(self)
core/session.py:119
↓ 1 callersMethodget_gen_relay_list
(self)
core/session.py:193
↓ 1 callersMethodget_output_file
(self)
core/session.py:187
↓ 1 callersMethodget_output_formats
(self)
core/session.py:190
↓ 1 callersMethodget_phase
(self)
core/session.py:92
↓ 1 callersMethodget_port_for_protocol
Get the port number for a given protocol
core/port_scanner.py:141
next →1–100 of 175, ranked by callers