mirror of
https://github.com/shadow1ng/fscan.git
synced 2026-09-22 03:10:42 +08:00
4 万 IP 全端口扫描默认 -gt 180s 完全不够用,3 分钟后报 "解析目标失败: context deadline exceeded" 误导用户。 1. 自适应全局超时:用户未显式指定 -gt 时,根据端口数和是否有 hosts 文件自动调大超时(最高 24h),并输出调整日志 2. 修正超时错误信息:context deadline exceeded 不再包装为 "解析目标失败",改为提示用户调大 -gt 或设为 0 禁用
1848 lines
63 KiB
YAML
1848 lines
63 KiB
YAML
# fscan English translation file
|
|
# Contains only actually used messages (115)
|
|
|
|
# ========================= Command Line Arguments (71) =========================
|
|
flag_host:
|
|
other: "Target host: IP, IP range, IP file, domain"
|
|
flag_exclude_hosts:
|
|
other: "Exclude hosts"
|
|
flag_exclude_hosts_file:
|
|
other: "Exclude hosts file"
|
|
flag_ports:
|
|
other: "Ports: default 1000 common ports"
|
|
flag_exclude_ports:
|
|
other: "Exclude ports"
|
|
flag_hosts_file:
|
|
other: "Hosts file"
|
|
flag_ports_file:
|
|
other: "Ports file"
|
|
flag_scan_mode:
|
|
other: "Scan mode: all(all plugins), icmp(alive detection), or specific plugin names"
|
|
flag_thread_num:
|
|
other: "Port scan thread count"
|
|
flag_timeout:
|
|
other: "Port scan timeout"
|
|
flag_module_thread_num:
|
|
other: "Module thread count"
|
|
flag_global_timeout:
|
|
other: "Global timeout"
|
|
global_timeout_adjusted:
|
|
other: "Large scan detected, global timeout adjusted from {{.V0}}s to {{.V1}}s (use -gt to override)"
|
|
global_timeout_exceeded:
|
|
other: "Global timeout reached (-gt {{.V0}}s), scan aborted. Use -gt to increase or set to 0 to disable"
|
|
flag_disable_ping:
|
|
other: "Disable ping detection"
|
|
flag_disable_tcp_probe:
|
|
other: "Disable TCP supplementary probe"
|
|
flag_disable_subnet_probe:
|
|
other: "Disable subnet pre-filter (optimization that skips empty /24 subnets in large scans)"
|
|
flag_local_plugin:
|
|
other: "Specify local plugin name (e.g.: cleaner, systeminfo, keylogger)"
|
|
flag_debug:
|
|
other: "Enable debug mode, write logs to fscan_debug.log"
|
|
flag_alive_only:
|
|
other: "Alive detection only"
|
|
flag_username:
|
|
other: "Username"
|
|
flag_password:
|
|
other: "Password"
|
|
flag_add_users:
|
|
other: "Additional usernames"
|
|
flag_add_passwords:
|
|
other: "Additional passwords, separated by commas or spaces"
|
|
flag_users_file:
|
|
other: "Username dictionary file"
|
|
flag_passwords_file:
|
|
other: "Password dictionary file"
|
|
flag_userpass_file:
|
|
other: "Username:password pairs file"
|
|
flag_hash_file:
|
|
other: "Hash file"
|
|
flag_hash_value:
|
|
other: "Hash value"
|
|
flag_domain:
|
|
other: "Domain name"
|
|
flag_ssh_key:
|
|
other: "SSH private key file"
|
|
flag_target_url:
|
|
other: "Target URL"
|
|
flag_urls_file:
|
|
other: "URLs file"
|
|
flag_cookie:
|
|
other: "HTTP Cookie"
|
|
flag_user_agent:
|
|
other: "Custom User-Agent header"
|
|
flag_web_timeout:
|
|
other: "Web timeout"
|
|
flag_max_redirects:
|
|
other: "Maximum HTTP redirects"
|
|
flag_http_proxy:
|
|
other: "HTTP proxy"
|
|
flag_socks5_proxy:
|
|
other: "Use SOCKS5 proxy (e.g.: 127.0.0.1:1080 or socks5://user:[email protected]:1080)"
|
|
flag_iface:
|
|
other: "Specify local interface IP address (VPN scenario, e.g.: 10.8.0.5)"
|
|
flag_poc_path:
|
|
other: "POC script path"
|
|
flag_poc_name:
|
|
other: "POC name"
|
|
flag_poc_full:
|
|
other: "Full POC scan"
|
|
flag_dns_log:
|
|
other: "DNS logging"
|
|
flag_poc_num:
|
|
other: "POC concurrency"
|
|
flag_no_poc:
|
|
other: "Disable POC scan"
|
|
flag_redis_file:
|
|
other: "Redis file"
|
|
flag_redis_shell:
|
|
other: "Redis Shell"
|
|
flag_redis_write_path:
|
|
other: "Redis write path"
|
|
flag_redis_write_content:
|
|
other: "Redis write content"
|
|
flag_redis_write_file:
|
|
other: "Redis write file"
|
|
flag_disable_redis:
|
|
other: "Disable Redis exploitation"
|
|
flag_disable_brute:
|
|
other: "Disable brute force"
|
|
flag_max_retries:
|
|
other: "Maximum retries"
|
|
flag_packet_rate_limit:
|
|
other: "Maximum packets per minute (0 means no limit)"
|
|
flag_max_packet_count:
|
|
other: "Maximum total packet count for entire program (0 means no limit)"
|
|
flag_icmp_rate:
|
|
other: "ICMP packet rate (ratio to max rate, default 0.1, ~1463 pps)"
|
|
flag_output_file:
|
|
other: "Output file"
|
|
flag_output_format:
|
|
other: "Output format: txt, json, csv"
|
|
flag_disable_save:
|
|
other: "Disable result saving"
|
|
flag_silent_mode:
|
|
other: "Silent mode"
|
|
flag_no_color:
|
|
other: "Disable color output"
|
|
flag_log_level:
|
|
other: "Log level"
|
|
flag_disable_progress:
|
|
other: "Disable progress bar"
|
|
flag_perf_stats:
|
|
other: "Output performance stats in JSON"
|
|
flag_shellcode:
|
|
other: "Shellcode"
|
|
flag_reverse_shell_target:
|
|
other: "Reverse shell target address:port (e.g.: 192.168.1.100:4444)"
|
|
flag_start_socks5_server:
|
|
other: "Start SOCKS5 proxy server on port (e.g.: 1080)"
|
|
flag_forward_shell_port:
|
|
other: "Start forward shell server on port (e.g.: 4444)"
|
|
flag_persistence_file:
|
|
other: "Linux persistence target file path (supports .elf/.sh files)"
|
|
flag_win_pe_file:
|
|
other: "Windows persistence target PE file path (supports .exe/.dll files)"
|
|
flag_keylogger_output:
|
|
other: "Keylogger output file path"
|
|
flag_download_url:
|
|
other: "URL of the file to download"
|
|
flag_download_path:
|
|
other: "Save path for downloaded file"
|
|
flag_language:
|
|
other: "Language: zh, en"
|
|
flag_help:
|
|
other: "Show help information"
|
|
flag_web_mode:
|
|
other: "Start Web management UI"
|
|
flag_web_port:
|
|
other: "Web server port"
|
|
# ========================= Scan Mode Messages =========================
|
|
scan_mode_service_selected:
|
|
other: "Service scan mode selected"
|
|
scan_mode_alive_selected:
|
|
other: "Alive detection mode selected"
|
|
scan_mode_local_selected:
|
|
other: "Local scan mode selected"
|
|
scan_mode_web_selected:
|
|
other: "Web scan mode selected"
|
|
scan_info_start:
|
|
other: "Starting information scan"
|
|
scan_host_start:
|
|
other: "Starting host scan"
|
|
scan_vulnerability_start:
|
|
other: "Starting vulnerability scan"
|
|
scan_no_service_plugins:
|
|
other: "No available service plugins found"
|
|
|
|
# ========================= Scan Strategy Messages =========================
|
|
scan_strategy_alive_name:
|
|
other: "Alive Detection"
|
|
scan_strategy_alive_desc:
|
|
other: "Fast detection of host alive status"
|
|
scan_strategy_local_name:
|
|
other: "Local Scan"
|
|
scan_strategy_local_desc:
|
|
other: "Collect local system information"
|
|
scan_strategy_service_name:
|
|
other: "Service Scan"
|
|
scan_strategy_service_desc:
|
|
other: "Scan host services and vulnerabilities"
|
|
scan_strategy_web_name:
|
|
other: "Web Scan"
|
|
scan_strategy_web_desc:
|
|
other: "Scan web application vulnerabilities and information"
|
|
|
|
# ========================= Alive Detection Messages =========================
|
|
scan_alive_start:
|
|
other: "Starting alive detection"
|
|
scan_alive_summary_title:
|
|
other: "Alive Detection Summary"
|
|
scan_alive_hosts_list:
|
|
other: "Alive hosts list:"
|
|
|
|
# ========================= Progress Messages =========================
|
|
progress_scanning_description:
|
|
other: "Scanning Progress"
|
|
progress_scan_completed:
|
|
other: "Scan Completed"
|
|
progress_waiting:
|
|
other: "waiting..."
|
|
progress_done:
|
|
other: "Done"
|
|
progress_duration:
|
|
other: "duration"
|
|
concurrency_plugin:
|
|
other: "Plugins"
|
|
concurrency_local_plugin:
|
|
other: "Local Plugins"
|
|
concurrency_service_plugin:
|
|
other: "Service Plugins"
|
|
concurrency_web_plugin:
|
|
other: "Web Plugins"
|
|
|
|
# ========================= Parse Error Messages =========================
|
|
parse_error_target_empty:
|
|
other: "Target input is empty"
|
|
parse_error_no_hosts:
|
|
other: "No valid target hosts found after parsing"
|
|
parse_error_empty_input:
|
|
other: "Input parameters are empty"
|
|
parse_error_parser_not_init:
|
|
other: "Parser not initialized"
|
|
parser_read_hosts_failed:
|
|
other: "Failed to read hosts file"
|
|
parser_parse_host_failed:
|
|
other: "Failed to parse host"
|
|
parser_parse_exclude_failed:
|
|
other: "Failed to parse exclude hosts"
|
|
parser_no_valid_hosts:
|
|
other: "No valid hosts found"
|
|
parser_cidr_failed:
|
|
other: "CIDR parse failed {{.Arg1}}"
|
|
parser_ip_range_failed:
|
|
other: "IP range parse failed {{.Arg1}}"
|
|
parser_invalid_ip_range_fmt:
|
|
other: "Invalid IP range format: {{.Arg1}}"
|
|
parser_invalid_start_ip:
|
|
other: "Invalid start IP: {{.Arg1}}"
|
|
parser_invalid_end_ip:
|
|
other: "Invalid end IP: {{.Arg1}}"
|
|
parser_invalid_ip_end_val:
|
|
other: "Invalid IP range end value: {{.Arg1}}"
|
|
parser_invalid_ip_range_val:
|
|
other: "Invalid IP range: {{.Arg1}}-{{.Arg2}}"
|
|
parser_invalid_ip_fmt:
|
|
other: "Invalid IP address format: {{.Arg1}}"
|
|
parser_ipv4_only:
|
|
other: "IPv4 addresses only"
|
|
parser_start_gt_end:
|
|
other: "Start IP greater than end IP"
|
|
network_rate_limited:
|
|
other: "Rate limited: {{.Arg1}}"
|
|
tcp_connection_restricted:
|
|
other: "TCP connection {{.Arg1}} restricted: {{.Arg2}}"
|
|
http_request_restricted:
|
|
other: "HTTP request {{.Arg1}} restricted: {{.Arg2}}"
|
|
proxy_dialer_failed:
|
|
other: "Failed to get proxy dialer: {{.Arg1}}"
|
|
connection_failed:
|
|
other: "Connection {{.Arg1}} failed: {{.Arg2}}"
|
|
packet_limit_max_reached:
|
|
other: "Maximum packet count reached: {{.Arg1}}"
|
|
packet_limit_rate_limited:
|
|
other: "Packet rate limited: {{.Arg1}} packets/minute"
|
|
target_local_mode:
|
|
other: "Local scan mode"
|
|
param_conflict_ao_icmp_both:
|
|
other: "Note: Both -ao and -m icmp specified, both enable alive detection mode"
|
|
param_local_multi_plugin:
|
|
other: "Only a single local plugin can be specified, multiple plugins separated by '{{.Arg1}}' are not supported"
|
|
param_join_and:
|
|
other: "{{.Arg1}} and {{.Arg2}}"
|
|
|
|
# ========================= Parser Messages =========================
|
|
parser_empty_input:
|
|
other: "Input parameters are empty"
|
|
parser_file_scan_failed:
|
|
other: "File scan failed"
|
|
parser_username_invalid_chars:
|
|
other: "Username contains invalid characters"
|
|
parser_password_empty:
|
|
other: "Empty passwords not allowed"
|
|
parser_hash_empty:
|
|
other: "Hash value is empty"
|
|
parser_hash_invalid_format:
|
|
other: "Invalid hash format, requires 32-character hexadecimal"
|
|
|
|
# ========================= Config Messages =========================
|
|
config_web_timeout_warning:
|
|
other: "Web timeout is larger than normal timeout, may cause unexpected behavior"
|
|
config_build_failed:
|
|
other: "Configuration build failed"
|
|
output_init_failed:
|
|
other: "Output initialization failed"
|
|
config_credentials_parse_failed:
|
|
other: "Credential parsing failed"
|
|
config_targets_parse_failed:
|
|
other: "Target parsing failed"
|
|
config_read_users_failed:
|
|
other: "Failed to read username file {{.Arg1}}: {{.Arg2}}"
|
|
config_read_passwords_failed:
|
|
other: "Failed to read password file {{.Arg1}}: {{.Arg2}}"
|
|
config_read_urls_failed:
|
|
other: "Failed to read URL file {{.Arg1}}: {{.Arg2}}"
|
|
|
|
# ========================= Plugin Scan Messages (with parameters) =========================
|
|
scan_plugin_not_found:
|
|
other: "No plugin found for scan type {{.Arg1}}, skipped"
|
|
|
|
# ========================= SSH Plugin Messages =========================
|
|
ssh_key_auth_success:
|
|
other: "SSH key authentication successful: {{.Arg1}} [{{.Arg2}}]"
|
|
ssh_pwd_auth_success:
|
|
other: "SSH password authentication successful: {{.Arg1}} [{{.Arg2}}:{{.Arg3}}]"
|
|
ssh_key_read_failed:
|
|
other: "Failed to read SSH private key: {{.Arg1}}"
|
|
ssh_service_identified:
|
|
other: "SSH service identified: {{.Arg1}} - {{.Arg2}}"
|
|
|
|
# ========================= Redis Plugin Messages =========================
|
|
redis_unauth_success:
|
|
other: "Redis unauthorized access: {{.Arg1}}"
|
|
redis_service_identified:
|
|
other: "Redis service identified: {{.Arg1}} - {{.Arg2}}"
|
|
|
|
# ========================= ICMP Messages =========================
|
|
trying_no_listen_icmp:
|
|
other: "Trying no-listen ICMP detection"
|
|
insufficient_privileges:
|
|
other: "Insufficient privileges for raw ICMP detection"
|
|
switching_to_ping:
|
|
other: "Switching to ping command mode"
|
|
icmp_listen_failed:
|
|
other: "ICMP listen failed: {{.Arg1}}"
|
|
icmp_connect_failed:
|
|
other: "ICMP connect failed: {{.Arg1}}"
|
|
icmp_listener_panic:
|
|
other: "ICMP listener goroutine panic: {{.Arg1}}"
|
|
host_alive:
|
|
other: "{{.Arg1}} alive (protocol: {{.Arg2}})"
|
|
proxy_mode_disable_icmp:
|
|
other: "Proxy mode detected, disabling ICMP scan"
|
|
segment_16_alive:
|
|
other: "{{.Arg1}}.0.0/16 segment alive: {{.Arg2}}"
|
|
segment_24_alive:
|
|
other: "{{.Arg1}}.0/24 segment alive: {{.Arg2}}"
|
|
tcp_probe_low_icmp_rate:
|
|
other: "Low ICMP response rate ({{.Arg1}}), enabling TCP supplementary probe ({{.Arg2}} hosts)"
|
|
tcp_probe_found:
|
|
other: "TCP probe found {{.Arg1}} alive hosts"
|
|
|
|
# ========================= Alive Scan Stats Messages =========================
|
|
parse_target_failed:
|
|
other: "Parse target failed: {{.Arg1}}"
|
|
alive_scan_start_single:
|
|
other: "Starting alive scan: {{.Arg1}}"
|
|
alive_scan_start_multi:
|
|
other: "Starting alive scan: {{.Arg1}} targets (first: {{.Arg2}})"
|
|
alive_total_hosts:
|
|
other: "Total hosts: {{.Arg1}}"
|
|
alive_hosts_count:
|
|
other: "Alive hosts: {{.Arg1}}"
|
|
alive_dead_hosts:
|
|
other: "Dead hosts: {{.Arg1}}"
|
|
alive_success_rate:
|
|
other: "Success rate: {{.Arg1}}"
|
|
alive_scan_duration:
|
|
other: "Scan duration: {{.Arg1}}"
|
|
alive_host_item:
|
|
other: " [{{.Arg1}}] {{.Arg2}}"
|
|
|
|
# ========================= Scanner Messages =========================
|
|
http_client_init_failed:
|
|
other: "HTTP client initialization failed: {{.Arg1}}"
|
|
active_reverse_shell:
|
|
other: "Active reverse shell detected, keeping program running..."
|
|
active_socks5_proxy:
|
|
other: "Active SOCKS5 proxy detected, keeping program running..."
|
|
active_forward_shell:
|
|
other: "Active forward shell detected, keeping program running..."
|
|
press_ctrl_c_exit:
|
|
other: "Press Ctrl+C to exit"
|
|
received_exit_signal:
|
|
other: "Received exit signal, shutting down..."
|
|
scan_task_complete:
|
|
other: "Scan task complete, duration {{.Arg1}}, scanned {{.Arg2}} targets"
|
|
plugin_panic:
|
|
other: "Plugin {{.Arg1}} panic while scanning {{.Arg2}}:{{.Arg3}}: {{.Arg4}}"
|
|
plugin_scan_error:
|
|
other: "Plugin scan error {{.Arg1}}:{{.Arg2}} - {{.Arg3}}"
|
|
brute_no_weak_pass:
|
|
other: "{{.Arg1}}:{{.Arg2}} {{.Arg3}} no weak password found"
|
|
|
|
# ========================= Port Scan Messages =========================
|
|
invalid_port:
|
|
other: "Invalid port: {{.Arg1}}"
|
|
port_scan_start:
|
|
other: "Starting port scan, {{.Arg1}} tasks, estimated {{.Arg2}} seconds ({{.Arg3}} minutes)"
|
|
thread_pool_create_failed:
|
|
other: "Failed to create thread pool: {{.Arg1}}"
|
|
port_scan_complete:
|
|
other: "Scan complete, found {{.Arg1}} open ports"
|
|
scan_failure_rate_high:
|
|
other: "Scan failure rate too high: {{.Arg1}} ({{.Arg2}}/{{.Arg3}} failed)"
|
|
scan_failure_reason:
|
|
other: "Possible reason: Thread count too high causing resource exhaustion"
|
|
scan_reduce_threads_suggestion:
|
|
other: "Suggestion: Reduce thread count (current {{.Arg1}}) to 50-100, or increase system ulimit"
|
|
scan_partial_failure:
|
|
other: "Partial port scan failure: {{.Arg1}} ({{.Arg2}}/{{.Arg3}})"
|
|
scan_reduce_threads_accuracy:
|
|
other: "Suggestion: Reduce thread count (current {{.Arg1}}) to improve accuracy"
|
|
resource_exhausted_warning:
|
|
other: "Resource exhausted errors {{.Arg1}} times, suggest reducing thread count (-t) or increase ulimit"
|
|
port_open:
|
|
other: "Port open {{.Arg1}}"
|
|
port_open_http:
|
|
other: "Port open {{.Arg1}} [http](HTTP probe)"
|
|
port_scan_no_alive_subnet:
|
|
other: "Subnet probe found no alive subnets, skipping port scan"
|
|
network_rate_limited_pattern:
|
|
other: "Rate limited"
|
|
port_scan_debug_start:
|
|
other: "[PortScan] start: {{.Arg1}} hosts, threads={{.Arg2}}"
|
|
port_scan_debug_ports_parsed:
|
|
other: "[PortScan] ports parsed: {{.Arg1}} ports"
|
|
proxy_echo_warning:
|
|
other: "Proxy echo-all behavior detected, port scan results may be inaccurate"
|
|
port_scan_debug_total_tasks:
|
|
other: "[PortScan] total tasks: {{.Arg1}}"
|
|
large_scan_notice:
|
|
other: "Large scan: {{.Arg1}} targets ({{.Arg2}} hosts x {{.Arg3}} ports)"
|
|
large_scan_thread_adjusted:
|
|
other: "Adjusted thread count: {{.Arg1}} -> {{.Arg2}} (large scan optimization)"
|
|
port_scan_progress_description:
|
|
other: "Port scanning ({{.Arg1}} threads)"
|
|
port_scan_debug_progress_ready:
|
|
other: "[PortScan] progress bar initialized"
|
|
port_scan_debug_pool_create:
|
|
other: "[PortScan] creating worker pool, size={{.Arg1}}"
|
|
port_scan_debug_pool_created:
|
|
other: "[PortScan] worker pool created"
|
|
port_scan_debug_schedule_start:
|
|
other: "[PortScan] starting sliding-window schedule"
|
|
port_scan_debug_schedule_done:
|
|
other: "[PortScan] sliding-window schedule completed"
|
|
proxy_verify_failed:
|
|
other: "Proxy verification failed {{.Arg1}}: {{.Arg2}}"
|
|
proxy_error_response:
|
|
other: "Proxy returned error response {{.Arg1}}"
|
|
proxy_probe_write_failed:
|
|
other: "Probe write failed {{.Arg1}}: {{.Arg2}}"
|
|
proxy_probe_error_response:
|
|
other: "Proxy probe returned error {{.Arg1}}"
|
|
proxy_connection_rejected:
|
|
other: "Proxy connection rejected {{.Arg1}}: {{.Arg2}}"
|
|
proxy_no_response_closed:
|
|
other: "Proxy connection had no response, treating port as closed {{.Arg1}}"
|
|
subnet_prefilter_start:
|
|
other: "Subnet prefilter: {{.Arg1}} /24 subnets, {{.Arg2}} hosts"
|
|
subnet_prefilter_done:
|
|
other: "Subnet prefilter complete: {{.Arg1}} alive (gateway hits {{.Arg2}}), {{.Arg3}} skipped, {{.Arg4}} hosts remaining"
|
|
|
|
# ========================= Local Scan Messages =========================
|
|
local_plugin_info:
|
|
other: "Local plugin: {{.Arg1}}"
|
|
local_plugin_not_specified:
|
|
other: "Local plugin: Not specified"
|
|
local_plugin_not_found:
|
|
other: "Error: Local plugin '{{.Arg1}}' does not exist or is not available on current platform"
|
|
|
|
# ========================= Service Scan Messages =========================
|
|
service_plugin_info:
|
|
other: "Service plugins: {{.Arg1}}"
|
|
service_plugin_custom:
|
|
other: "Service plugins: Custom specified ({{.Arg1}})"
|
|
service_plugin_none:
|
|
other: "Service plugins: None available"
|
|
port_out_of_range:
|
|
other: "Port out of range: {{.Arg1}} (valid range: 1-65535)"
|
|
invalid_target_format:
|
|
other: "Invalid target format: {{.Arg1}}"
|
|
host_port_invalid:
|
|
other: "Host {{.Arg1}} port format invalid: {{.Arg2}}"
|
|
host_port_out_of_range:
|
|
other: "Host {{.Arg1}} port out of range: {{.Arg2}} (valid range: 1-65535)"
|
|
alive_hosts_count_info:
|
|
other: "Alive hosts count: {{.Arg1}}"
|
|
alive_ports_count:
|
|
other: "Alive ports count: {{.Arg1}}"
|
|
|
|
# ========================= Web Scan Messages =========================
|
|
http_proxy_config_error:
|
|
other: "HTTP proxy configuration error: {{.Arg1}}"
|
|
socks5_not_supported_web:
|
|
other: "Web detection does not support SOCKS5 proxy, recommend using HTTP proxy (-proxy)"
|
|
url_parse_failed:
|
|
other: "Failed to parse URL: {{.Arg1}} - {{.Arg2}}"
|
|
invalid_scan_target:
|
|
other: "Invalid scan target"
|
|
poc_load_failed:
|
|
other: "POC load failed, cannot execute scan"
|
|
|
|
# ========================= Base Scan Strategy Messages =========================
|
|
plugins_custom_specified:
|
|
other: "{{.Arg1}}: Custom specified ({{.Arg2}})"
|
|
plugins_info:
|
|
other: "{{.Arg1}}: {{.Arg2}}"
|
|
plugins_none:
|
|
other: "{{.Arg1}}: None available"
|
|
start_local_scan:
|
|
other: "Starting local scan"
|
|
start_service_scan:
|
|
other: "Starting service scan"
|
|
start_web_scan:
|
|
other: "Starting web scan"
|
|
start_scan:
|
|
other: "Starting scan"
|
|
plugin_list_summary:
|
|
other: "{{.Arg1}} ... {{.Arg2}} total"
|
|
service_probe_empty_response:
|
|
other: "Response data is empty"
|
|
service_probe_microsoft_ds:
|
|
other: "Special handling for microsoft-ds service"
|
|
service_probe_identified:
|
|
other: "Service identified: {{.Arg1}}, Banner: {{.Arg2}}"
|
|
service_probe_http_identified:
|
|
other: "Identified as HTTP service"
|
|
service_probe_unknown:
|
|
other: "Unknown service"
|
|
service_probe_soft_match:
|
|
other: "Soft-matched service: {{.Arg1}}"
|
|
icmp_debug_all_responded:
|
|
other: "[ICMP] all responded, elapsed {{.Arg1}}"
|
|
icmp_debug_max_wait:
|
|
other: "[ICMP] max wait reached {{.Arg1}}, alive {{.Arg2}}/{{.Arg3}}"
|
|
icmp_debug_stable_done:
|
|
other: "[ICMP] response stable, ending early, elapsed {{.Arg1}}, alive {{.Arg2}}/{{.Arg3}}"
|
|
adaptive_pool_resource_exhausted:
|
|
other: "[AdaptivePool] resource exhaustion rate {{.Arg1}}%, threads {{.Arg2}} -> {{.Arg3}}"
|
|
adaptive_pool_decrease:
|
|
other: "Concurrency adjusted: {{.Arg1}} -> {{.Arg2}} (pressure detected)"
|
|
adaptive_pool_increase:
|
|
other: "Concurrency adjusted: {{.Arg1}} -> {{.Arg2}} (network healthy)"
|
|
adaptive_pool_slowstart_exit:
|
|
other: "Slow start exit: current {{.Arg1}} (congestion detected)"
|
|
adaptive_pool_wait_timeout:
|
|
other: "Thread pool wait timed out (10 minutes), forcing exit"
|
|
net_probe_result:
|
|
other: "Network probe: {{.Arg1}}, RTT {{.Arg2}}ms, loss {{.Arg3}}%, concurrency {{.Arg4}}/{{.Arg5}}"
|
|
net_env_lan:
|
|
other: "LAN"
|
|
net_env_wan:
|
|
other: "WAN"
|
|
net_env_internet:
|
|
other: "Internet"
|
|
net_env_slow:
|
|
other: "Slow network"
|
|
env_tune_summary:
|
|
other: "Adaptive params: Timeout={{.Arg1}}ms, ModuleThread={{.Arg2}}, Retry={{.Arg3}}, ICMPRate={{.Arg4}}, PocNum={{.Arg5}}"
|
|
env_fd_limit:
|
|
other: "fd limit constraint: threads {{.Arg1}} -> {{.Arg2}} (ulimit={{.Arg3}})"
|
|
|
|
# ========================= Service Plugin Messages =========================
|
|
# Format: {service}_{type} - type: credential/unauth/service/vuln
|
|
ldap_credential:
|
|
other: "LDAP {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
ldap_hash_credential:
|
|
other: "LDAP {{.Arg1}} {{.Arg2}}\\{{.Arg3}} [Hash:{{.Arg4}}]"
|
|
ldap_service:
|
|
other: "LDAP {{.Arg1}} {{.Arg2}}"
|
|
kafka_credential:
|
|
other: "Kafka {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
kafka_service:
|
|
other: "Kafka {{.Arg1}} {{.Arg2}}"
|
|
ftp_service:
|
|
other: "FTP {{.Arg1}} {{.Arg2}}"
|
|
rdp_service:
|
|
other: "RDP {{.Arg1}} {{.Arg2}}"
|
|
activemq_credential:
|
|
other: "ActiveMQ {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
activemq_service:
|
|
other: "ActiveMQ {{.Arg1}} {{.Arg2}}"
|
|
telnet_credential:
|
|
other: "Telnet {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
telnet_service:
|
|
other: "Telnet {{.Arg1}} {{.Arg2}}"
|
|
telnet_unauth_rce:
|
|
other: "Telnet {{.Arg1}} unauthorized RCE [{{.Arg2}}] {{.Arg3}}"
|
|
telnet_credential_rce:
|
|
other: "Telnet {{.Arg1}} {{.Arg2}}:{{.Arg3}} RCE verified [{{.Arg4}}] {{.Arg5}}"
|
|
telnet_cve202624061:
|
|
other: "Telnet {{.Arg1}} CVE-2026-24061 Telnetd Authentication Bypass (user: {{.Arg2}}) {{.Arg3}}"
|
|
cassandra_credential:
|
|
other: "Cassandra {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
cassandra_service:
|
|
other: "Cassandra {{.Arg1}} {{.Arg2}}"
|
|
cassandra_unauth:
|
|
other: "Cassandra {{.Arg1}} No authentication required"
|
|
vnc_unauth:
|
|
other: "VNC {{.Arg1}} Unauthorized access"
|
|
vnc_credential:
|
|
other: "VNC {{.Arg1}} Password: {{.Arg2}}"
|
|
smtp_credential:
|
|
other: "SMTP {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
smtp_service:
|
|
other: "SMTP {{.Arg1}} {{.Arg2}}"
|
|
mongodb_unauth:
|
|
other: "MongoDB {{.Arg1}} Unauthorized access"
|
|
mongodb_credential:
|
|
other: "MongoDB {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
mongodb_auth_required:
|
|
other: "MongoDB {{.Arg1}} Authentication required"
|
|
elasticsearch_credential:
|
|
other: "Elasticsearch {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
elasticsearch_unauth:
|
|
other: "Elasticsearch {{.Arg1}} Unauthorized access"
|
|
elasticsearch_service:
|
|
other: "Elasticsearch {{.Arg1}} {{.Arg2}}"
|
|
mysql_credential:
|
|
other: "MySQL {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
mysql_service:
|
|
other: "MySQL {{.Arg1}} {{.Arg2}}"
|
|
memcached_unauth:
|
|
other: "Memcached {{.Arg1}} Unauthorized access"
|
|
memcached_service:
|
|
other: "Memcached {{.Arg1}} {{.Arg2}}"
|
|
rsync_credential:
|
|
other: "Rsync {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
rsync_service:
|
|
other: "Rsync {{.Arg1}} {{.Arg2}}"
|
|
oracle_credential:
|
|
other: "Oracle {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
oracle_service:
|
|
other: "Oracle {{.Arg1}} {{.Arg2}}"
|
|
oracle_default_account:
|
|
other: "Oracle {{.Arg1}} Default account: {{.Arg2}}:{{.Arg3}}"
|
|
postgresql_credential:
|
|
other: "PostgreSQL {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
postgresql_service:
|
|
other: "PostgreSQL {{.Arg1}} {{.Arg2}}"
|
|
postgresql_vuln:
|
|
other: "PostgreSQL {{.Arg1}} {{.Arg2}}"
|
|
smb_service:
|
|
other: "SMB {{.Arg1}} {{.Arg2}}"
|
|
rabbitmq_credential:
|
|
other: "RabbitMQ {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
rabbitmq_service:
|
|
other: "RabbitMQ {{.Arg1}} {{.Arg2}}"
|
|
neo4j_unauth:
|
|
other: "Neo4j {{.Arg1}} Unauthorized access"
|
|
neo4j_credential:
|
|
other: "Neo4j {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
neo4j_service:
|
|
other: "Neo4j {{.Arg1}} {{.Arg2}}"
|
|
mssql_credential:
|
|
other: "MSSQL {{.Arg1}} {{.Arg2}}:{{.Arg3}}"
|
|
mssql_service:
|
|
other: "MSSQL {{.Arg1}} {{.Arg2}}"
|
|
|
|
# ========================= Vulnerability Detection Messages =========================
|
|
smbghost_vuln:
|
|
other: "SMB Ghost {{.Arg1}} CVE-2020-0796 Vulnerable"
|
|
ms17010_start:
|
|
other: "MS17-010 exploitation started: {{.Arg1}}"
|
|
ms17010_complete:
|
|
other: "MS17-010 exploitation completed: {{.Arg1}}"
|
|
ms17010_shellcode_complete:
|
|
other: "{{.Arg1}} MS17-010 exploitation completed (Shellcode length: {{.Arg2}})"
|
|
ms17010_protocol_decrypt_error:
|
|
other: "Protocol request decryption error: {{.Arg1}}"
|
|
ms17010_protocol_decode_error:
|
|
other: "Protocol request decoding error: {{.Arg1}}"
|
|
ms17010_session_decrypt_error:
|
|
other: "Session request decryption error: {{.Arg1}}"
|
|
ms17010_session_decode_error:
|
|
other: "Session request decoding error: {{.Arg1}}"
|
|
ms17010_connect_decrypt_error:
|
|
other: "Connection request decryption error: {{.Arg1}}"
|
|
ms17010_connect_decode_error:
|
|
other: "Connection request decoding error: {{.Arg1}}"
|
|
ms17010_pipe_decrypt_error:
|
|
other: "Pipe request decryption error: {{.Arg1}}"
|
|
ms17010_pipe_decode_error:
|
|
other: "Pipe request decoding error: {{.Arg1}}"
|
|
ms17010_port_only:
|
|
other: "MS17-010 detection only supports port 445"
|
|
ms17010_vuln_banner:
|
|
other: "MS17-010 vulnerability ({{.Arg1}})"
|
|
ms17010_not_vulnerable:
|
|
other: "Target is not vulnerable to MS17-010"
|
|
ms17010_exploit_header:
|
|
other: "=== MS17-010 exploitation result - {{.Arg1}} ==="
|
|
ms17010_exploit_check_failed:
|
|
other: "[Vulnerability check failed] {{.Arg1}}"
|
|
ms17010_exploit_not_vulnerable:
|
|
other: "[Vulnerability status] Target is not vulnerable to MS17-010"
|
|
ms17010_exploit_confirmed:
|
|
other: "[Vulnerability confirmed] MS17-010 vulnerability exists"
|
|
ms17010_exploit_os:
|
|
other: "[Operating system] {{.Arg1}}"
|
|
ms17010_exploit_backdoor_found:
|
|
other: "[Backdoor check] DOUBLEPULSAR backdoor found"
|
|
ms17010_exploit_backdoor_not_found:
|
|
other: "[Backdoor check] DOUBLEPULSAR backdoor not found"
|
|
ms17010_exploit_mode:
|
|
other: "[Exploit mode] {{.Arg1}}"
|
|
ms17010_exploit_start_attack:
|
|
other: "[Exploit status] Starting EternalBlue attack..."
|
|
ms17010_exploit_failed:
|
|
other: "[Exploit result] Exploit failed: {{.Arg1}}"
|
|
ms17010_exploit_success:
|
|
other: "[Exploit result] Exploit completed successfully"
|
|
ms17010_exploit_bind_hint:
|
|
other: "[Connection hint] Use the following command to connect to Bind Shell:"
|
|
ms17010_exploit_add_hint:
|
|
other: "[Access hint] Administrator account added. Connect with:"
|
|
ms17010_exploit_add_credential:
|
|
other: " Username: sysadmin Password: 1qaz@WSX!@#4"
|
|
ms17010_exploit_guest_hint:
|
|
other: "[Access hint] Guest account enabled. Remote connection is available"
|
|
ms17010_exploit_detect_only:
|
|
other: "[Exploit mode] Detection only (shellcode not configured)"
|
|
ms17010_exploit_shellcode_hint:
|
|
other: "[Hint] Use -sc to configure shellcode for exploitation"
|
|
ms17010_exploit_supported_modes:
|
|
other: " Supported modes: bind, add, guest, or custom shellcode"
|
|
ms17010_base64_decode_failed:
|
|
other: "base64 decode failed"
|
|
ms17010_aes_cipher_failed:
|
|
other: "Failed to create AES cipher block"
|
|
ms17010_ciphertext_too_short:
|
|
other: "Ciphertext is too short"
|
|
ms17010_invalid_padding:
|
|
other: "Invalid padding"
|
|
ms17010_padding_check_failed:
|
|
other: "Padding validation failed"
|
|
ms17010_connection_error:
|
|
other: "Connection error"
|
|
ms17010_set_timeout_error:
|
|
other: "Set timeout error"
|
|
ms17010_send_protocol_error:
|
|
other: "Send protocol request error"
|
|
ms17010_smbv1_unsupported:
|
|
other: "Target may not support SMBv1"
|
|
ms17010_smbv1_rejected:
|
|
other: "SMBv1 protocol negotiation rejected"
|
|
ms17010_send_session_error:
|
|
other: "Send session request error"
|
|
ms17010_session_failed:
|
|
other: "SMB session setup failed"
|
|
ms17010_session_rejected:
|
|
other: "SMB session rejected"
|
|
ms17010_send_tree_error:
|
|
other: "Send tree connect request error"
|
|
ms17010_read_tree_error:
|
|
other: "Read tree connect response error"
|
|
ms17010_tree_response_incomplete:
|
|
other: "Tree connect response incomplete"
|
|
ms17010_send_pipe_error:
|
|
other: "Send pipe request error"
|
|
ms17010_read_pipe_error:
|
|
other: "Read pipe response error"
|
|
ms17010_pipe_response_incomplete:
|
|
other: "Pipe response incomplete"
|
|
ms17010_bind_shellcode_decrypt_failed:
|
|
other: "Failed to decrypt bind shellcode"
|
|
ms17010_add_shellcode_decrypt_failed:
|
|
other: "Failed to decrypt add shellcode"
|
|
ms17010_guest_shellcode_decrypt_failed:
|
|
other: "Failed to decrypt guest shellcode"
|
|
ms17010_shellcode_file_read_failed:
|
|
other: "Failed to read shellcode file"
|
|
ms17010_invalid_shellcode:
|
|
other: "Invalid shellcode"
|
|
ms17010_shellcode_decode_failed:
|
|
other: "Shellcode decode failed"
|
|
findnet_discovery_failed:
|
|
other: "Network discovery failed"
|
|
findnet_hostname:
|
|
other: "Hostname: {{.Arg1}}"
|
|
findnet_ipv4_count:
|
|
other: "IPv4: {{.Arg1}}"
|
|
findnet_ipv6_count:
|
|
other: "IPv6: {{.Arg1}}"
|
|
findnet_complete:
|
|
other: "Network information collection completed"
|
|
findnet_rpc_request1_failed:
|
|
other: "Failed to send RPC request 1"
|
|
findnet_rpc_response1_failed:
|
|
other: "Failed to read RPC response 1"
|
|
findnet_rpc_request2_failed:
|
|
other: "Failed to send RPC request 2"
|
|
findnet_rpc_response2_failed:
|
|
other: "Failed to read RPC response 2"
|
|
netbios_port_only:
|
|
other: "NetBIOS plugin only supports ports 137 and 139"
|
|
netbios_info_not_found:
|
|
other: "No valid NetBIOS information found"
|
|
netbios_name_connect_failed:
|
|
other: "Failed to connect to NetBIOS name service"
|
|
netbios_query_send_failed:
|
|
other: "Failed to send NetBIOS query"
|
|
netbios_response_read_failed:
|
|
other: "Failed to read NetBIOS response"
|
|
netbios_session_connect_failed:
|
|
other: "Failed to connect to NetBIOS session service"
|
|
netbios_smb_negotiate_send_failed:
|
|
other: "Failed to send SMB negotiate request 1"
|
|
netbios_smb_negotiate_read_failed:
|
|
other: "Failed to read SMB negotiate response 1"
|
|
netbios_smb_session_send_failed:
|
|
other: "Failed to send SMB Session Setup"
|
|
netbios_smb_session_read_failed:
|
|
other: "Failed to read SMB Session Setup response"
|
|
netbios_response_too_short:
|
|
other: "NetBIOS response data is too short"
|
|
netbios_no_name_records:
|
|
other: "No NetBIOS name records"
|
|
netbios_smb_response_too_short:
|
|
other: "SMB response data is too short"
|
|
rdp_port_closed:
|
|
other: "RDP port is not open"
|
|
rdp_remote_desktop_service:
|
|
other: "RDP remote desktop service"
|
|
ssh_service_banner:
|
|
other: "SSH service: {{.Arg1}}"
|
|
kafka_auth_required:
|
|
other: "Kafka (authentication required)"
|
|
oracle_connect_failed:
|
|
other: "Failed to connect to Oracle database"
|
|
oracle_default_account_banner:
|
|
other: "Unauthorized access - default account"
|
|
ftp_anonymous_access_detail:
|
|
other: "FTP {{.Arg1}} anonymous access - {{.Arg2}}:{{.Arg3}}"
|
|
ftp_anonymous_banner:
|
|
other: "FTP anonymous access"
|
|
unauthorized_access:
|
|
other: "Unauthorized access"
|
|
redis_ping_failed:
|
|
other: "redis PING test failed: {{.Arg1}}"
|
|
redis_service_pong:
|
|
other: "Redis service (PONG response)"
|
|
redis_service_auth_required:
|
|
other: "Redis service (authentication required)"
|
|
redis_service_protocol_response:
|
|
other: "Redis service (protocol response)"
|
|
redis_service_plain:
|
|
other: "Redis service"
|
|
redis_key_file_read_failed:
|
|
other: "Failed to read key file {{.Arg1}}: {{.Arg2}}"
|
|
redis_key_file_empty:
|
|
other: "Key file {{.Arg1}} is empty"
|
|
redis_host_format_invalid:
|
|
other: "Invalid host address format"
|
|
smtp_anonymous_mail_allowed:
|
|
other: "Unauthorized access - anonymous mail sending allowed"
|
|
smtp_open_relay:
|
|
other: "Unauthorized access - open relay"
|
|
smtp_vrfy_user_enum:
|
|
other: "Unauthorized access - VRFY user enumeration ({{.Arg1}})"
|
|
smtp_expn_list_enum:
|
|
other: "Unauthorized access - EXPN mailing list enumeration ({{.Arg1}})"
|
|
smtp_mail_service_info:
|
|
other: "SMTP mail service ({{.Arg1}})"
|
|
smtp_mail_service:
|
|
other: "SMTP mail service"
|
|
auth_required:
|
|
other: "Authentication required"
|
|
empty_response_received:
|
|
other: "Received empty response"
|
|
unexpected_status_code:
|
|
other: "Unexpected status code"
|
|
unknown_status_code:
|
|
other: "Unknown error, status code"
|
|
ldap_all_dn_failed:
|
|
other: "All DN formats failed"
|
|
memcached_access_failed:
|
|
other: "Failed to access Memcached service"
|
|
memcached_connect_failed:
|
|
other: "Failed to connect to Memcached service"
|
|
rsync_connect_failed:
|
|
other: "Failed to connect to Rsync service"
|
|
rsync_modules_failed:
|
|
other: "Failed to get module list"
|
|
rsync_unauth_modules:
|
|
other: "Unauthorized access - available modules: {{.Arg1}}"
|
|
rsync_service_info:
|
|
other: "Rsync service ({{.Arg1}})"
|
|
rsync_file_sync_service:
|
|
other: "Rsync file synchronization service"
|
|
rabbitmq_guest_default_password:
|
|
other: "Unauthorized access - guest default password"
|
|
cassandra_no_auth_cluster:
|
|
other: "Cassandra (no authentication, cluster: {{.Arg1}})"
|
|
cassandra_auth_required:
|
|
other: "Cassandra (authentication required)"
|
|
telnet_unauth_service:
|
|
other: "Telnet remote terminal service (unauthorized access)"
|
|
telnet_auth_required:
|
|
other: "Telnet remote terminal service (authentication required)"
|
|
telnet_password_only:
|
|
other: "Telnet remote terminal service (password only)"
|
|
telnet_custom_welcome:
|
|
other: "Telnet remote terminal service (custom welcome: {{.Arg1}})"
|
|
telnet_remote_terminal_service:
|
|
other: "Telnet remote terminal service"
|
|
postgresql_trust_unauth:
|
|
other: "Unauthorized access (trust authentication)"
|
|
postgresql_trust_unauth_version:
|
|
other: "Unauthorized access (trust authentication) - {{.Arg1}}"
|
|
activemq_stomp_send_failed:
|
|
other: "Failed to send STOMP request"
|
|
activemq_stomp_read_failed:
|
|
other: "Failed to read STOMP response"
|
|
activemq_stomp_empty_response:
|
|
other: "STOMP returned no response data"
|
|
activemq_stomp_auth_error:
|
|
other: "STOMP authentication error"
|
|
activemq_stomp_unknown_response:
|
|
other: "Unknown STOMP response format"
|
|
smb_port_only:
|
|
other: "SMB plugin only supports ports 139 and 445"
|
|
smb_probe_failed:
|
|
other: "SMB protocol probe failed"
|
|
smb_unauth_domain_access:
|
|
other: "SMB {{.Arg1}} unauthorized access - {{.Arg2}}\\{{.Arg3}}:{{.Arg4}}"
|
|
smb_unauth_access:
|
|
other: "SMB {{.Arg1}} unauthorized access - {{.Arg2}}:{{.Arg3}}"
|
|
smb_anonymous_access_detail:
|
|
other: "SMB {{.Arg1}} anonymous access - {{.Arg2}}:{{.Arg3}}"
|
|
smb_anonymous_banner:
|
|
other: "SMB anonymous access"
|
|
smbv1_negotiate_send_failed:
|
|
other: "Failed to send SMBv1 negotiate packet"
|
|
smbv1_negotiate_read_failed:
|
|
other: "Failed to read SMBv1 negotiate response: {{.Arg1}}"
|
|
smbv1_session_send_failed:
|
|
other: "Failed to send SMBv1 Session Setup"
|
|
smbv1_session_read_failed:
|
|
other: "Failed to read SMBv1 Session Setup response"
|
|
smbv2_negotiate_send_failed:
|
|
other: "Failed to send SMBv2 negotiate packet"
|
|
smbv2_negotiate_read_failed:
|
|
other: "Failed to read SMBv2 negotiate response"
|
|
smbv2_session_send_failed:
|
|
other: "Failed to send SMBv2 Session Setup"
|
|
smbv2_session_read_failed:
|
|
other: "Failed to read SMBv2 Session Setup response"
|
|
smbv2_ntlm_send_failed:
|
|
other: "Failed to send SMBv2 NTLM packet"
|
|
smbv2_ntlm_read_failed:
|
|
other: "Failed to read SMBv2 NTLM response"
|
|
connection_timeout:
|
|
other: "Connection timed out"
|
|
netbios_header_too_short:
|
|
other: "NetBIOS header too short"
|
|
message_length_too_large:
|
|
other: "Message length too large"
|
|
local_target:
|
|
other: "Target: {{.Arg1}}"
|
|
local_platform:
|
|
other: "Platform: {{.Arg1}}"
|
|
local_listen_port:
|
|
other: "Listen port: {{.Arg1}}"
|
|
local_output_file:
|
|
other: "Output file: {{.Arg1}}"
|
|
local_start_time:
|
|
other: "Start time: {{.Arg1}}"
|
|
unsupported_platform:
|
|
other: "Unsupported platform: {{.Arg1}}"
|
|
unsupported_os:
|
|
other: "Unsupported operating system: {{.Arg1}}"
|
|
connection_failed_plain:
|
|
other: "Connection failed"
|
|
listen_port_failed:
|
|
other: "Failed to listen on port"
|
|
command_timeout:
|
|
other: "Command execution timed out"
|
|
command_exec_failed:
|
|
other: "Command execution failed: {{.Arg1}}"
|
|
command_success_no_output:
|
|
other: "(Command completed successfully with no output)"
|
|
command_error_with_output:
|
|
other: "Error: {{.Arg1}}\n{{.Arg2}}"
|
|
reverseshell_header:
|
|
other: "=== Go native reverse shell ==="
|
|
reverseshell_error:
|
|
other: "Reverse shell error: {{.Arg1}}"
|
|
reverseshell_done:
|
|
other: "✓ Reverse shell completed"
|
|
forwardshell_header:
|
|
other: "=== Forward shell server ==="
|
|
forwardshell_server_error:
|
|
other: "Forward shell server error: {{.Arg1}}"
|
|
forwardshell_done:
|
|
other: "✓ Forward shell service completed"
|
|
socks5_header:
|
|
other: "=== SOCKS5 proxy server ==="
|
|
socks5_server_error:
|
|
other: "SOCKS5 proxy server error: {{.Arg1}}"
|
|
socks5_done:
|
|
other: "✓ SOCKS5 proxy completed"
|
|
socks5_handshake_read_failed:
|
|
other: "Failed to read handshake request"
|
|
socks5_unsupported_version:
|
|
other: "Unsupported SOCKS version"
|
|
socks5_handshake_write_failed:
|
|
other: "Failed to send handshake response"
|
|
socks5_request_read_failed:
|
|
other: "Failed to read connection request"
|
|
socks5_invalid_request:
|
|
other: "Invalid SOCKS5 request"
|
|
socks5_unsupported_command:
|
|
other: "Unsupported command"
|
|
ipv4_address_invalid:
|
|
other: "Invalid IPv4 address format"
|
|
domain_format_invalid:
|
|
other: "Invalid domain format"
|
|
domain_length_invalid:
|
|
other: "Invalid domain length"
|
|
ipv6_address_invalid:
|
|
other: "Invalid IPv6 address format"
|
|
socks5_unsupported_address_type:
|
|
other: "Unsupported address type"
|
|
socks5_target_connect_failed:
|
|
other: "Failed to connect to target server"
|
|
local_address_unavailable:
|
|
other: "Unable to get local address"
|
|
socks5_success_response_failed:
|
|
other: "Failed to send success response"
|
|
socks5_proxy_connection_established:
|
|
other: "Proxy connection established: {{.Arg1}}"
|
|
keylogger_header:
|
|
other: "=== Keylogger ==="
|
|
keylogger_output_permission_failed:
|
|
other: "Output file permission check failed: {{.Arg1}}"
|
|
platform_requirement_failed:
|
|
other: "Platform requirement check failed: {{.Arg1}}"
|
|
keylogger_failed:
|
|
other: "Keylogging failed: {{.Arg1}}"
|
|
keylogger_failed_plain:
|
|
other: "Keylogging failed"
|
|
keylogger_done:
|
|
other: "✓ Keylogging completed"
|
|
keylogger_event_count:
|
|
other: "Captured event count: {{.Arg1}}"
|
|
keylogger_log_file:
|
|
other: "Log file: {{.Arg1}}"
|
|
output_file_create_failed:
|
|
other: "Unable to create output file {{.Arg1}}"
|
|
output_file_open_failed:
|
|
other: "Unable to open output file"
|
|
keylogger_log_header:
|
|
other: "=== Keylog ==="
|
|
keylogger_header_write_failed:
|
|
other: "Failed to write header information"
|
|
keylogger_entry_write_failed:
|
|
other: "Failed to write keylog entry"
|
|
keylogger_demo_windows:
|
|
other: "Demo keylog - Windows platform"
|
|
keylogger_demo_linux:
|
|
other: "Demo keylog - Linux platform"
|
|
keylogger_demo_darwin:
|
|
other: "Demo keylog - macOS platform"
|
|
command_read_failed:
|
|
other: "Failed to read command"
|
|
local_target_file:
|
|
other: "Target file: {{.Arg1}}"
|
|
persistence_file_required:
|
|
other: "Specify target file path with -persistence-file"
|
|
target_file_not_specified:
|
|
other: "Target file not specified"
|
|
target_file_not_exist:
|
|
other: "Target file does not exist: {{.Arg1}}"
|
|
copy_file_failed:
|
|
other: "✗ Failed to copy file: {{.Arg1}}"
|
|
file_copied_to:
|
|
other: "✓ File copied to: {{.Arg1}}"
|
|
persistence_complete_summary:
|
|
other: "Persistence completed: success({{.Arg1}}) total({{.Arg2}})"
|
|
crontask_linux_only:
|
|
other: "Cron task persistence only supports Linux"
|
|
crontab_unavailable:
|
|
other: "crontab command is unavailable"
|
|
crontask_header:
|
|
other: "=== Cron task persistence ==="
|
|
crontask_user_add_failed:
|
|
other: "✗ Failed to add user cron task: {{.Arg1}}"
|
|
crontask_user_added:
|
|
other: "✓ User crontab task added"
|
|
crontask_system_add_failed:
|
|
other: "✗ Failed to add system cron task: {{.Arg1}}"
|
|
crontask_system_added:
|
|
other: "✓ System cron task added: {{.Arg1}}"
|
|
crontask_at_add_failed:
|
|
other: "✗ Failed to add at task: {{.Arg1}}"
|
|
crontask_at_added:
|
|
other: "✓ at delayed task added"
|
|
crontask_anacron_add_failed:
|
|
other: "✗ Failed to add anacron task: {{.Arg1}}"
|
|
crontask_anacron_added:
|
|
other: "✓ anacron task added"
|
|
persistence_dir_create_failed:
|
|
other: "Unable to create persistence directory"
|
|
crontask_system_create_none:
|
|
other: "Unable to create any system cron task"
|
|
systemdservice_linux_only:
|
|
other: "System service persistence only supports Linux"
|
|
systemctl_unavailable:
|
|
other: "systemctl command is unavailable: {{.Arg1}}"
|
|
systemdservice_header:
|
|
other: "=== System service persistence ==="
|
|
systemdservice_create_failed:
|
|
other: "✗ Failed to create systemd service: {{.Arg1}}"
|
|
systemdservice_created:
|
|
other: "✓ systemd service created: {{.Arg1}}"
|
|
systemdservice_start_failed:
|
|
other: "✗ Failed to start service: {{.Arg1}}"
|
|
systemdservice_started:
|
|
other: "✓ Service enabled and started"
|
|
systemdservice_user_create_failed:
|
|
other: "✗ Failed to create user service: {{.Arg1}}"
|
|
systemdservice_user_created:
|
|
other: "✓ User service created: {{.Arg1}}"
|
|
systemdservice_timer_create_failed:
|
|
other: "✗ Failed to create timer service: {{.Arg1}}"
|
|
systemdservice_timer_created:
|
|
other: "✓ systemd timer created"
|
|
systemdservice_complete_summary:
|
|
other: "System service persistence completed: success({{.Arg1}}) total({{.Arg2}})"
|
|
service_dir_create_failed:
|
|
other: "Unable to create service directory"
|
|
systemdservice_create_none:
|
|
other: "Unable to create any systemd service file"
|
|
service_operation_error:
|
|
other: "Service operation error"
|
|
ldpreload_linux_only:
|
|
other: "LD_PRELOAD persistence only supports Linux"
|
|
ldpreload_so_required:
|
|
other: "Target file must be a .so dynamic library: {{.Arg1}}"
|
|
invalid_file_type:
|
|
other: "Invalid file type"
|
|
ldpreload_header:
|
|
other: "=== LD_PRELOAD persistence ==="
|
|
ldpreload_copy_system_failed:
|
|
other: "✗ Failed to copy file to system directory: {{.Arg1}}"
|
|
ldpreload_env_add_failed:
|
|
other: "✗ Failed to add environment variable: {{.Arg1}}"
|
|
ldpreload_env_added:
|
|
other: "✓ Added to global environment variables"
|
|
ldpreload_shell_add_failed:
|
|
other: "✗ Failed to add shell configuration: {{.Arg1}}"
|
|
ldpreload_shell_added:
|
|
other: "✓ Added to shell configuration: {{.Arg1}}"
|
|
ldpreload_config_create_failed:
|
|
other: "✗ Failed to create ld config: {{.Arg1}}"
|
|
ldpreload_config_created:
|
|
other: "✓ ld preload config created"
|
|
ldpreload_complete_summary:
|
|
other: "LD_PRELOAD persistence completed: success({{.Arg1}}) total({{.Arg2}})"
|
|
ldpreload_system_lib_dir_not_found:
|
|
other: "No suitable system library directory found"
|
|
ldpreload_shell_config_modify_none:
|
|
other: "Unable to modify any shell configuration file"
|
|
cleaner_removed:
|
|
other: "[Clean] {{.Arg1}}"
|
|
cleaner_history_removed:
|
|
other: "[Clean] removed fscan records from {{.Arg1}}"
|
|
sshkey_mkdir_failed:
|
|
other: "[Failed] {{.Arg1}}: unable to create .ssh directory: {{.Arg2}}"
|
|
sshkey_generate_failed:
|
|
other: "[Failed] {{.Arg1}}: key generation failed: {{.Arg2}}"
|
|
sshkey_authorized_read_failed:
|
|
other: "[Failed] {{.Arg1}}: failed to read authorized_keys: {{.Arg2}}"
|
|
sshkey_public_exists:
|
|
other: "[Skip] {{.Arg1}}: public key already exists"
|
|
sshkey_authorized_write_failed:
|
|
other: "[Failed] {{.Arg1}}: unable to write authorized_keys: {{.Arg2}}"
|
|
sshkey_private_save_failed:
|
|
other: "[Failed] {{.Arg1}}: failed to save private key: {{.Arg2}}"
|
|
sshkey_injected:
|
|
other: "[Success] {{.Arg1}}: public key injected into {{.Arg2}}, private key saved as {{.Arg3}}"
|
|
minidump_admin_required:
|
|
other: "Administrator privileges required"
|
|
minidump_load_dll_failed:
|
|
other: "Failed to load system DLL: {{.Arg1}}"
|
|
minidump_try_direct:
|
|
other: "[*] Trying direct memory dump..."
|
|
minidump_av_skip_direct:
|
|
other: "[*] Security software protection detected, skipping direct dump"
|
|
minidump_try_comsvcs:
|
|
other: "[*] Trying comsvcs.dll method..."
|
|
minidump_try_regsave:
|
|
other: "[*] Trying reg save registry export..."
|
|
minidump_all_failed:
|
|
other: "[!] All methods failed"
|
|
minidump_all_methods_failed:
|
|
other: "All credential extraction methods failed"
|
|
minidump_find_lsass_failed:
|
|
other: " Failed to find lsass.exe: {{.Arg1}}"
|
|
minidump_privilege_failed:
|
|
other: " Privilege escalation failed: {{.Arg1}}"
|
|
minidump_direct_failed:
|
|
other: " Direct dump failed: {{.Arg1}}"
|
|
minidump_method_direct:
|
|
other: "Direct memory dump"
|
|
minidump_comsvcs_failed:
|
|
other: " comsvcs.dll failed: {{.Arg1}}"
|
|
minidump_hive_export_failed:
|
|
other: " ✗ {{.Arg1}} export failed"
|
|
minidump_regsave_done:
|
|
other: "[+] Registry hive export completed, parse offline with secretsdump"
|
|
minidump_method_success:
|
|
other: "[+] {{.Arg1}} succeeded: {{.Arg2}} ({{.Arg3}} bytes)"
|
|
minidump_load_named_dll_failed:
|
|
other: "Failed to load {{.Arg1}}"
|
|
minidump_find_proc_failed:
|
|
other: "Failed to find {{.Arg1}} function"
|
|
minidump_snapshot_create_failed:
|
|
other: "Failed to create process snapshot"
|
|
minidump_first_process_failed:
|
|
other: "Failed to get first process"
|
|
minidump_process_name_convert_failed:
|
|
other: "Failed to convert process name"
|
|
minidump_process_not_found:
|
|
other: "Process not found: {{.Arg1}}"
|
|
minidump_open_process_token_failed:
|
|
other: "Failed to open process token"
|
|
minidump_privilege_name_convert_failed:
|
|
other: "Failed to convert privilege name"
|
|
minidump_lookup_privilege_failed:
|
|
other: "Failed to look up privilege value"
|
|
minidump_adjust_token_failed:
|
|
other: "Failed to adjust token privileges"
|
|
minidump_current_process_failed:
|
|
other: "Failed to get current process handle"
|
|
minidump_timeout:
|
|
other: "Memory dump timed out (120 seconds)"
|
|
minidump_write_dump_failed:
|
|
other: "Failed to write dump file"
|
|
minidump_open_process_failed:
|
|
other: "Failed to open process"
|
|
file_create_failed:
|
|
other: "Failed to create file"
|
|
local_step_failed:
|
|
other: "[Failed] {{.Arg1}}: {{.Arg2}}"
|
|
local_step_success:
|
|
other: "[Success] {{.Arg1}}"
|
|
local_step_success_detail:
|
|
other: "[Success] {{.Arg1}} ({{.Arg2}})"
|
|
local_step_success_arrow:
|
|
other: "[Success] {{.Arg1}} -> {{.Arg2}}"
|
|
winregistry_current_user_run:
|
|
other: "Current user Run"
|
|
winregistry_local_machine_run:
|
|
other: "Local machine Run"
|
|
winregistry_current_user_runonce:
|
|
other: "Current user RunOnce"
|
|
winregistry_step_success:
|
|
other: "[Success] {{.Arg1}}: {{.Arg2}}\\{{.Arg3}}"
|
|
winifeo_sticky_keys:
|
|
other: "Sticky Keys (Shift x5)"
|
|
winifeo_accessibility:
|
|
other: "Accessibility (Win+U)"
|
|
winifeo_narrator:
|
|
other: "Narrator"
|
|
winlogon_userinit_append:
|
|
other: "Userinit append"
|
|
winlogon_shell_append:
|
|
other: "Shell append"
|
|
winbits_create_task_failed:
|
|
other: "[Failed] Create task: {{.Arg1}}"
|
|
winbits_guid_extract_failed:
|
|
other: "[Failed] Unable to extract task GUID"
|
|
winbits_task_created:
|
|
other: "[Success] Created task: {{.Arg1}} ({{.Arg2}})"
|
|
winbits_add_file:
|
|
other: "Add file"
|
|
winbits_set_callback:
|
|
other: "Set callback"
|
|
winbits_set_retry:
|
|
other: "Set retry"
|
|
winbits_resume_task:
|
|
other: "Resume task"
|
|
winstartup_user_folder:
|
|
other: "User startup folder"
|
|
winstartup_common_folder:
|
|
other: "Common startup folder"
|
|
cleaner_restore_winlogon_shell:
|
|
other: "[Restore] Winlogon Shell: {{.Arg1}} -> {{.Arg2}}"
|
|
cleaner_restore_winlogon_userinit:
|
|
other: "[Restore] Winlogon Userinit: {{.Arg1}} -> {{.Arg2}}"
|
|
cleaner_ifeo_removed:
|
|
other: "[Clean] IFEO: {{.Arg1}}"
|
|
cleaner_registry_removed:
|
|
other: "[Clean] Registry: {{.Arg1}}\\{{.Arg2}}"
|
|
cleaner_schtask_removed:
|
|
other: "[Clean] Scheduled task: {{.Arg1}}"
|
|
cleaner_service_removed:
|
|
other: "[Clean] Service: {{.Arg1}}"
|
|
cleaner_startup_removed:
|
|
other: "[Clean] Startup folder: {{.Arg1}}"
|
|
cleaner_bits_removed:
|
|
other: "[Clean] BITS: {{.Arg1}}"
|
|
cleaner_wmi_removed:
|
|
other: "[Clean] WMI event subscription"
|
|
cleaner_prefetch_removed:
|
|
other: "[Clean] Prefetch: {{.Arg1}}"
|
|
systeminfo_antivirus_process_count:
|
|
other: "{{.Arg1}} ({{.Arg2}} processes)"
|
|
powershell_exec_failed:
|
|
other: "PowerShell execution failed"
|
|
command_output:
|
|
other: "output"
|
|
webtitle_no_fingerprint_skip_poc:
|
|
other: "WebTitle {{.Arg1}} has no matching fingerprint, skipping POC scan"
|
|
webtitle_cdn_waf_skip_poc:
|
|
other: "WebTitle {{.Arg1}} detected {{.Arg2}}, skipping POC scan"
|
|
webtitle_trigger_fingerprint_poc:
|
|
other: "WebTitle {{.Arg1}} triggered fingerprint POC scan: {{.Arg2}}"
|
|
webpoc_disabled:
|
|
other: "POC scan is disabled"
|
|
webpoc_full_scan_mode:
|
|
other: "WebPOC {{.Arg1}} full scan mode"
|
|
web_result_weak_credential:
|
|
other: "Weak credential"
|
|
web_result_anonymous_access:
|
|
other: "Anonymous access"
|
|
web_result_vulnerability:
|
|
other: "Vulnerability"
|
|
web_result_weak_credential_detail:
|
|
other: "Weak credential: {{.Arg1}}"
|
|
|
|
# ========================= Redis Plugin Messages =========================
|
|
redis_reconnect_failed:
|
|
other: "Failed to reconnect to Redis: {{.Arg1}}"
|
|
redis_config_failed:
|
|
other: "Failed to get Redis config: {{.Arg1}}"
|
|
redis_write_failed:
|
|
other: "File write failed: {{.Arg1}}"
|
|
redis_write_success:
|
|
other: "Successfully wrote file: {{.Arg1}}"
|
|
redis_read_failed:
|
|
other: "Failed to read local file: {{.Arg1}}"
|
|
redis_file_write_success:
|
|
other: "Successfully wrote content of {{.Arg1}} to {{.Arg2}}"
|
|
redis_ssh_key_failed:
|
|
other: "SSH key write failed: {{.Arg1}}"
|
|
redis_ssh_key_success:
|
|
other: "SSH key written successfully"
|
|
redis_cron_failed:
|
|
other: "Cron job write failed: {{.Arg1}}"
|
|
redis_cron_success:
|
|
other: "Cron job written successfully"
|
|
redis_restore_failed:
|
|
other: "Failed to restore database config: {{.Arg1}}"
|
|
|
|
# ========================= Local Plugin Messages =========================
|
|
# Cron task persistence
|
|
crontask_success:
|
|
other: "Cron task persistence completed: {{.Arg1}} methods succeeded"
|
|
|
|
# Keylogger
|
|
keylogger_success:
|
|
other: "Keylogging completed, captured {{.Arg1}} keyboard events"
|
|
keylogger_save_failed:
|
|
other: "Failed to save keylog: {{.Arg1}}"
|
|
keylogger_no_input:
|
|
other: "No keyboard input captured"
|
|
|
|
|
|
# Windows WMI
|
|
winwmi_success:
|
|
other: "Windows WMI event subscription persistence completed: {{.Arg1}} items"
|
|
|
|
# Cleaner
|
|
cleaner_success:
|
|
other: "Trace cleaning completed: {{.Arg1}} files, {{.Arg2}} system entries"
|
|
cleaner_history_found:
|
|
other: "Found history file: {{.Arg1}} (requires manual cleanup)"
|
|
|
|
|
|
# Forward shell
|
|
forwardshell_complete:
|
|
other: "Forward shell service completed - port: {{.Arg1}}"
|
|
forwardshell_started:
|
|
other: "Forward shell server started on 0.0.0.0:{{.Arg1}}"
|
|
forwardshell_accept_failed:
|
|
other: "Failed to accept connection: {{.Arg1}}"
|
|
forwardshell_client_connected:
|
|
other: "Client connected from: {{.Arg1}}"
|
|
forwardshell_read_failed:
|
|
other: "Failed to read client command: {{.Arg1}}"
|
|
|
|
# IFEO image hijacking
|
|
winifeo_success:
|
|
other: "IFEO image hijacking completed: {{.Arg1}} targets"
|
|
|
|
# BITS persistence
|
|
winbits_success:
|
|
other: "BITS persistence completed: {{.Arg1}}"
|
|
|
|
# Winlogon persistence
|
|
winlogon_success:
|
|
other: "Winlogon persistence completed: {{.Arg1}} entries"
|
|
|
|
# Windows startup folder
|
|
winstartup_success:
|
|
other: "Windows startup folder persistence completed: {{.Arg1}} methods"
|
|
|
|
# Windows service
|
|
winservice_success:
|
|
other: "Windows service persistence completed: {{.Arg1}} items"
|
|
|
|
|
|
# SSH Key injection
|
|
sshkey_success:
|
|
other: "SSH key injection completed: {{.Arg1}} users"
|
|
|
|
# LD_PRELOAD
|
|
ldpreload_success:
|
|
other: "LD_PRELOAD persistence completed: {{.Arg1}} methods succeeded"
|
|
|
|
# SOCKS5 proxy
|
|
socks5_starting:
|
|
other: "Starting SOCKS5 proxy on port {{.Arg1}}"
|
|
socks5_complete:
|
|
other: "SOCKS5 proxy completed - port: {{.Arg1}}"
|
|
socks5_started:
|
|
other: "SOCKS5 proxy server started on 127.0.0.1:{{.Arg1}}"
|
|
socks5_cancelled:
|
|
other: "SOCKS5 proxy server cancelled by context"
|
|
socks5_accept_failed:
|
|
other: "Failed to accept connection: {{.Arg1}}"
|
|
socks5_handshake_failed:
|
|
other: "SOCKS5 handshake failed: {{.Arg1}}"
|
|
socks5_request_failed:
|
|
other: "SOCKS5 request handling failed: {{.Arg1}}"
|
|
socks5_connected:
|
|
other: "SOCKS5 proxy connection established"
|
|
|
|
# Reverse shell
|
|
reverseshell_complete:
|
|
other: "Reverse shell completed - target: {{.Arg1}}"
|
|
reverseshell_connected:
|
|
other: "Reverse shell connected to {{.Arg1}}:{{.Arg2}}"
|
|
|
|
# Systemd service
|
|
systemdservice_success:
|
|
other: "Systemd service persistence completed: {{.Arg1}} methods succeeded"
|
|
|
|
# System info
|
|
minidump_regsave_success:
|
|
other: "Registry hive export completed (SAM/SECURITY/SYSTEM)"
|
|
|
|
systeminfo_start:
|
|
other: "Starting system information collection"
|
|
systeminfo_os:
|
|
other: "Operating System: {{.Arg1}}"
|
|
systeminfo_arch:
|
|
other: "Architecture: {{.Arg1}}"
|
|
systeminfo_cpu:
|
|
other: "CPU Cores: {{.Arg1}}"
|
|
systeminfo_hostname:
|
|
other: "Hostname: {{.Arg1}}"
|
|
systeminfo_user:
|
|
other: "Current User: {{.Arg1}}"
|
|
systeminfo_homedir:
|
|
other: "Home Directory: {{.Arg1}}"
|
|
systeminfo_workdir:
|
|
other: "Working Directory: {{.Arg1}}"
|
|
systeminfo_tempdir:
|
|
other: "Temp Directory: {{.Arg1}}"
|
|
systeminfo_pathcount:
|
|
other: "PATH entries: {{.Arg1}}"
|
|
systeminfo_winver:
|
|
other: "Windows Version: {{.Arg1}}"
|
|
systeminfo_domain:
|
|
other: "User Domain: {{.Arg1}}"
|
|
systeminfo_kernel:
|
|
other: "System Kernel: {{.Arg1}}"
|
|
systeminfo_distro:
|
|
other: "Distribution: {{.Arg1}}"
|
|
systeminfo_distro_exists:
|
|
other: "Distribution: /etc/os-release exists"
|
|
systeminfo_whoami:
|
|
other: "Current User (whoami): {{.Arg1}}"
|
|
systeminfo_iface:
|
|
other: "Interface {{.Arg1}}: {{.Arg2}} (MAC: {{.Arg3}})"
|
|
systeminfo_privilege:
|
|
other: "Privilege Level: {{.Arg1}}"
|
|
systeminfo_privilege_group:
|
|
other: "Admin Group: {{.Arg1}}"
|
|
systeminfo_id_info:
|
|
other: "User Info: {{.Arg1}}"
|
|
systeminfo_firewall:
|
|
other: "Firewall: {{.Arg1}}"
|
|
systeminfo_firewall_rules:
|
|
other: "Firewall Rules: {{.Arg1}}"
|
|
systeminfo_patches:
|
|
other: "Installed Patches: {{.Arg1}}"
|
|
systeminfo_antivirus:
|
|
other: "Antivirus Detected: {{.Arg1}}"
|
|
systeminfo_av_process:
|
|
other: " - {{.Arg1}}"
|
|
systeminfo_sudo:
|
|
other: "Sudo Privileges: {{.Arg1}}"
|
|
systeminfo_macos_detail:
|
|
other: "macOS: {{.Arg1}}"
|
|
systeminfo_sensitive_env:
|
|
other: "Sensitive Env Var: {{.Arg1}}={{.Arg2}}"
|
|
systeminfo_sensitive_file:
|
|
other: "Sensitive File: {{.Arg1}}"
|
|
systeminfo_dc_detected:
|
|
other: "Domain detected: {{.Arg1}}"
|
|
systeminfo_dc_connect_failed:
|
|
other: "Domain controller connection failed: {{.Arg1}}"
|
|
systeminfo_dc_basedn:
|
|
other: "Domain Base DN: {{.Arg1}}"
|
|
systeminfo_dc_created:
|
|
other: "Domain created: {{.Arg1}}"
|
|
systeminfo_dc_func_level:
|
|
other: "Domain functional level: {{.Arg1}}"
|
|
systeminfo_dc_controllers:
|
|
other: "Domain controllers: {{.Arg1}}"
|
|
systeminfo_dc_controller_detail:
|
|
other: " - {{.Arg1}} ({{.Arg2}}) {{.Arg3}}"
|
|
systeminfo_dc_admins:
|
|
other: "Domain admins: {{.Arg1}}"
|
|
systeminfo_dc_admin_detail:
|
|
other: " - {{.Arg1}} ({{.Arg2}})"
|
|
systeminfo_dc_users:
|
|
other: "Domain users: {{.Arg1}}"
|
|
systeminfo_dc_computers:
|
|
other: "Domain computers: {{.Arg1}}"
|
|
systeminfo_dc_computer_detail:
|
|
other: " - {{.Arg1}} ({{.Arg2}})"
|
|
systeminfo_dc_gpos:
|
|
other: "Group policies: {{.Arg1}}"
|
|
systeminfo_dc_gpo_detail:
|
|
other: " - {{.Arg1}} [{{.Arg2}}]"
|
|
|
|
# Windows scheduled task
|
|
winschtask_success:
|
|
other: "Windows scheduled task persistence completed: {{.Arg1}} items"
|
|
|
|
# Windows registry
|
|
winregistry_success:
|
|
other: "Windows registry persistence completed: {{.Arg1}} items"
|
|
|
|
# Minidump
|
|
minidump_panic:
|
|
other: "Minidump plugin panic: {{.Arg1}}"
|
|
minidump_success:
|
|
other: "Successfully dumped lsass.exe memory to file: {{.Arg1}} (size: {{.Arg2}} bytes)"
|
|
|
|
# Local plugin common errors
|
|
local_pe_not_specified:
|
|
other: "No PE file specified, use -win-pe parameter"
|
|
local_pe_not_found:
|
|
other: "PE file not found: {{.Arg1}}"
|
|
local_invalid_pe:
|
|
other: "Invalid PE file: {{.Arg1}}"
|
|
|
|
# ========================= WebScan Messages =========================
|
|
webscan_target_url_failed:
|
|
other: "Failed to build target URL: {{.Arg1}}"
|
|
webscan_invalid_url:
|
|
other: "{{.Arg1}} {{.Arg2}}: {{.Arg3}}"
|
|
webscan_request_create_failed:
|
|
other: "Failed to create HTTP request: {{.Arg1}}"
|
|
webscan_builtin_poc_failed:
|
|
other: "Failed to load builtin POC directory: {{.Arg1}}"
|
|
webscan_poc_dir_not_exist:
|
|
other: "POC directory does not exist: {{.Arg1}}"
|
|
webscan_poc_dir_walk_failed:
|
|
other: "Failed to traverse POC directory: {{.Arg1}}"
|
|
webscan_rule_match_error:
|
|
other: "Rule match error [{{.Arg1}}]: {{.Arg2}}"
|
|
webscan_poc_exec_error:
|
|
other: "POC execution error {{.Arg1}}: {{.Arg2}}"
|
|
webscan_set_exec_error:
|
|
other: "Set execution error {{.Arg1}}: {{.Arg2}}"
|
|
webscan_regex_compile_error:
|
|
other: "Regex compile error: {{.Arg1}}"
|
|
webscan_reverse_url_error:
|
|
other: "Reverse URL parse error: {{.Arg1}}"
|
|
webscan_cel_syntax_error:
|
|
other: "CEL syntax error [{{.Arg1}}]: {{.Arg2}}"
|
|
webscan_cel_init_failed:
|
|
other: "Failed to initialize base CEL environment: {{.Arg1}}"
|
|
webscan_request_restricted:
|
|
other: "POC HTTP request {{.Arg1}} restricted: {{.Arg2}}"
|
|
webscan_response_parse_failed:
|
|
other: "Response parse failed: {{.Arg1}}"
|
|
webscan_err_invalid_url:
|
|
other: "Invalid URL format"
|
|
webscan_err_empty_target:
|
|
other: "Target URL is empty"
|
|
webscan_err_poc_not_found:
|
|
other: "No matching POC found"
|
|
webscan_err_poc_load_failed:
|
|
other: "POC load failed"
|
|
fingerprint_enhanced_parse_failed:
|
|
other: "Failed to parse enhanced fingerprint database"
|
|
webscan_cel_env_not_initialized:
|
|
other: "Base CEL environment is not initialized"
|
|
webscan_expression_compile_failed:
|
|
other: "Expression compile failed"
|
|
webscan_program_create_failed:
|
|
other: "Program creation failed"
|
|
webscan_expression_eval_failed:
|
|
other: "Expression evaluation failed"
|
|
webscan_request_execute_failed:
|
|
other: "Request execution failed"
|
|
webscan_request_body_read_failed:
|
|
other: "Failed to read request body"
|
|
webscan_response_body_process_failed:
|
|
other: "Failed to process response body"
|
|
webscan_http_client_init_failed:
|
|
other: "HTTP client initialization failed"
|
|
webscan_socks5_proxy_config_failed:
|
|
other: "SOCKS5 proxy configuration failed"
|
|
webscan_unsupported_proxy_type:
|
|
other: "Unsupported proxy type"
|
|
webscan_proxy_url_parse_failed:
|
|
other: "Proxy URL parse failed"
|
|
webscan_strmap_parse_failed:
|
|
other: "StrMap parse failed: key or value is not a string"
|
|
webscan_rulemap_key_invalid:
|
|
other: "RuleMap parse failed: key is not a string"
|
|
webscan_listmap_key_invalid:
|
|
other: "ListMap parse failed: key is not a string"
|
|
webscan_listmap_value_invalid:
|
|
other: "ListMap parse failed: value is not an array"
|
|
webscan_poc_load_one_failed:
|
|
other: "POC load failed {{.Arg1}}: {{.Arg2}}"
|
|
webscan_poc_parse_failed:
|
|
other: "POC parse failed"
|
|
webscan_poc_convert_failed:
|
|
other: "POC format conversion failed"
|
|
webscan_poc_file_read_failed:
|
|
other: "POC file read failed"
|
|
webscan_poc_dir_read_failed:
|
|
other: "Failed to read POC directory: {{.Arg1}}"
|
|
webscan_unknown_poc_format:
|
|
other: "Unknown POC format"
|
|
webscan_fscan_format_parse_failed:
|
|
other: "fscan format parse failed"
|
|
webscan_nuclei_format_parse_failed:
|
|
other: "nuclei format parse failed"
|
|
webscan_nuclei_no_http_rules:
|
|
other: "nuclei template has no valid HTTP rules"
|
|
webscan_xray_format_parse_failed:
|
|
other: "xray format parse failed"
|
|
webscan_xray_no_rules:
|
|
other: "xray POC has no valid rules"
|
|
webscan_afrog_format_parse_failed:
|
|
other: "afrog format parse failed"
|
|
webscan_afrog_no_rules:
|
|
other: "afrog POC has no valid rules"
|
|
webscan_vuln_detail_header:
|
|
other: "Target: {{.Arg1}}\n Vulnerability type: {{.Arg2}}\n Vulnerability name: {{.Arg3}}\n Details:"
|
|
webscan_vuln_author:
|
|
other: "Author: {{.Arg1}}"
|
|
webscan_vuln_references:
|
|
other: "References: {{.Arg1}}"
|
|
webscan_vuln_description:
|
|
other: "Description: {{.Arg1}}"
|
|
webscan_exec_env_error:
|
|
other: "Execution environment error"
|
|
webscan_request_parse_error:
|
|
other: "Request parse error"
|
|
webscan_request_create_error:
|
|
other: "Request creation error"
|
|
webscan_vuln_detected:
|
|
other: "Vulnerability detected {{.Arg1}} {{.Arg2}}"
|
|
webscan_vuln_detected_params:
|
|
other: "Vulnerability detected {{.Arg1}} {{.Arg2}} params: {{.Arg3}}"
|
|
webscan_http_request_error:
|
|
other: "HTTP request error"
|
|
webscan_request_send_error:
|
|
other: "Request send error"
|
|
|
|
# Main entry
|
|
param_error:
|
|
other: "Parameter error: {{.Arg1}}"
|
|
param_exclusive:
|
|
other: "Parameters {{.Arg1}} are mutually exclusive, specify only one scan target\n -h: network host scan\n -u: Web URL scan\n -local: local information collection"
|
|
error_generic:
|
|
other: "Error: {{.Arg1}}"
|
|
init_failed:
|
|
other: "Initialization failed: {{.Arg1}}"
|
|
poc_load_complete:
|
|
other: "POC loading complete: Total {{.Arg1}}, Success {{.Arg2}}, Failed {{.Arg3}}"
|
|
redis_scan_success:
|
|
other: "Redis {{.Arg1}} {{.Arg2}}"
|
|
rabbitmq_detected:
|
|
other: "RabbitMQ {{.Arg1}} {{.Arg2}}"
|
|
|
|
# ========================= Web UI Messages =========================
|
|
web_server_started:
|
|
other: "Web server started on port: {{.Arg1}}"
|
|
web_shutting_down:
|
|
other: "Web server shutting down..."
|
|
web_mode_not_supported:
|
|
other: "Web mode not supported in this build, rebuild with: go build -tags web"
|
|
|
|
# ========================= Debug Messages =========================
|
|
debug_create_profiles_failed:
|
|
other: "Failed to create profiles directory: {{.Arg1}}"
|
|
debug_create_cpu_profile_failed:
|
|
other: "Failed to create CPU profile: {{.Arg1}}"
|
|
debug_start_cpu_profile_failed:
|
|
other: "Failed to start CPU profile: {{.Arg1}}"
|
|
debug_cpu_profile_started:
|
|
other: "CPU profiling started -> {{.Arg1}}/cpu.prof"
|
|
debug_create_trace_failed:
|
|
other: "Failed to create trace file: {{.Arg1}}"
|
|
debug_start_trace_failed:
|
|
other: "Failed to start trace: {{.Arg1}}"
|
|
debug_trace_started:
|
|
other: "Execution trace started -> {{.Arg1}}/trace.out"
|
|
debug_profiling_started:
|
|
other: "Profiling started, files will be saved to {{.Arg1}}/ when the program exits"
|
|
debug_cpu_profile_saved:
|
|
other: "CPU profile saved"
|
|
debug_trace_saved:
|
|
other: "Trace saved"
|
|
debug_create_mem_profile_failed:
|
|
other: "Failed to create memory profile: {{.Arg1}}"
|
|
debug_write_mem_profile_failed:
|
|
other: "Failed to write memory profile: {{.Arg1}}"
|
|
debug_mem_profile_saved:
|
|
other: "Memory profile saved -> {{.Arg1}}/mem.prof"
|
|
debug_create_goroutine_profile_failed:
|
|
other: "Failed to create goroutine profile: {{.Arg1}}"
|
|
debug_write_goroutine_profile_failed:
|
|
other: "Failed to write goroutine profile: {{.Arg1}}"
|
|
debug_goroutine_profile_saved:
|
|
other: "Goroutine profile saved -> {{.Arg1}}/goroutine.prof"
|
|
debug_profiles_saved:
|
|
other: "All profiling files saved to {{.Arg1}}/"
|
|
debug_view_methods:
|
|
other: "View methods:"
|
|
debug_cpu_flamegraph:
|
|
other: "CPU flamegraph"
|
|
debug_mem_flamegraph:
|
|
other: "Memory flamegraph"
|
|
debug_goroutine_analysis:
|
|
other: "Goroutine analysis"
|
|
debug_execution_timeline:
|
|
other: "Execution timeline"
|
|
|
|
# ========================= Proxy Messages =========================
|
|
proxy_unsupported_type:
|
|
other: "Unsupported proxy type"
|
|
proxy_empty_config:
|
|
other: "Configuration cannot be empty"
|
|
proxy_socks5_parse_failed:
|
|
other: "SOCKS5 proxy address parse failed"
|
|
proxy_socks5_create_failed:
|
|
other: "SOCKS5 dialer creation failed"
|
|
proxy_socks5_conn_timeout:
|
|
other: "SOCKS5 connection timed out"
|
|
proxy_socks5_conn_failed:
|
|
other: "SOCKS5 connection failed"
|
|
proxy_direct_conn_failed:
|
|
other: "Direct connection failed"
|
|
proxy_http_conn_failed:
|
|
other: "Failed to connect to HTTP proxy server"
|
|
proxy_http_set_write_timeout:
|
|
other: "Failed to set write timeout"
|
|
proxy_http_send_connect_failed:
|
|
other: "Failed to send CONNECT request"
|
|
proxy_http_set_read_timeout:
|
|
other: "Failed to set read timeout"
|
|
proxy_http_read_response_failed:
|
|
other: "Failed to read HTTP response"
|
|
proxy_http_status_failed:
|
|
other: "HTTP proxy connection failed, status code: %d"
|
|
proxy_tls_tcp_conn_failed:
|
|
other: "Failed to establish TCP connection"
|
|
proxy_tls_handshake_failed:
|
|
other: "TLS handshake failed"
|
|
|
|
# ========================= Output Messages =========================
|
|
output_section_hosts:
|
|
other: "# ===== Alive Hosts ====="
|
|
output_section_ports:
|
|
other: "# ===== Open Ports ====="
|
|
output_section_services:
|
|
other: "# ===== Services ====="
|
|
output_section_vulns:
|
|
other: "# ===== Vulnerabilities ====="
|
|
output_section_web_services:
|
|
other: "# ===== Web Services ====="
|
|
|
|
# ========================= Port Fingerprint Messages =========================
|
|
portfinger_probe_protocol_invalid:
|
|
other: "Probe protocol must be TCP or UDP"
|
|
portfinger_probe_name_invalid:
|
|
other: "nmap-service-probes - invalid probe name"
|
|
portfinger_input_empty:
|
|
other: "Input data is empty"
|
|
portfinger_probe_file_empty:
|
|
other: "Failed to read nmap-service-probes file: content is empty"
|
|
portfinger_probe_exclude_duplicate:
|
|
other: "nmap-service-probes file can contain only one Exclude directive"
|
|
portfinger_probe_first_line_invalid:
|
|
other: "Parse error: first line must start with \"Probe \" or \"Exclude \""
|
|
portfinger_match_directive_invalid:
|
|
other: "Invalid {{.Arg1}} directive format"
|
|
|
|
# ========================= Service Plugin Common Messages =========================
|
|
service_no_credentials:
|
|
other: "No available test credentials"
|
|
service_not_identified:
|
|
other: "Cannot identify as {{.Arg1}} service"
|
|
service_port_restriction:
|
|
other: "{{.Arg1}} plugin only supports port {{.Arg2}}"
|
|
service_target_unreachable:
|
|
other: "Target unreachable: {{.Arg1}}"
|
|
service_unauthorized:
|
|
other: "Unauthorized access"
|
|
service_auth_failed:
|
|
other: "Authentication failed"
|
|
service_connection_failed:
|
|
other: "Connection failed: {{.Arg1}}"
|
|
service_no_weak_pass:
|
|
other: "No weak password found"
|
|
service_no_test_creds:
|
|
other: "No credentials to test"
|
|
service_conn_port_failed:
|
|
other: "Port connection failed: {{.Arg1}}"
|