Version: 4.0.7
Date: 29 September 2021
This Splunk App for McAfee Web Gateway allows rapid insights and operational visibility into McAfee Web Gateway (MWG) and McAfee Web Gateway Cloud Service (WGCS) deployments. It provides field extraction and CIM field mapping using all available types of access logs (default and custom McAfee Web Gateway log, McAfee Web Gateway Cloud Service), facilitates fast incident response and troubleshooting.
List of abbreviations used in this document:
Abbreviation | Meaning |
---|---|
MWG | McAfee Web Gateway |
WGCS | McAfee Web Gateway Cloud Service |
UF | Splunk Universal Forwarder |
Product Compatibility:
Product | Version(s) |
---|---|
Splunk | 6.6+, 7.x, 8.x |
MWG | 7.6+, 8.x, 9.x, 10.x |
WGCS | API v 5 (current) |
Currently there are 85 different charts and tables grouped in 22 views
Applications Applications by Hits Applications by Volume Top Blocked Applications by Hits Top Applications by Volume Top Applications by Hits Top Application Statistics Audit Failed Logins Activity by Action Activity by Source_Type Activity by User User Activity by Appliance Authentication Top IP by Failed Auth Top User-Agents by Failed Auth Top Destination Hosts by Failed Auth Top User-Agents + IPs by Failed Auth Top User-Agents + DestHost by Failed Auth Top IPs + DestHost by Failed Auth Top IPs + User-Agent + DestHost by Failed Auth Multiple Logins from diff IPs Multiple Usernames coming from a single IP Authentication Method Statistics Connections Long running transactions DNS Timechart DNS resolution time Timechart DNS resolution time distribution (including Cached) Timechart DNS resolution time distribution (excluding Cached) DNS distribution (1ms - 200ms) DNS distribution (all) Errors Error Analysis HTTP Timechart HTTP Method HTTP Method Statistics HTTP Request Headers Statistics HTTP Response Headers Statistics Easy Search Status Code Overview Web Usage by URL Category Web Usage by URL Category Area Graph Top User-Agents Users + IPs IP Addresses by Hits Graph Top Hosts by Hits Top Blocked Domains by Hits Top Rules by Hits Events Malware Malware Top Users by blocked Malware Media Types Media Types Top Media Types by Volume Top Media Types by Hits EXE Uploads/Downloads Macro Uploads/Downloads EXE and Macro Uploads/Downloads with Magic Bytes Mismatch Encrypted Files Network Top unreachable Servers Performance Connect to Server Latency Total Transaction Duration distribution Client-Side Latency DNS resolution Latency distribution Time in Externals Distribution Protocols Protocols by Hits Protocols by Hits (Percent) Protocols by Volume Protocols by Volume (Percent) Potential Risks Top SRC with high Ratio of High Risk Requests Unusual Ports Requests to IP Addresses CONNECT Requests to IP Addresses Very long URLs Very large request and response Headers Non-resolvable Domains, potential DGA (Domain Generation Algorithm) Rules Top Rules Block Rules Overview Top Block Rules Rule Complexity/Performance Slowest Rule Execution Time in Rule Engine Distribution Time in Rule Engine over Time Security Posture Content Scan is possible Ratio SSL SSL Versions by Hits (Server) SSL Versions by Hits (Client) SSL Ciphers by Hits (Server) SSL Ciphers by Hits (Client) SSL KeyExchangeBits by Hits (Server) SSL KeyExchangeBits by Hits (Client) SSL Ciphers (Server) SSL Versions (Server) Client Certificate Requested SSL-related blocks Expired Certificate Certificate Issuers Summary Requests / Block Ratio Traffic Overview Traffic Top Inbound Traffic by Source Top Inbound Traffic by Destination Top Outbound Traffic by Source Top Outbound Traffic by Destination Uploads Uploads URL Filter URL Categories Blocked by URL Filter or by Web Reputation Top URL Categories by Volume Top URL Categories by Hits Geolocation Stats High Risk Destinations Not categorized Domains - Chart Top not categorized Domains - Table User-Agents User-Agent Statistics
Instance | App for McAfee Web Gateway | Add-on for McAfee Web Gateway |
---|---|---|
Standalone (all-in-one) Splunk | + | - |
Search Head | + | - |
Indexer | - | + |
Syslog/Log Server with Universal Forwarder | - | + |
MWG can write logs to hard disk or/and send them via Syslog. Splunk can read log files locally, get them via network input (Syslog or raw UDP/TCP steam) or get them from a UF that is installed on a log server or on MWG itself. All these methods combined produce many possible ways to get MWG logs into Splunk:
Method / Link to configuration example | Description | Real time |
---|---|---|
Local file monitor | Splunk is installed directly on MWG and monitors the log file folder | Yes, up to 30 sec delay |
Local UDP/TCP input | Splunk is installed directly on the MWG and gets log files sent using Syslog | yes |
Syslog UDP/TCP | MWG sends logs via UDP/TCP to syslog collector or directly to Splunk | yes |
Syslog TCP+TLS | MWG sends logs via TCP, encrypted with TLS, to syslog collector or directly to Splunk | yes |
UF | Install UF on MWG to monitor log file folder | yes, up to 30 sec delay |
Log pushing from MWG to a log server | Use pushing (FTP/FTPS/SCP/SFTP/HTTP/HTTPS) from MWG to a log server | no |
Log pulling from MWG | Pulling logs from MWG via API, scp or rsync | no |
Log pulling from WGCS | Pulling logs via WGCS API | no |
Further consideration:
Log Format | Sourcetype | # of MWG fields | # of CIM fields | Average log line length (HTTPS Scanner enabled) | Comment/Example |
---|---|---|---|---|---|
Default Access Log | mcafee:webgateway:default | 14 | 17 | ~700 Bytes | Default log format with a fixed structure, provides only minimal subset of fields. Use it only if no MWG modification is possible. [26/Feb/2021:14:40:23 +0100] "" 192.168.2.n 200 "GET https://example.com/test&adk=1473563476 HTTP/2.0" "Web Ads" "Minimal Risk" "image/gif" 286 538 "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0" "" "0" "Google" |
Legacy Log for the Splunk App v.3.0.7 | MWGaccess3 | 26 | 27 | ~650 Bytes | Customized log format with a fixed structure, provides more fields than the default log, including some timings and transferred bytes. Wasteful information like User-Agent string is shortened. Consider it obsolete. [26/Feb/2021:14:40:23 +0100]status="200/0" srcip="192.168.2.n" user="" profile="-" dstip="-" dhost="example.com" urlp="443" proto="HTTPS/https" mtd="GET" urlc="Web Ads" rep="0" mt="image/gif" mlwr="-" app="Google" bytes="538/539/289/286" ua="FF86.0-10.0" lat="0/0/59/434" rule="Last Rule" url="https://example.com/test&adk=1473563476" |
Custom Log (recommended) | mcafee:webgateway:custom | 50-100 | 50-100 | ~600-1800 Bytes | New custom modular log format (described in details below), logs fields can be added/removed as needed, provides full CIM coverage and deep insights for analytics and rapid troubleshooting. Despite the significantly larger amount of provided information, the size of the log has changed insignificantly. This new format provides up to 3x higher information density than the default log format. 2021-02-26 14:40:23 +0100 204 allowed 192.168.2.n https GET example.com 443 775/58 88/1 up="/test" ua="FF86-10.0" a="Google" c="wa" dip=142.250.185.nn kex=112/112 cntx sccc=1302/1302 sslp=1.3/1.3 sslicn="GTS CA 1O1,GlobalSign" sslcn="example.com" crtdays=-66 ctmt0 rul="L" rn=13/44 srcp=63298 conrt=0 b=744/239 psrcip=192.168.2.n psrcp=20010 piv=2.0/2.0 r=0 t=0/0/86/87/56/56/3/4/28 |
WGCS version 5 | mcafee:webgateway:wgcs_v5 | 28 | 28 | ~300-400 Bytes | WGCS log format provides a subset of required fields "user_id","username","source_ip", |
Extract the file Splunk_Log_XXXXXX.xml (where XXXXXX is the version) from the MWG folder of the application package.
Import Splunk_Log_XXXXXX.xml file in MWG into the Default Log Handler: Policies > Rule Sets > Log Handler, right click on "Default" and select Add > Rule Set from Library
In the new window that appears, click on the "Import from file" button, then choose the xml file and click OK.
click "Auto-Solve Conflicts..." > select "Solve by referring to existing objects" and click OK to import the RuleSet.
The Log configuration has a modular structure, you can choose to send just a preconfigured minimal set of fields or select any subset from available fields. The log ruleset contains several parts (see numbering on the next screenshot):
Here are most important modifications that you can do in additional Rulesets (block of RuleSets #3 on the previous screenshot).
Ruleset | Possible modifications |
---|---|
Splunk | Domains not to log - some domains can be excluded from logging completely. |
Set Timestamp | choose the right timestamp. The ISO format with a time zone is selected by default. Other options are ToGMT, ISO8601, unix epoch and ToWebReporter formats. If you change the timestamp format on MWG then you have to adjust the TIME_FORMAT setting in local/props.conf on Splunk Indexer. |
Client IP | Connection.IP property is used by default. Deselect it and select Client.IP if you have downstream proxies or loadbalancer between the client and MWG. |
URL Categories | add internal domains to "internal Domains" list to avoid them to being shown as "uncategorized" |
Headers | on MWG older than version 10.x some rules will be marked in red if they are not compatible - delete them or upgrade MWG to the newest 10.x version or later. |
TLS | disable this ruleset if HTTPS Scanner is not enabled |
- | To get the correct Rule statistics you must create one last ruleset with a rule named "Last Rule" which is applied to all cycles (Request, Response, Embedded). |
RuleSet Library | Opener, Hashes/Body, Malware, Media Type, Uploads - to get some of the required information, additional rules need to be placed in the corresponding Policy Rule Sets. If you skip this step, some tables and graphs will be empty. Watch a YouTube video on the Splunkbase for step by step instructions. |
Instead of letting Splunk read local splunk.log, events can be sent to a local Splunk instance via a local network interface or even loopback interface, without writing events to the hard disk (i.e. "Write Splunk Log" Rule Set can be disabled).
MWG UI:
Splunk UI:
MWG UI:
Splunk UI:
$DefaultNetstreamDriver gtls $DefaultNetstreamDriverCAFile /etc/rsyslog.d/certs/example.com.ca.pem $DefaultNetstreamDriverCertFile /etc/rsyslog.d/certs/mwg.example.com.pem $DefaultNetstreamDriverKeyFile /etc/rsyslog.d/certs/mwg.example.com.key #$ActionSendStreamDriverAuthMode x509/name $ActionSendStreamDriverAuthMode anon #$ActionSendStreamDriverPermittedPeer splunk.example.com $ActionSendStreamDriverMode 1For Splunk configuration and more details watch Configure a McAfee Web Gateway (MWG) syslog to send TLS-secured data to Splunk
[monitor:///opt/mwg/log/user-defined-logs/splunk.log/splunk.log] disabled = false sourcetype = mcafee:webgateway:custom # index = proxy
McAfee Web Gateway Cloud Service (WGCS) provides the log with a reduced set of fields, therefore only a subset of views will work properly.
There are several ways to pull WGCS logs:
McAfee Web Gateway based on RedHat/CentOS 7 and inherits some settigs that rate-limit syslog. Read https://www.ibm.com/support/pages/how-disable-rsyslog-rate-limiting and https://access.redhat.com/solutions/1417483 to modify or disable rate-limiting in /etc/rsyslog.conf (using MWG UI) and /etc/systemd/journal.conf .
rsyslog.conf:$SystemLogRateLimitInterval 0 $SystemLogRateLimitBurst 0journal.conf:
RateLimitInterval=0 RateLimitBurst=0Instead of disabling rate-limiting completely, it is better to set it to appropriate values for your setup.
Use following configuration for syslog-ng (on receiving side):
network flags(no-parse)
Why a new log format? Neither the default nor the previously used MWGaccess3 log formats provide enough information for SIEM to be useful. For example these formats provide very limited information about download/upload risky files. Many SIEM correlation rules will not work properly if a transferred file was embedded as a part of a composite object (zip, iso, docx, etc.) or has different/faked media-type header or extension.
The new log format provides following use cases among many others:
The new custom log format (mcafee:webgateway:custom) consists of several parts:
2021-02-26 14:36:46.449 -0600 200 allowed 192.168.2.n https GET safebrowsing.googleapis.com 443 563/4156 38/17 up="/v4/threatListUpdates" ua="FF86-10.0" c="it" dip=142.250.185.n kex=112/112 cntx sccc=1302/1302 sslp=1.3/1.3 sslicn="GTS CA 1O1,GlobalSign" sslcn="upload.video.google.com" crtdays=-52 mbmismatch ctmt0 rul="L" rn=41/104 srcp=62407 conrt=0 b=524/4418 tunnel psrcip=192.168.2.nn psrcp=42550 piv=2.0/2.0 r=0 t=0/0/34/34/18/18/22/11/11
Instead of logging a URL as-is, MWG splits the URL into usable parts which will be put together on Splunk's end.
By default, the query string is not logged. You can enable it in the Web Data Model ruleset if needed.
An excerpt of the 100 most useful fields is provided below. MWG has about 900 properties that can be used for logging.
MWG field | CIM field | Comment | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Timestamp | - |
| |||||||||||||||||||||||||||
Connection.IP / Client.IP | src | Client.IP takes the value of X-Forwarded-For header | |||||||||||||||||||||||||||
Authentication.UserName | user | ||||||||||||||||||||||||||||
Message.TemplateName, Block.ID, Response.StatusCode, Protocol.FailureDescription, BytesFromServer, Command.Name, Action.Names | action | The action taken by the proxy: allowed, blocked, error or auth. Various MWG properties are used to calculate correct action field. | |||||||||||||||||||||||||||
URL | url | Don't enable it, Splunk build URL based on uri components | |||||||||||||||||||||||||||
URL.Categories | category | MWG will try to categorize URL retroactively even if URL Filter was skipped in the Policy Rule Sets. Add your internal domains to "internal Domains" list to avoid them be marked as "uncategorized" | |||||||||||||||||||||||||||
Header.Response.Get(Content-Type) MediaType.FromHeader | http_content_type | The content-type of the requested HTTP resource as reported by the web server (can be wrong, faked or missing) | |||||||||||||||||||||||||||
Header.Request.Get(User-Agent) | http_user_agent | A short string (FF68-10.0 for Firefox 68 on Windows 10) | |||||||||||||||||||||||||||
LastSentLastReceivedServer | response_time | FSFRS-LSFRS+LSLRS is used to calculate response_time that includes sending time | |||||||||||||||||||||||||||
Header.Request.Exists(Referer) | http_referrer | The HTTP referrer used in the request. The W3C specification and many implementations misspell this as http_referer. Use a FIELDALIAS to handle both key names. This field is disabled by default. | |||||||||||||||||||||||||||
URL.Domain of Header.Request.Exists(Referer) | http_referer_domain | The domain name contained within the HTTP referrer used in the request. Disabled by default. | |||||||||||||||||||||||||||
Response.StatusCode | status | The HTTP response code indicating the status of the proxy request. MWG doesn't distinguish between status sent by web server and status set by proxy, so this value can be misleading. Use action field to see what the proxy action was. | |||||||||||||||||||||||||||
URL.Protocol | - | http/https/ftp etc. Used to re-build url | |||||||||||||||||||||||||||
Command.Name | http_method | GET/POST/PUT/OPTIONS etc | |||||||||||||||||||||||||||
URL.Host | dest | The host of the requested resource | |||||||||||||||||||||||||||
URL.Port | dest_port | The port of the requested resource | |||||||||||||||||||||||||||
BytesToServer | bytes_out | The number of outbound bytes transferred | |||||||||||||||||||||||||||
BytesFromServer | bytes_in | The number of inbound bytes transferred | |||||||||||||||||||||||||||
TimeInTransaction | duration | The time taken by the proxy event, in milliseconds | |||||||||||||||||||||||||||
URL.Path | uri_path | The path of the resource served by the webserver or proxy | |||||||||||||||||||||||||||
URL.ParametersString | uri_query | Not enabled by default. You can enable it for all requests or selectively | |||||||||||||||||||||||||||
Application.Name | App | The application detected or hosted by the server/site such as WordPress, Splunk, or Facebook | |||||||||||||||||||||||||||
Cache.Status eq TCP_HIT | cached | Indicates whether the event data is cached or not. Not enabled by default. | |||||||||||||||||||||||||||
Header.Get(Cookie) | cookie | The cookie file recorded in the event. Not enabled by default. | |||||||||||||||||||||||||||
URL.Destination.IP | dest_ip | It is important to record the destination IP at the moment of the request. A hostname can be resolved to several IPs (think "moving target" CDN) so a DNS resolution a second later can lead to wrong result. Be aware that MWG can be unable to do DNS resolution by itself and it can be a different IP after all if MWG is behind upstream proxies. | |||||||||||||||||||||||||||
URL.Domain | url_domain | The domain name contained within the URL of the requested HTTP resource. It is extracted from hostname based on Public Suffix List | |||||||||||||||||||||||||||
Header.Request.GetAll | - | Returns a concatenated string of all the original request headers (separated by \r\n) as received from client. | |||||||||||||||||||||||||||
Header.Response.GetAll | - | Returns a concatenated string of all the original response headers (separated by \r\n) as received from server. | |||||||||||||||||||||||||||
Header.Request.Get(Via) | - | Via header in request | |||||||||||||||||||||||||||
Header.Response.Get(Via) | - | Via header in response | |||||||||||||||||||||||||||
Header.Response.Get(Location) | - | Location header in response | |||||||||||||||||||||||||||
Client.KeyExchangeBits | - | Normalized strength (symmetric) of the weakest link during the key exchange. Helps to detect outdated client software | |||||||||||||||||||||||||||
Server.KeyExchangeBits | - | Normalized strength (symmetric) of the weakest link during the key exchange. Helps to detect outdated servers which required special handling | |||||||||||||||||||||||||||
Server.Handshake.CertificateIsRequested | - | True, if the web server requests a client certificate (during the initial SSL handshake) [*] | |||||||||||||||||||||||||||
ClientContext.IsApplied | - | A clue if HTTPS Scanner is enabled for this request | |||||||||||||||||||||||||||
Server.Cipher | - | Description of cipher/algorithms between proxy and server (e.g. ECDHE-RSA-AES256-GCM-SHA384) | |||||||||||||||||||||||||||
Client.Cipher | - | Description of cipher/algorithms between client and proxy (e.g. ECDHE-RSA-AES256-GCM-SHA384) | |||||||||||||||||||||||||||
SSL.Server.Protocol | - | SSL/TLS protocol used between proxy and server (e.g. TLSv1.2 TLSv1.1 TLSv1.0 SSLv3.0 unknown). | |||||||||||||||||||||||||||
SSL.Client.Protocol | - | SSL/TLS protocol used between client and proxy (e.g. TLSv1.2 TLSv1.1 TLSv1.0 SSLv3.0 unknown) | |||||||||||||||||||||||||||
SSL.TransparentCNHandling | - | true for ssl connections where the CN is not known until the server handshake is done | |||||||||||||||||||||||||||
Server.CertificateChain.Issuer.CNs | ssl_issuer_common_name | The issuer common names of the certificate chain (bottom-up including the self-signed root CA, empty without certificate verification) [*] | |||||||||||||||||||||||||||
SSL.Server.Certificate.CN | ssl_subject_common_name | The common name of the server certificate [*] | |||||||||||||||||||||||||||
Server.Certificate.SHA2-256Digest | ssl_hash | The hex-encoded sha2-256 digest of the server certificate [*] | |||||||||||||||||||||||||||
Server.Certificate.AlternativeCNs | - | This list stores all alternative subject names stored in the server certificate's extensions section [*] | |||||||||||||||||||||||||||
Server.Certificate.DaysExpired | ssl_end_time | Stores how many days the server certificate is expired. Negative values mean that it is still valid [*] | |||||||||||||||||||||||||||
DNS.Lookup(URL.Host) | - | List of IP addresses of URL.Host if there are more than one. | |||||||||||||||||||||||||||
DNS.Lookup.Reverse(URL.Destination.IP) | - | List of hostnames for the destination IP. Very often it does not equal the requested hostname | |||||||||||||||||||||||||||
Body.NumberOfChildren | - | Number of embedded objects for archive or document [*] | |||||||||||||||||||||||||||
Body.NestedArchiveLevel | - | The current archive level, used to calculate the max level of the embedded object [*] | |||||||||||||||||||||||||||
IsCompositeObject | - | True, if current file is composite (archive or office document) [*] | |||||||||||||||||||||||||||
Body.IsEncryptedObject | - | True, if current object is encrypted | |||||||||||||||||||||||||||
Antimalware.Proactive.Probability | - | Malware probability value | |||||||||||||||||||||||||||
Antimalware.Infected | used for: file_name file_hash | True, if virus was found, false otherwise | |||||||||||||||||||||||||||
Antimalware.VirusNames | signature | List of names of found viruses | |||||||||||||||||||||||||||
Application.Reputation | - | reputation of the application | |||||||||||||||||||||||||||
Authentication.Method | authentication_method | authentication method (NTLM, Kerberos, etc.) | |||||||||||||||||||||||||||
Authentication.Realm | - | authentication realm (i.e. AD directory name) | |||||||||||||||||||||||||||
Authentication.UserGroups | - | User Groups, can be filtered with "Authentication UserGroups to log" list | |||||||||||||||||||||||||||
Authentication.FailureReason.Message | signature (?) | Human readable authentication failure reason description | |||||||||||||||||||||||||||
Authentication.Failed | action (in Authentication DM) | It is true if credentials were provided but the authentication has failed | |||||||||||||||||||||||||||
Cache.IsCacheable | - | True, if the response is cacheable and web cache is enabled | |||||||||||||||||||||||||||
Cache.Status | - | TCP_HIT for a web cache hit, TCP_MISS_RELOAD for a miss, TCP_MISS_VERIFY if the data in the cache was outdated, TCP_MISS_BYPASS for bypass based on I/O load | |||||||||||||||||||||||||||
Cache.IsFresh | - | True, if the response is validated or not read from web cache | |||||||||||||||||||||||||||
MagicBytesMismatch | - | True, if Mime Type from header doesn't match to detected Mime Type [*] | |||||||||||||||||||||||||||
EnsuredTypes | - | List of Mime Types detected by signatures (with high probability of detection) | |||||||||||||||||||||||||||
NotEnsuredTypes | - | List of Mime Types detected by signatures (with low probability of detection) | |||||||||||||||||||||||||||
IsMediaStream | - | Determine if current transaction is media stream | |||||||||||||||||||||||||||
StreamDetector.Probability | - | Probability value for media stream detection | |||||||||||||||||||||||||||
StreamDetector.MatchedRule | - | Returns name of matched streaming detection rule | |||||||||||||||||||||||||||
Rules.CurrentRule.Name | - | The name of the currently evaluated rule | |||||||||||||||||||||||||||
Rules.EvaluatedRules | - | List of all IDs of rules/rule sets, which have been evaluated | |||||||||||||||||||||||||||
Rules.FiredRules | - | List of all IDs of rules/rule sets, where the condition was true | |||||||||||||||||||||||||||
Proxy.IP | - | Stores the Webgateway IP | |||||||||||||||||||||||||||
Proxy.Port | - | Stores the Webgateway port | |||||||||||||||||||||||||||
Client.ProcessName | - | Stores the process name that initiated the connection, e.g. provided by MCP | |||||||||||||||||||||||||||
Client.SystemInfo | - | Client System Information (provided by MCP) | |||||||||||||||||||||||||||
DNS.Lookup.Reverse(client_ip) | src_ip | Hostname of the client | |||||||||||||||||||||||||||
Connection.Protocol | - | The protocol that the client uses to communicate with the proxy (HTTP, HTTPS, FTP, IFP, SSL, ICAP, XMPP, TCP or SOCKS) | |||||||||||||||||||||||||||
Connection.Port | src_port | Stores the port of the client | |||||||||||||||||||||||||||
Connection.RunTime | - | Connection run time (current time minus start time) in seconds | |||||||||||||||||||||||||||
BytesFromClient | - | Number of bytes received from the client for this request | |||||||||||||||||||||||||||
BytesToClient | - | Number of bytes sent to the client for this request | |||||||||||||||||||||||||||
Tunnel.Enabled | - | True, if a HTTP or HTTPS tunnel was enabled - the server response bypassed the response cycle | |||||||||||||||||||||||||||
Proxy.Outbound.IP | - | Stores the IP which is used as the Outbound Source IP by Webgateway when connecting to onward server | |||||||||||||||||||||||||||
Proxy.Outbound.Port | - | The port which is used as the source port by Webgateway when connecting to onward server | |||||||||||||||||||||||||||
ProtocolAndVersion | - | protocol and version of the request/response (HTTP/1.1, HTTP/2.0) | |||||||||||||||||||||||||||
Error.ID | - | ID of error | |||||||||||||||||||||||||||
Error.Message | - | Name of error | |||||||||||||||||||||||||||
URL.Reputation | severity (?) | Returns the web reputation value for the current URL. Range is from -127 to 127, where -127 means 'Minimal Risk' and 127 means 'High Risk'. | |||||||||||||||||||||||||||
URL.Geolocation | - | Returns the geolocation of the current URL. The geolocation is the code of the country in which the webserver is located, that hosts the requested resource. The country code is given in ISO 3166 notation. Note: The setting "Disable local GTI database" must be enabled in the URL Filter settings; otherwise this property is not filled. | |||||||||||||||||||||||||||
TimeInRuleEngine | - | Milliseconds currently spent in rule engine. If used in log handler, time consumed by the rule engine from start to the end of a transaction | |||||||||||||||||||||||||||
FirstSentFirstReceivedServer LastSentLastReceivedServer FirstReceivedFirstSentClient LastReceivedLastSentClient LastSentFirstReceivedServer | - | Time between first byte sent to server and first byte returned from server in milliseconds etc... | |||||||||||||||||||||||||||
HandleConnectToServer | - | Time to connect to a server in milliseconds | |||||||||||||||||||||||||||
ResolveHostNameViaDNS | - | Time to resolve a host name via DNS | |||||||||||||||||||||||||||
TimeInExternals | - | Milliseconds currently spent waiting for external responses, e.g. from AV scanner, domain controller for NTLM authentication or URL cloud categorization |
This App, documentation and MWG logging ruleset are licensed under Creative Commons BY-ND 3.0