Correlation Blok (ECL) Examples
A correlation Blok can be used in Advanced Search on historic data for forensic analysis. It can also be used in a rule, which triggers in real time to generate alerts and notifications. Notifications can be in the form of email, syslog, or SNMP.
| Blok | Definition | 
|---|---|
 
				  USE LogLogic_Appliance WITHIN 30m EVENT GROUP [My EVENTS]  | 
 
				 Example 1: 
				   This Blok triggers a new alert at the first event and accumulate all events during 30 minutes time period.  | 
 
			 
 
				  USE LogLogic_Appliance WITHIN 30m EVENT GROUP [My EVENTS] HAVING AT LEAST 1 DISTINCT [ll_sourceDomain] HAVING AT LEAST 1 DISTINCT [ll_deviceTypeID]  | 
 
				 Example 2: 
				   This Blok does the same as Blok Example 1, but the alerts generated then give information about the number of distinct ll_sourceDomain or ll_deviceTypeID and their values.  | 
 
			 
 
				  USE LogLogic_Appliance WITHIN 30m EVENT GROUP [My EVENTS] WHERE [ll_deviceTypeID] ="17" HAVING AT LEAST 2 DISTINCT [ll_sourceIP]  | 
 
				 Example 3: 
				   This Blok filters events that have ll_deviceTypeID equal to "17", and at least 2 distinct values of ll_sourceIP  | 
 
			 
 
				  USE LogLogic_Appliance WITHIN 30m EVENT GROUP [suspiciousSources] AT LEAST 100 EVENTS WHERE [ll_deviceTypeID] ="17" WITH THE SAME [ll_sourceIP] HAVING AT LEAST 1 DISTINCT [ll_eventStatus]  | 
 
				 Example 4: 
				   This Blok looks for at least 100 events with the same criteria as the previous one, coming from the same ll_sourceIP and giving information about the number of distinct ll_eventStatus and their value.  | 
 
			 
 
				  USE LogLogic_Appliance WITHIN 30m EVENT GROUP [suspiciousUsers] AT LEAST 100 EVENTS WHERE [ll_deviceTypeID] ="17" WITH THE SAME [ll_sourceUser] HAVING AT MOST 1 DISTINCT [ll_eventStatus] HAVING AT LEAST 10 DISTINCT [ll_sourceIP]  | 
 
				 Example 5: 
				   This Blok filters the event the same way as the previous one, and is looking for 100 events from the same ll_sourceUser that have at least 10 distinct values of ll_sourceIP and at most 1 distinct value of ll_eventStatus.  | 
 
			 
 
				  USE LogLogic_Appliance WITHIN 30m EVENT GROUP [success] AT LEAST 1 EVENTS WHERE [ll_deviceTypeID] ="17" AND [ll_eventStatus] = "success" WITH THE SAME [ll_sourceUser],[ll_sourceIP] EVENT GROUP [failed] AT LEAST 1 EVENTS WHERE [ll_deviceTypeID] ="17" AND [ll_eventStatus] ="failure" WITH THE SAME [ll_sourceUser],[ll_sourceIP] CORRELATION success->[ll_sourceIP]== failed->[ll_sourceIP] success->[ll_sourceUser]== failed->[ll_sourceUser]  | 
 
				 Example 6: 
				   This Blok looks at two groups of events happening within 30 minutes. The first event group is success audit from the same ll_sourceIP/ll_sourceUser and the second group is failed status grouped the same way. The Blok is triggered if the fields grouped on both event groups are same.  | 
 
			 
 
				  USE LogLogic_Appliance WITHIN 30m EVENT GROUP [success] is excluded AT LEAST 1 EVENTS WHERE [ll_deviceTypeID] ="17" AND [ll_eventStatus] ="success" WITH THE SAME [ll_sourceUser],[ll_sourceIP] EVENT GROUP [failed] AT LEAST 1 EVENTS WHERE [ll_deviceTypeID] ="17" AND [ll_eventStatus] = "failure" WITH THE SAME [ll_sourceUser],[ll_sourceIP] CORRELATION success->[ll_sourceIP]== failed->[ll_sourceIP] success->[ll_sourceUser]== failed->[ll_sourceUser]  | 
 
				 Example 7: 
				   Same as the previous Blok, but this time the Blok is triggered if there are only failed events within 30m for the same ll_sourceIP / ll_sourceUser.  | 
 
			 
 
				  USE LogLogic_Appliance WITHIN 30m EVENT GROUP [users] WHERE [ll_eventStatus] ="failure" OR [ll_eventStatus]="success" WITH THE SAME [ll_sourceUser] HAVING AT LEAST 2 DISTINCT [ll_eventStatus]  | 
 
				 Example 8: 
				   This Blok looks for users that have events with ll_eventStatus equal to either failed or success.  | 
 
			 
 
				  USE LogLogic_Appliance WITHIN 30m EVENT GROUP [success] is excluded AT LEAST 1 EVENTS WHERE [ll_deviceTypeID] ="17" AND [ll_eventStatus] ="Success" WITH THE SAME [ll_sourceUser],[ll_sourceIP] EVENT GROUP [failed] AT LEAST 1 EVENTS WHERE [ll_deviceTypeID] ="17" AND [ll_eventStatus] = "Failure" WITH THE SAME [ll_sourceUser],[ll_sourceIP] CORRELATION success->[ll_sourceIP]== failed->[ll_sourceIP] success->[ll_sourceUser]== failed->[ll_sourceUser]  | 
 
				 Example 9: 
				   Same as the previous Blok with an additional constraint that there are twice as many failed than success events.  | 
 
			 
 
				  use system WITHIN 20m 
EVENT GROUP eg1 
WHERE matchcidr("IPList",sys_collectIP,"IP1")
 
				 | 
 
				 Example 10: 
				   For an enrichment list named IPList: {"192.168.56.101/32":"IP1","191.163.56.101/32":"IP2","198.168.0.0-198.168.255.255":"IP3","2001:4860:4860::8888/32":"IP4"} and for sys_collectIP="192.168.56.101",198.168.56.101", then:  | 
 
			 
