The purpose of this section is to discuss the makeup of the configuration items in the registry. The Epilog configuration registry key is located at HKEY_LOCAL_MACHINE\SOFTWARE\Intersect Alliance\Epilog, and this location may not be changed. If the configuration key does not exist, the Epilog service will create it during installation, but will not actively audit events until a correctly formatted at least one log monitor is present.
Epilog can be configured in several different ways, namely:
...
By manually editing the registry (NOT Recommended).
Note manual editing of the registry location is possible, but care should be taken to ensure that it conforms to the required Snare format. Failure to specify a correct configuration will not 'crash' the Epilog service, but may result in selected events not being able to be read, and the system not working as specified.
Note |
---|
Any use of the web based Remote Control Interface to modify selected configurations, will result in manual configuration changes being overwritten. |
The format of the audit configuration registry subkeys is discussed below.
...
[Config]
...
AgentLog
...
CachePath
...
This is the disk cache path where the agent will temporarily save all unsent events if the agent needs to restart. Agent will read and send the events on next start.
...
Checksum
...
This value is of type REG_DWORD, and determines whether Epilog includes an MD5 Checksum of the contents of each audit record, with the record in question. Set this value to 0 for no, or 1 for Yes. Will default to FALSE (0) if not set. Note that the checking application will need to strip the final delimiter, plus the MD5 Checksum, from the record before evaluating the record against the checksum.
...
Clientname
...
This is the Hostname of the client and is of type REG_SZ. If no value has been set, "hostname" command output will be displayed. Must be no more than 100 chars, otherwise will truncate.
...
Delimiter
...
This is of type REG_SZ and stores the field delimiting character, ONLY if syslog header has been selected. If more than one char, only first char will be used. If none set, then TAB will be used. This is a HIDDEN field, and only available to those users that wish to set a different delimiter when using the SYSLOG header. This selection option will not be found in the Remote Control Interface.
...
EventSourceId
...
This is of type REG_SZ and stores the Windows Registry path from where to read the Event Source Id text/value. If the value in EventSourceIdType is 2 (Registry Path), then the text/value in the registry, specified by the path, is included in each event.
...
EventSourceIdText
...
This is of type REG_SZ and directly stores the Event Source Id text/value. If the value in EventSourceIdType is 1 (Free Text), then this text/value is included in each event.
...
EventSourceIdType
...
This is of type REG_DWORD and stores the option related to specifying Event Source Id: 0(NONE), 1(Free Text), 2(Registry Path).
...
FileSize
...
HeartBeat
...
This values is the frequency with which a heartbeat is sent, set in minutes.
...
HeartBeatFileExport
...
This value determines whether heartbeats are logged to a file. Set this value to 0 for no, or 1 for Yes.
...
HeartBeatOutputPath
...
This is the path where the heartbeat messages are exported to, if selected.
...
HostGUID
...
This value is of type REG_SZ. Set to the GUID of the specific network card.
...
HostIP
...
IISLogFlush
...
The purpose of this section is to discuss the makeup of the configuration items in the registry. The Epilog configuration registry key is located at HKEY_LOCAL_MACHINE\SOFTWARE\Intersect Alliance\Epilog, and this location may not be changed. If the configuration key does not exist, the Epilog service will create it during installation, but will not actively audit events until a correctly formatted at least one log monitor is present.
Epilog can be configured in several different ways, namely:
- Via the remote control interface (Recommended).
By manually editing the registry (NOT Recommended).
Note manual editing of the registry location is possible, but care should be taken to ensure that it conforms to the required Snare format. Failure to specify a correct configuration will not 'crash' the Epilog service, but may result in selected events not being able to be read, and the system not working as specified.Note Any use of the web based Remote Control Interface to modify selected configurations, will result in manual configuration changes being overwritten.
The format of the audit configuration registry subkeys is discussed below.
|
| ||
DestinationCertPreference | This value is of type REG_SZ, and defines the required level of SSL/TLS certificate verification when connecting to a remote destination server. Note: SSL/TLS certificate verification is not relevant if UDP or TCP protocols are used to connect to the destination. Accepted values are: | ||
DestinationCertPreferenceSAM | This value is of type REG_SZ, and defines the required level of SSL/TLS certificate verification when connecting to a Snare Agent Manager server. Accepted values are: | ||
WebCertID | The thumbprint of the certificate to be used for HTTPS web user interface interactions. By default, Snare Agent generates a self-signed certificate. Customer is welcome to replace it with a CA-signed certificate for improved security. | ||
[Config] | This subkey stores the general configuration values. | ||
---|---|---|---|
AgentLog | This value is of type | ||
CachePath |
| ||
Checksum |
| ||
Clientname |
| ||
EventSourceId |
| ||
EventSourceIdText |
| ||
EventSourceIdType |
| ||
FileSize | This is the maximum generated size of an output file receiving events. The file is rotated upon reaching this maximum. | ||
HeartBeat |
| ||
HeartBeatFileExport |
| ||
HeartBeatOutputPath |
| ||
HostGUID |
| ||
HostIP |
| ||
IISLogFlush | This value is of type REG_DWORD. Enabling this setting will allow IIS to immediately flush all log messages, allowing Epilog to get them. | ||
TLS13Minimum |
| ||
Separator |
| ||
UpgradePath |
| ||
UseHostIP | If | UseUTC |
|
UseUTC |
| ||
[Filter] | This subkey stores all the filtering policies. | ||
Filter# (where # is a | CacheSizeM
eg. criticality=2,5,5,5,7,9,0,0,0,0
| ||
[Network] | This subkey stores the general network configurations. | ||
CacheSize |
| ||
| |||
[Network] | This subkey stores the general network configurations. | ||
CacheSize | size in
| ||
CacheSizeM |
| ||
CheckTime | Number of seconds the agent will internally reload its settings, drop and reestablish network connection. Minimum set time is 300 seconds (5 minutes), maximum is 3600 seconds (1 hour). | ||
Destination1Delimiter |
| ||
Destination1Format | This value is of type REG_DWORD and is the format in which the events are sent to the destination: | ||
Destination1Host |
| ||
Destination1mTLSCertID | This value is of type REG_SZ and is the ID of the client's certificate. Client will present the certificate in mutual TLS communication to prove its identify identity to the server in communication. | ||
Destination1Port |
| ||
Destination1SocketType |
| ||
Destination1TLSAuthKey | This value is of type REG_SZ and is used when | ||
FileOutput1Delimiter This value ranges from 1 to 255. It includes the path of the files where the events will be stored per format (e.g. Snare, SYSLOG) | The delimiter to be used in the events written to this file destination, including, tab, comma, vertical bar, space and any custom character. By default the delimiter is a tab character. | ||
FileOutput1FileName | The path and location of the file the events are sent to. Multiple files may be set. | ||
FileOutput1Format |
| ||
NotifyMsgLimit | This value is of type REG_DWORD having value 0 or 1, and determines whether to send or not the EPS notification to server (1 means send and 0 means not to send) whenever agent reaches EPS RateLimit. This feature only appears in supported agents. | ||
NotifyMsgLimitFrequency | This value is of type REG_DWORD, and determines the frequency of events per second notification. The value is treated in minutes and only one EPS notification message is sent to server regardless of how many times agent reaches EPS limit during these minutes. This feature only appears in supported agents. | ||
RateLimit | This value is of type REG_DWORD, and determines the upper limit for events per second (EPS) that the agent will send to server. This feature only appears in supported agents. | ||
SyslogFacility | This value represents the SYSLOG facility for SYSLOG format | ||
[Remote] |
| ||
AccessKeyAuth |
| ||
Allow |
| ||
LockTime | This value is of type REG_DWORD and is used to determine the lock duration in minutes after maximum failed login attempts. | ||
MaxFailAttempt | This value is of type REG_DWORD and is used to determine the maximum number of failed login attempts that will be accepted before the agent will be locked for a duration (Duration is defined in LockTime). | ||
Restrict |
| ||
RestrictIP |
| ||
WebPort |
| ||
[SAM] | Stores the Snare Agent Manager settings | ||
SAM1AuthKey | Key used by the agent to communicate with the Snare Agent Manager. | ||
SAM1IP | The IP/hostname of where SAM is installed, that will communicate with the agent. | ||
SAM1Port | The port number the agent uses to communicate with SAM, port 6262. | [State] | |
SAMCToken |
| ||
AgentLocked | This value is of type REG_DWORD and is set to either 0 or 1 to indicate whether the agent is locked or not due to reaching maximum failed login attempts. | ||
AgentLockEndTime | This is of type REG_SZ and is used to store the time when the agent will be back to normal after it has been locked due to reaching maximum failed login attempts. | ||
LoginAttempts | This value is of type REG_DWORD and is used to determine the number of consecutive failed login attempts. | ||
[Log] | This subsection stores the log monitors | ||
Log# (where # is | This section describes the format of the log monitors. Log monitors are of type REG_SZ, of no greater than 512 chars, and is composed of the following string: Logtype | LogPath LogType is optional and is used to inform the Snare server how to process the data stream. The LogPath is the fully qualified path to the log file that needs to be monitored or the fully qualified path to the directory containing date stamped log files of the form "YYMMDD" (in this case a trailing backslash ('\') is required). Spaces are valid, except at the start of the term. events per second notification. The value is treated in minutes and only one EPS notification message is sent to server regardless of how many times agent reaches EPS limit during these minutes. This feature only appears in supported agents. | ||
RateLimit | This value is of type REG_DWORD, and determines the upper limit for events per second (EPS) that the agent will send to server. This feature only appears in supported agents. | ||
SyslogFacility | This value represents the SYSLOG facility for SYSLOG format | ||
|
| ||
[Remote] | This subkey stores all the remote control parameters. | ||
AccessKeyAuth |
| ||
Allow |
| ||
LockTime | This value is of type REG_DWORD and is used to determine the lock duration in minutes after maximum failed login attempts. | ||
MaxFailAttempt | This value is of type REG_DWORD and is used to determine the maximum number of failed login attempts that will be accepted before the agent will be locked for a duration (Duration is defined in LockTime). | ||
Restrict |
| ||
RestrictIP |
| ||
WebPort |
| ||
[SAM] |
| ||
SAM1AuthKey |
| ||
SAM1IP |
| ||
SAM1Port |
| ||
[State] | This section stores data managed internally by the Agent. | ||
SAMCToken |
| ||
AgentLocked | This value is of type REG_DWORD and is set to either 0 or 1 to indicate whether the agent is locked or not due to reaching maximum failed login attempts. | ||
AgentLockEndTime | This is of type REG_SZ and is used to store the time when the agent will be back to normal after it has been locked due to reaching maximum failed login attempts. | ||
LoginAttempts | This value is of type REG_DWORD and is used to determine the number of consecutive failed login attempts. | ||
[Log] |
| ||
Log# (where # is | This section describes the format of the log file monitors. Log monitors are of type REG_SZ (string), and the stored value looks similar to this: logtype=0logval=""linetype=0lineval="1"watchtype=0watchval="1"dirfilter="C:\temp\LogFilterTest\*"filefilter="*.txt"features=16state=1uuid=3a53e96d-bf10-4d2d-b5da-455ca8d34ec5 logval - user-defined string that will be used as a log type in the event header if the logtype = 12 - Custom Event Log. linetype - an integer defining what comprises a single event: 0 - Single Line (every line in the monitored file is converted to a separate event); 1 - Fixed Number of Lines; 2 - Line separating events (a line specified in lineval acts as event separator) lineval - if linetype = 1, a string representing the number of lines to be read as one event; if linetype = 2, this is the line that separates events, for example, "<end>". watchtype - an integer indicating which files should be monitored in the given directory: 0 - All matching files; 1 - Last matching file (alphabetically); 2 - First matching file (alphabetically); 3 - Fixed number of first matching files; 4 - Fixed number of last matching files watchval - if watchtype = 3 or 4, a string representing the number of first/last matching files, otherwise "1" dirfilter - a string representing fully qualified path to the desired log file or the directory containing the target log files filefilter - a string representing the file name or file name pattern to monitor for new logs features - an integer representing a bitmap of extra features, such as comments inclusion, date-based or regex-based file matching, etc. This value is set programmatically based on other selections. state - an integer representing the state of Log file monitor configuration. Disabled = 0, Enabled = 1, Requiring Service Restart = 2. uuid - a unique 16-byte identifier of this Log file monitor. |