From 7edaae62ff34e38f3fda89bafcdda203c506b264 Mon Sep 17 00:00:00 2001 From: sschuur <78623042+sschuur@users.noreply.github.com> Date: Sun, 27 Aug 2023 23:56:05 -0700 Subject: [PATCH 1/9] update links to parser --- .../Infoblox-HighThreatLevelQueryNotBlockedDetected.yaml | 2 +- .../Infoblox-ManyHighThreatLevelSingleQueryDetected.yaml | 2 +- .../Infoblox-TI-InfobloxCDCMatchFound-LookalikeDomains.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-HighThreatLevelQueryNotBlockedDetected.yaml b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-HighThreatLevelQueryNotBlockedDetected.yaml index 61639766c0f..d269d8fff49 100644 --- a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-HighThreatLevelQueryNotBlockedDetected.yaml +++ b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-HighThreatLevelQueryNotBlockedDetected.yaml @@ -1,7 +1,7 @@ id: dc7af829-d716-4774-9d6f-03d9aa7c27a4 name: Infoblox - High Threat Level Query Not Blocked Detected description: | - 'At least 1 high threat level query generated by single host in 1 hour that is not blocked or redirected. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Parsers/InfobloxCDC.txt).' + 'At least 1 high threat level query generated by single host in 1 hour that is not blocked or redirected. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://aka.ms/sentinel-InfobloxCloudDataConnector-parser).' severity: Medium status: Available requiredDataConnectors: diff --git a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-ManyHighThreatLevelSingleQueryDetected.yaml b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-ManyHighThreatLevelSingleQueryDetected.yaml index 5fef11bdd9a..32fb9c02afd 100644 --- a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-ManyHighThreatLevelSingleQueryDetected.yaml +++ b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-ManyHighThreatLevelSingleQueryDetected.yaml @@ -1,7 +1,7 @@ id: 99278700-79ca-4b0f-b416-bf57ec699e1a name: Infoblox - Many High Threat Level Single Query Detected description: | - 'Single high threat level domain queried at least 200 times in 1 hour regardless of source. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Parsers/InfobloxCDC.txt).' + 'Single high threat level domain queried at least 200 times in 1 hour regardless of source. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://aka.ms/sentinel-InfobloxCloudDataConnector-parser).' severity: Medium status: Available requiredDataConnectors: diff --git a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-TI-InfobloxCDCMatchFound-LookalikeDomains.yaml b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-TI-InfobloxCDCMatchFound-LookalikeDomains.yaml index fd8489eb3ce..e0235bd5d8d 100644 --- a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-TI-InfobloxCDCMatchFound-LookalikeDomains.yaml +++ b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-TI-InfobloxCDCMatchFound-LookalikeDomains.yaml @@ -1,7 +1,7 @@ id: 568730be-b39d-45e3-a392-941e00837d52 name: Infoblox - TI - InfobloxCDC Match Found - Lookalike Domains description: | - 'InfobloxCDC Lookalike Domain match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Parsers/InfobloxCDC.txt).' + 'InfobloxCDC Lookalike Domain match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://aka.ms/sentinel-InfobloxCloudDataConnector-parser).' severity: Medium status: Available requiredDataConnectors: From 2ef5759bde4192679cc55244fbaa0a8832e063c9 Mon Sep 17 00:00:00 2001 From: sschuur <78623042+sschuur@users.noreply.github.com> Date: Mon, 28 Aug 2023 00:33:24 -0700 Subject: [PATCH 2/9] UI, parser link, description fixes --- .../Package/createUiDefinition.json | 18 +++++++++--------- .../Package/mainTemplate.json | 10 +++++----- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/Solutions/Infoblox Cloud Data Connector/Package/createUiDefinition.json b/Solutions/Infoblox Cloud Data Connector/Package/createUiDefinition.json index d062e6418eb..f079c552767 100644 --- a/Solutions/Infoblox Cloud Data Connector/Package/createUiDefinition.json +++ b/Solutions/Infoblox Cloud Data Connector/Package/createUiDefinition.json @@ -6,7 +6,7 @@ "config": { "isWizard": false, "basics": { - "description": "\n\n**Note:** Please refer to the following before installing the solution: \r \n • Review the solution [Release Notes](https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/Infoblox%20Cloud%20Data%20Connector/ReleaseNotes.md)\r \n There may be [known issues](https://aka.ms/sentinelsolutionsknownissues) pertaining to this Solution, please refer to them before installing._\n\nThe [Infoblox](https://www.infoblox.com/) Cloud solution allows you to easily connect your Infoblox BloxOne data with Microsoft Sentinel. By connecting your logs to Microsoft Sentinel, you can take advantage of search & correlation, alerting, and threat intelligence enrichment for each log.\r\n \r\n **Underlying Microsoft Technologies used:** \r\n \r\n This solution takes a dependency on the following technologies, and some of these dependencies either may be in [Preview](https://azure.microsoft.com/support/legal/preview-supplemental-terms/) state or might result in additional ingestion or operational costs:\r\n \r\n a. [Agent based logs collection from Windows and Linux machines ](https://docs.microsoft.com/azure/azure-monitor/agents/data-sources-custom-logs)\n\n**Data Connectors:** 1, **Parsers:** 1, **Workbooks:** 1, **Analytic Rules:** 8, **Playbooks:** 11\n\n[Learn more about Microsoft Sentinel](https://aka.ms/azuresentinel) | [Learn more about Solutions](https://aka.ms/azuresentinelsolutionsdoc)", + "description": "\n\n _Please refer to the following before installing the solution: \r \n • Review the solution [Release Notes](https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/Infoblox%20Cloud%20Data%20Connector/ReleaseNotes.md)\r \n • There may be [known issues](https://aka.ms/sentinelsolutionsknownissues) pertaining to this Solution, please refer to them before installing._ \n\nThe [Infoblox](https://www.infoblox.com/) Cloud solution allows you to easily connect your Infoblox BloxOne data with Microsoft Sentinel. By connecting your logs to Microsoft Sentinel, you can take advantage of search & correlation, alerting, and threat intelligence enrichment for each log.\r\n \r\n **Underlying Microsoft Technologies used:** \r\n \r\n This solution takes a dependency on the following technologies, and some of these dependencies either may be in [Preview](https://azure.microsoft.com/support/legal/preview-supplemental-terms/) state or might result in additional ingestion or operational costs:\r\n \r\n a. [Agent based logs collection from Windows and Linux machines ](https://docs.microsoft.com/azure/azure-monitor/agents/data-sources-custom-logs)\n\n**Data Connectors:** 1, **Parsers:** 1, **Workbooks:** 1, **Analytic Rules:** 8, **Playbooks:** 11\n\n[Learn more about Microsoft Sentinel](https://aka.ms/azuresentinel) | [Learn more about Solutions](https://aka.ms/azuresentinelsolutionsdoc)", "subscription": { "resourceProviders": [ "Microsoft.OperationsManagement/solutions", @@ -111,13 +111,13 @@ { "name": "workbook1", "type": "Microsoft.Common.Section", - "label": "Infoblox Cloud Data Connector", + "label": "Infoblox Cloud Data Connector Workbook", "elements": [ { "name": "workbook1-text", "type": "Microsoft.Common.TextBlock", "options": { - "text": "Sets the time name for analysis" + "text": "Get a closer look at your BloxOne DNS Query/Response logs, DHCP logs and Threat Defense security event data. This workbook is intended to help visualize BloxOne query data as part of the Infoblox Cloud solution. Drilldown your data and visualize events, trends, and anomalous changes over time." } } ] @@ -159,7 +159,7 @@ "name": "analytic1-text", "type": "Microsoft.Common.TextBlock", "options": { - "text": "Data exfiltration attack detected by Infoblox Threat Insight. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://aka.ms/sentinel-InfobloxCloudDataConnector-parser)." + "text": "Data exfiltration attack detected by Infoblox Threat Insight. Customize query count, scheduling, responses and more." } } ] @@ -173,7 +173,7 @@ "name": "analytic2-text", "type": "Microsoft.Common.TextBlock", "options": { - "text": "At least 1 high threat level query generated by single host in 1 hour that is not blocked or redirected. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Parsers/InfobloxCDC.txt)." + "text": "At least 1 high threat level query generated by single host in 1 hour that is not blocked or redirected. Customize query count, scheduling, responses and more." } } ] @@ -187,7 +187,7 @@ "name": "analytic3-text", "type": "Microsoft.Common.TextBlock", "options": { - "text": "At least 200 high threat level queries generated by single host in 1 hour. Queries do not need to be the same. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://aka.ms/sentinel-InfobloxCloudDataConnector-parser)." + "text": "At least 200 high threat level queries generated by single host in 1 hour. Queries do not need to be the same. Customize query count, scheduling, responses and more." } } ] @@ -201,7 +201,7 @@ "name": "analytic4-text", "type": "Microsoft.Common.TextBlock", "options": { - "text": "Single high threat level domain queried at least 200 times in 1 hour regardless of source. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Parsers/InfobloxCDC.txt)." + "text": "Single high threat level domain queried at least 200 times in 1 hour regardless of source. Customize query count, scheduling, responses and more." } } ] @@ -215,7 +215,7 @@ "name": "analytic5-text", "type": "Microsoft.Common.TextBlock", "options": { - "text": "Detected at least 200 DNS responses for non-existent domains in 1 hour generated by single host. Queries do not need to be the same. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://aka.ms/sentinel-InfobloxCloudDataConnector-parser)." + "text": "Detected at least 200 DNS responses for non-existent domains in 1 hour generated by single host. Queries do not need to be the same. Customize query count, scheduling, responses and more." } } ] @@ -243,7 +243,7 @@ "name": "analytic7-text", "type": "Microsoft.Common.TextBlock", "options": { - "text": "InfobloxCDC Lookalike Domain match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Parsers/InfobloxCDC.txt)." + "text": "InfobloxCDC Lookalike Domain match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired." } } ] diff --git a/Solutions/Infoblox Cloud Data Connector/Package/mainTemplate.json b/Solutions/Infoblox Cloud Data Connector/Package/mainTemplate.json index 77bf8454296..13e5b6b69dc 100644 --- a/Solutions/Infoblox Cloud Data Connector/Package/mainTemplate.json +++ b/Solutions/Infoblox Cloud Data Connector/Package/mainTemplate.json @@ -233,7 +233,7 @@ "kind": "shared", "apiVersion": "2021-08-01", "metadata": { - "description": "Sets the time name for analysis" + "description": "Get a closer look at your BloxOne DNS Query/Response logs, DHCP logs and Threat Defense security event data. This workbook is intended to help visualize BloxOne query data as part of the Infoblox Cloud solution. Drilldown your data and visualize events, trends, and anomalous changes over time." }, "properties": { "displayName": "[parameters('workbook1-name')]", @@ -248,7 +248,7 @@ "apiVersion": "2022-01-01-preview", "name": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/',concat('Workbook-', last(split(variables('workbookId1'),'/'))))]", "properties": { - "description": "@{workbookKey=InfobloxCDCB1TDWorkbook; logoFileName=infoblox_logo.svg; description=Sets the time name for analysis; dataTypesDependencies=System.Object[]; dataConnectorsDependencies=System.Object[]; previewImagesFileNames=System.Object[]; version=1.0.0; title=Infoblox Cloud Data Connector; templateRelativePath=InfobloxCDCB1TDWorkbook.json; subtitle=; provider=InfoBlox}.description", + "description": "@{workbookKey=InfobloxCDCB1TDWorkbook; logoFileName=infoblox_logo.svg; description=Get a closer look at your BloxOne DNS Query/Response logs, DHCP logs and Threat Defense security event data. This workbook is intended to help visualize BloxOne query data as part of the Infoblox Cloud solution. Drilldown your data and visualize events, trends, and anomalous changes over time.; dataTypesDependencies=System.Object[]; dataConnectorsDependencies=System.Object[]; previewImagesFileNames=System.Object[]; version=1.0.0; title=Infoblox Cloud Data Connector; templateRelativePath=InfobloxCDCB1TDWorkbook.json; subtitle=; provider=InfoBlox}.description", "parentId": "[variables('workbookId1')]", "contentId": "[variables('_workbookContentId1')]", "kind": "Workbook", @@ -473,7 +473,7 @@ "kind": "Scheduled", "location": "[parameters('workspace-location')]", "properties": { - "description": "At least 1 high threat level query generated by single host in 1 hour that is not blocked or redirected. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Parsers/InfobloxCDC.txt).", + "description": "At least 1 high threat level query generated by single host in 1 hour that is not blocked or redirected. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://aka.ms/sentinel-InfobloxCloudDataConnector-parser).", "displayName": "Infoblox - High Threat Level Query Not Blocked Detected", "enabled": false, "query": "let threshold = 1;\nInfobloxCDC\n| where DeviceEventClassID has_cs \"RPZ\"\n| where ThreatLevel_Score >=80\n| where InfobloxB1PolicyAction == \"Log\" or SimplifiedDeviceAction == \"PASSTHRU\"\n| summarize count() by SourceIP\n| where count_ > threshold\n| join kind=inner (InfobloxCDC\n | where DeviceEventClassID has_cs \"RPZ\"\n | where ThreatLevel_Score >=80\n | where InfobloxB1PolicyAction == \"Log\" or SimplifiedDeviceAction == \"PASSTHRU\"\n ) on SourceIP\n", @@ -759,7 +759,7 @@ "kind": "Scheduled", "location": "[parameters('workspace-location')]", "properties": { - "description": "Single high threat level domain queried at least 200 times in 1 hour regardless of source. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Parsers/InfobloxCDC.txt).", + "description": "Single high threat level domain queried at least 200 times in 1 hour regardless of source. Customize query count, scheduling, responses and more. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://aka.ms/sentinel-InfobloxCloudDataConnector-parser).", "displayName": "Infoblox - Many High Threat Level Single Query Detected", "enabled": false, "query": "let threshold = 200;\nInfobloxCDC\n| where DeviceEventClassID has_cs \"RPZ\"\n| where ThreatLevel_Score >= 80\n| summarize count() by DestinationDnsDomain\n| where count_ > threshold\n| join kind=inner (InfobloxCDC\n | where DeviceEventClassID has_cs \"RPZ\"\n | where ThreatLevel_Score >= 80\n ) on DestinationDnsDomain\n", @@ -1158,7 +1158,7 @@ "kind": "Scheduled", "location": "[parameters('workspace-location')]", "properties": { - "description": "InfobloxCDC Lookalike Domain match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Parsers/InfobloxCDC.txt).", + "description": "InfobloxCDC Lookalike Domain match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired. This rule depends on a parser based on a Kusto Function to work as expected called [**InfobloxCDC**](https://aka.ms/sentinel-InfobloxCloudDataConnector-parser).", "displayName": "Infoblox - TI - InfobloxCDC Match Found - Lookalike Domains", "enabled": false, "query": "let dt_lookBack = 1h;\nlet ioc_lookBack = 14d;\nlet TI = ThreatIntelligenceIndicator\n| where TimeGenerated >= ago(ioc_lookBack)\n| summarize LatestIndicatorTime = arg_max(TimeGenerated, *) by IndicatorId\n| where Active == true and ExpirationDateTime > now() \n| where Description == \"Infoblox - HOST - Policy\"\n| where Tags has_cs \"Property: Policy_LookalikeDomains\" \n| where isnotempty(DomainName)\n;\nlet Data = InfobloxCDC\n| extend HitTime = TimeGenerated\n| where TimeGenerated >= ago(dt_lookBack)\n| where isnotempty(DestinationDnsDomain)\n//Remove trailing period at end of domain\n| extend DestinationDnsDomain = trim_end(@\"\\.$\", DestinationDnsDomain)\n;\nTI | join kind=innerunique Data on $left.DomainName == $right.DestinationDnsDomain\n| where HitTime >= TimeGenerated and HitTime < ExpirationDateTime\n| project LatestIndicatorTime, HitTime, DeviceEventClassID, ThreatLevel, ThreatLevel_Score, ThreatConfidence, DestinationDnsDomain, InfobloxB1FeedName, ThreatClass, ThreatProperty, InfobloxB1PolicyAction, DeviceAction, InfobloxB1PolicyName, SourceIP, DeviceName, SourceMACAddress, SourceUserName, InfobloxB1SrcOSVersion, InfobloxB1ConnectionType, InfobloxB1Network, AdditionalExtensionsParsedNested, \nAdditionalInformation, Description, ThreatType, TrafficLightProtocolLevel, Type, ConfidenceScore, ExpirationDateTime, SourceSystem, Action, IndicatorId, ExternalIndicatorId, Tags\n", From 770c8c05688ef28148f1ff05f5c248ec190ad3cb Mon Sep 17 00:00:00 2001 From: sschuur <78623042+sschuur@users.noreply.github.com> Date: Mon, 28 Aug 2023 00:34:21 -0700 Subject: [PATCH 3/9] Repackage updates --- .../Package/3.0.0.zip | Bin 41892 -> 41972 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Solutions/Infoblox Cloud Data Connector/Package/3.0.0.zip b/Solutions/Infoblox Cloud Data Connector/Package/3.0.0.zip index fa819f766a6470b085df2885850a15f651db21ba..e624505e0bcd315d5eef0337e0ad21876b936fe7 100644 GIT binary patch literal 41972 zcmV)sK$yQ!O9KQH0000808IiMS0QnyN*D|P0E9OH02crN0Aq4xVRU6xX+&jaX>MtB zX>V>WYIARH?OW?^+c*~fzrel&;l0EzY&pr?iefthPuyt>q-{3IOm~qK1ufAQHmi;c-s$mfuovu)GQ}=ATaFJDqlW$Xbjs#D<%Y{Nc$N#p ze@cRXXqo<@H?(`jG>rsPxYsitDyik%1QWYxj65UC67!D z>woiA_68nf#uu?EpT9j%&r|aHNHD4yQEbi>F_M^=k+~E?E_u2jGd7os5uR#8g}@Pf zucgS5j|b#j5m@9u|N1vMwjyl2CTGXYt^QmZreF0vqmIeVoEgQKXYZs~Opl)yEdFVK z_dv)zf`6yfP<)hW%0eU6xY*F{7bMZ3qVF_jz(_(@z!N#UNaZpmTai~9 z@O)@H+f5#jj449_izo{e7uUqoI3!tHnn_!T!E1uT2a?E{=c=M&xm*TbomNHzV)?D) zN>M$UtYnURz>Zw3Na%!sql)-d$@lQ7)6Y`R$5#kG3Kjdlt2G|Q@ zP`xGE5k!_oC{`$@7oUrT~!nJaF??~z-CGkG(|d-x#@s* z%N1B=ygwL_f0FhprGvWq6EimYOR*wv|m;o~RIl}s`Y)@hU!&99^sryRNHSvNc90@Efk zTU8Q+AQFSOXUG$JEfnr?Ap>HC06_!Y4~rUWLp*Zs4Oc%~*d$K%1xptu?l*+k9|XwZ zV7NPY)oY6SXNcIQ3na0`w5|8}(PJobuyT3cyy+7LB+W~^Rv|EzYrN!k3D)2xi;Dm#zlGzl}m&R;CXH4MqZZu>9Mq()< zmr*u=N@WBG@s)^lHh4AOiI+Q&EFN4H5c=kkCd!?qzgKr`B*-^b-}Ja;w0E zW_<_9zB7;hPSXH(2EipxACh9;fIR#b^B_#`bl=EBSWy-4K=Xqk@nfC%8^DAG_8g4#-y2`5j*9^Qgh`@=2D||;IEC4eB!?HRPh{qzW-FB7a=3>Fymys8!`BwkHsdbovT1FZmAibtDTILhy-2Gu z7F{`&INDEGm@95p5JBB;U`sZ4ZzndD@dacu2Rv^o>4wBrx;f@IkpHoi0)SkZv&Ip4 z`6_8%$q! z>l@ouK9*7BVh9W?LvrokctW-q9V)?FbKJ7v zZ)WnhW7H-`pG$@Bt&A|%TNA&TY2Qekdmk>z6W2p(eNYPI>YT>gU+eo#CWt>>3TUy= zX^M90%~4@Ly8;<**}^OzGpw3IAu&4;h<{r2XMJ0C`uv3aHD_uyKK3yZ+hRj9eR6Q* zx^oynPhHD&%I3_5Q6GrerH|)E=Pz~fZohY~e8Mk)vhiXh?Ows0C z&p*Aj24t$BsqBb;uj-FCk5y%3r#n_nI$wWmtm@qC6Ju33g*S~=C1t;aSk>&od(w!?vHD<123aoC z*9M-@_KE71OJgOy#Q;=E^EV%WB4#kVbO$-Upa0#<(;x|7^XTD`RCs_c-g-*yi5$i({4ldNQ@FF&UJ;AfCIsTrPvmC(7|c|9C9q(K>&P( z350E$KtxDEShGS{kPRvpab+d;>wwl5+kqCus?`R3;py`a*w{I7a(#kw-5SikxO2x=BU zk3(2QXdQ@Hx#*f3Q*1$1guPOG4aTt`f^1g`#v`CqrXzduX$yA?usV!3d9mM)@A`T>a65epzuL!Q&!`Dw@&m{rvX~T0 zs@Oq05ByZ%eSK%ZYxCScc=W@d;&oj9HGMoGi51A)3dA25RyqCC>7y#Kude5PEV9Tm z8S(k5alkPw&ZcTN0W*bH)(oPX0>GKZgYC}@%Wt*_OaFW@Jy-+ep_CU?@C!z!&K2A` zFu%DoVAi=_=kxzCbU!V1-QOY%PgYvAT;h+%hqsQo`*()9f<<8Je+gmL!w2@iGk-g_ zF6;_8N1d-fw*TF^8TqvScQ=JM?SGe){Zjhho~^3kU7p?Wq_`RGknH0-n`ja-E|$+ZhZI7=3Hsh|HuoT0I~ijT=E>UpK~g-{{jbxe*0y$ z^V)4td!y6y(74UnYjEZt`i&{oy<42qv75g}Y-I|+;J^O@P)h>@6aWAK2mmw!99L=lQ003=aX>L?yZE$R1bY(7Tb8l|!UHfy}IFkPTs_uV4dG1DbO0@ZY z+ z2>tC}{{^9)e~XT%a+v1nPb#QS5~Q?MK=d>3?bcf+X0*3ANxG zEr24tO6FliMc;c)6vp8!K>~_b%ViiP|Fy`t;bsh-s@y=&us!3?->SXck83 zB$$P^AAUtgezDz1D{6Y0yVp%tbVk&ce&p8ipxEob)#*N%b&9TPymK9N}PsQ=rF+kUE(=0 zj3tQ(DkwJrK6wH0>F~xRSuJ~AvBU6M5~%9!hOnQWYpFFX1|KrdDMB-=8*Y{6f*Txp z*!D?zDu4;l^O;Y*GtwWq+~-`&?uZqR_AU#t3~(QK=!ONNXjYn7m10^2iA>!_LlgzWa} zz+HX*a94-Hz3z64h&B-JOwN{PimFJOV2QdWsHRB-({y2qmki03ZPCRhSp#=%5ZtwH zxNDCNcWp4-wPy-(3wV`Y^cH-EI*v2Ev`mX}W1BqD=%_ zv0T7BQ3R}5vS6ta5k*rmTuojBcViITjc&Lbj}CWZFx-u23U^}@xEs$O?#3{<*WGRr zF$cn($;l=miX+3e#kL`>-4d= zI{ugQ)3f!AC?{vJu^H%3;0fO+yB+AFM_qd#YJ!373(A6}o zM@7Y*QtMIEuKvTbe%>9#_=dO>f+J_%$HGd;y3F~bYEPp@jXb>Yhp=YZyXJAjI_biz zyLnP?UYV+okA!w?bkEIAa~dIk2r@3WUvs%fO%^sSZ_uwA%vz+gs0k+vdh10vJeeGQ zeE(kfM98&&SB`6kL>{K~n#vLHmoCRYL+_i#GPyg9BFuHs+lafP&zBXr`}nTq+DfCo z9XRV8Y;RqGQA485y8g-JG`#X0Hhs+e@V2(xwsp|b!;c}n-%I#5%d0b6D)Ash^S38j zYDNpyT3l$7tp>rGm$r|C>o^^LkafuJ$OaAkuTc*%-_R>&aSt!60-dyM=;>o+MYxA) z+2w$4rpX(a+}^mCXmUHz`tAU1Ml^X4(Vpa-e?y`*&iK2Cw$1te(-5ugSig?IHS5|t z97FciL!YWZCw&@v`sh;;?xByemOjb`Cbu{4rH|51pT0Wu?ywmX)j>>rk}C}xGO=-;p^J&zTxEC~Cbr#Rr~`5XCcel1 zEsn^MeEi$tI+Rvq2Qjd&eJK0N?RuD}t!19Jolot0dReEnv##&f#b&J22C?o*ZdPo_ zy2h=FF4k>xqvB~;*LIPj4#o{wcQ*IpIoP=low?i~ww1LGWm?vzhh_R&mg$@O(XOMH zVR}2m`Yw8G#xQ*l!=B_a$A%1RT;%9t*fy6qo`zv|l0A$u*D}T&YH54RUcQ*^eCfM%vKe2@L40|VizOTKrE#gG zi!a+;D0v#bwA~}A!*2~={&s%aN0@STCu3?l`Y2Np?ct2ImNV91W80hdlE!K$jrCxp zu?CUGdWNL2hLXm5wxqGvlcw%v0kpvJT+kxC2_ny#)7P;Gtq=ZsERex(tjE(b{q$b4@NWE#Q>hAJ+7n5(-Mu@K8R^m^Pd&fs1xhB)^M~5 zy$K0iemvR^%~E|2xvE1cSMiK5 zRt&jW(Qq{DvhL^>ZpPcYIY~>JZZ>35TW#uI>KyegeQ8nt<|^>#GxxdqLZ-o&5|>eU z1H_EtgEUD%FiWkhZ~a$6EjUlCQ|F72+BI3)(7%1hXG zKDQDBV|iSiG(UNSFUoOi#q`rGCmXJ6*XZ%zDwubahOdOZHdqx` ztS)Qqi$SA4+*d1eO)YgT9LxTEtA1_eTm?eZ#JFl0Yu3kzj>ibzD;-1S!25Ma!OxJNvN6w$OWf6R$ zpFxlk13pSnoH7}{K{=&5YyF=uUVQj?@#f`=7ks2x;GFz=e>$%tn4vJ@x0jKPV;DVF z@|RT%qxg0euy-`l5v5MiK_g#bg-Jlp!M+baKEHTTnjv4jxZKU=Eqo1=R(uc>{xU=% z7i;`GAAuXNSAHoboy0&rpH%0qZ&%FHfPEI7IJxr)bKQfEraSjgM&r+l5?HQ~fUH7t zLK4t&74xtyaCGJIz==pivbg+;An5n^;~}yBr3ByOqk?S5C+OEYm$KzzI*q2&fdBmq z{ezyAz2)v7mC4nAR`M8pF1s?}FO~$;Gefx*6Sm~g5Ft96@k=iLq8_VSbYV}^A((!B zO9+tYotMOASvv6DnrJN>uv3D|HT-Wu5Yn%$2v)ue!3_wP=bKY6xITd?CZBH#MkUye zS&7V=M!mOd5Ue~vpS0ZUwQ04g5|l2cx9I~bV}v!P^~n)g%hf7tJrolL6LM@P#r@P zOv^R|&6!Dx>guj-ix1>PmdN(G&>_>~fGO#^q* z&=vgfF0qG@{VtV6dd!!J1vJnNK{OndzUadeu%p?+OjY2AC^?$sJdpWsJ)dSCEml`* z>c(DHCKyI-m|-OSd!`s`+%v=c<%@roxlx&EitK4xnOk7IO+q9Qu&mR$MKJ|Db6r8U z4AXKAfP^kF1%rCYUA=&1NZX+xiB^QFPKO4pa#wsK`<|L9 zsj5i-+@~t4vEuKyrdtm-w3%NO4NBU+UT$@iOJ+xfqIb2(ZLHU*iri6S>RoLlL+-Lb z)~qglx~O)wl4Q~9GF?`sPL+9YEp?h?s$F%4Vd!byC5##*u;J|y&2$&(aNo1?f+$PK zRXBNAzH`BmBEt7<7n>FVIr1H9SUm6Wn$J7?*wVNl_kj~NRg(qFB7|_ZxHWxNKEF*(@`rRks1v*I}`SyKe6NHyb z-{a{Z#4JzMn3FNj`$`$)KB7ApD8otG2}VAhl2UsX_zpG?^yT<8sIbLi{er#WDoOVx zv=QBQfH5&m384#?Et25Ii^70C1VQJ-T{-*>`&_Y?8gfm@63lX74W-W%_dC+7%19S` zhWgMLwV_E9F=OB?DYYhIa^EzWZT#5pHppkMEBY;m8*x20yRfQ_HiiI^#`0VZO~-Bo zb_HSjs{4dzzYIqZ@G$bgWlV#R?JU@y0(Ks3` zhkSY;cApWHz!o9jF|ht@`kMw=Hh*%4uT7^v*nv9qY9=>`!>)*uY*>mT zL5^)0L{JsU5-e+`L!Jjow<5ZhGb3B9h~N`-iAnJUBTp_ecgt&~yk@PO?wp_fPu`%m zGS0)>WBw})pkRjmn9wLveA2xlYyFuIBz;cujSUG`Jf)RWt{i@h5v${-W_7i3&NFGc zM`NQ3o%Je*?E_cd)Sd0W>74Z|%Jz1tTCVkydkwQ0d(QYZ9rKPAwj%j93K#h>O>23| zQ!PyGE07NVABD@i>JRx*fo_SGWhuI#SehfK*n#v})n!4n459-8h$cE)0G-3*l-v-% z4eTj;Sp5*dF95~fgynig;g=Om;7r|!>2QhfExc?{$K2|aDWB7iFJHnWHQl)!w^0UW zIggK9cG&WfJ@bv*74Y2iu)M3FQyN>ZzMp&_4i4#$bu^-nfriMPhPOk+-ot{oS`3kV z2f$`>!wFf+UWYT14Q%n7SXgy=Br1DBSGP@_%mmeTO#t%@Hs-{T1yh+Bj;-jLW@=l2 znLd4LLoqFX0QAx*b^@5qJM4Su@h=bg|E5`j7Y89d4@>TLGnv;CwT(VC-^*m<)dEr` zn&rXD-jvJ4!pNnMsM|ykj-8Ih=Fyqc53C0T)cAoX`vRUOQBB>lu%J6KBo(qP3$_D5 zl{9DO5KWyC)!hP~d@?=qaUA!|wXFV!qP2p+lF<$5mFgJg(t5~X{|-hWHdyFYS!|4$ zzfkDlnCzAnyn4kZFZw^vHPVT7TyDSj6W80|dNZ6JvRz6WM0w3)gY*A!F7V&SAKxFI zd?-L%B+TsVYd>_ZhpgJ?Z;nsS-yB_ZYJ%N9L>!_!K-t;hWODKD{BNDg*qO_ZPZ7q& zA&O?WqGDh{GaN_|Y{M2T1+oNlrpuD%N{;2oJ(~bG{17JRtKbvtSl@ZBOM)^8ACOxt z!_NTtyBB-5=fm!b2P{wJKXh&@op1qCUiK`)i{E@%VgDkm@F3kiZn_;we^fUm%D8`1 zQkfBoRl+9;iW3|q>^a&i^erFNm#p~yKR9%#90}Z}6clDM2M6e_$De6kgv%HeE#WJ) zTHqwR3b5OmOHs|gk${d5aZ4TD*ThN-j2EEYZ}m0!eh-#2G-{N;WDL0<(PgRp5TvTU zCHL}z|ATJwOqA=-odCfNO`GyUer z-zR4+Nw*WOf@F7(rZ<^XCX@g?C5_fFp+8VP;mOsOkxmbsDAwu2y7WO^5_06zll(J3 zOc48@ONKYa+z_G2ca)VEK&!z>PAS2h1zz+Fw3XV$E&(GFLi7a1ZLoEHrz4&30zfGvP*d%((#JSum@aQMWfZDLEV1d7Si`8P{T?N2d2M5WqcSWCS^DHN= zej8!Nw7gEfhd&e+G?>*GI&{(?AL%IzJ8PodYGWSTQ*s4Roo45v@aKK znxTx>E*V!5A;EdNpwn%17<&nMjiags45j%syYh{OBW4P_*N`@0BC7cB^l}1yvJkiBbYeEiiB;#=FtjlOwHt}x%xKo6 z`yFuIeLHqq@;oI~$!W($WJg_FGz^ zHNJrn81%Yv`n5PI;54Qgej72L1hmZiCJqx`yvSxuT^iuHTw}XF~P{66c`4rc3jPeBl~I$;#y%cbe-ripgs@40m6uY+VE6JO50{Vv$)|yRXD-JD z(L-%s=Y5)AfQ5}#ZI|-RQnF8(m0no#+qTWAZb(6(+xZRHO|S077{H^EzlT|4J!_sY z%Am{#aXhoh4{>U$#_-Tacflk|9?%Ud zu99Pzf{8N&hbkoo_|f~*DH!0eBECgn5$g@>2eozOS9B=;A?$edt86*?&Bwz*mwrR7 z{PBQpZ8VnAShfpKG?ty4L1P(>Wy`3evFy~w1dFrfu5Y8UjK(q=%V;cD+NJYjENAYi z_?XAGg7a$-!<%_ugBYJ{;3bDgcFDnT1u%reg0611#IsS|FY4=2W&U(`6IQYWmYwV9 zE+ZBzl-bz>k@b=XA{tuosR(X4+;ZubD_J&<&sWU*^C2IyXsBXp4?p(=g)2SagdF4y z!oB(&a{8WbHhoT+d9b2+Z4ql3-5LKqsY6v+EvGn^Va#s&PCM59oyI z+yba`wh4U*wGPDrii63;ft7VzWB zt3cl6F_xEC4RnQ->odmk8P|HQd~z`+&CYz5?83@oN;>^!LaBvP3#FD-YUu~tEWpJ0 zF23lRNDL*hEVFzZB3Nd5v$$@fNKJQ{kOch9*7S;n`7FqaS0flgeNDfz z$aF7r6@BV|?GL`^?}n&ib^(QtVI!zw#}ZEI>?Y)hFLXB!Z$$W{yK%%ZH`s~VtI=Hy zFczyK_7a@8bw@!8Ycc*lAj3ffS2P5YAFoV;#)RqhjX}S6&+%QpNBu5s3JTChR>`Y- z(jSZok2(t{eL??TX1X8TkxtMjK`$0n2ECqIEwq_zT~P<+O|%*K1r8mHP&1tK@juIA zKI;Zve3dyqOO3t!hGlo+QWYBMLki#FPxObNoi29&+D5Mr`Sd7E$zidmsn1^ z+moG{3p}-pfv4s?@YJSR>8ek(YWc`?Ls`{%lK}EShAS8tnrq_*uNa_)Fq;|z&!B`6 z*YUpckm68Nf`J*&F~NmKWs{MJ@L=79cA- z14%L^I>{w`oyzbQk+KYl z1Dw(zjspK+J3{hRC>a$IhAS%5{_>Z}^4zbCz@Is8i=r7tvx8_ZD5|Q|+RAJbu|W=# zr>EsIsbbibrlk%Dn%E$6iqhpFgvQU7PWWX}C$e)v|w!O z$UEMbHC$KDnlT3IYCtAnC@wCZZW@eSf}yyao54_A8E!hw^^2jn>@8p@E)2zmp|~&< zS9t>%ipy=6&QB;Vz3IUyQ{!uG)DyQ_RO59xJlQqT*11nWE$#6wX_ITlNM`%Qq{O<$ z$kfSKvl5va4cl#!@E9#HE%7!#_#U50Qg``_$}TUWl(JcEauF*kIH zw6wxlnDlqFrkDiuU-YMF%pR(~xf{VXKGGdUycJrxz%ZJ z@9jNnKik;tw&{w$+6=clJL@5@z^Rpl^a3wQ-&4u%a*ogY1nV}6KZgIlil#d;&b@%oL5f&YVms;oK*Q+Zk|uW&K(F2 z!k&e}tkT9xD+l(-DlgVee@d=!{)K!D;~{1Lp{SPE%C*n(vy%PYZSS)Z9%esz;yk2# zgDX-so`qx;9H5=IE3?T|ZY&sRlv|c*5%FhCLAfVs2X*LGoGr z^Z9eitEdgr((RleInMhiCOOqWG!^it^pu&Usv&STXtstuC}Jeqb`#T&9rD2$l0!D3 z4?E;!x-H~$- z^7QrXt&R20MyJAJPOkIiRxx~E!|H`mG%jEVH-Yk$ta!^z^N_3*d?0y_uDJ~vh?nUP zuye{6R;>%FRV&YLnR$@9a<@9Wdzagt-S&Rximu$w-cEaeFAUn-mz`jLs~d)!&vq-U zTyYYTT!huLVfOojF67MORERFDO651U9CO|$HooLV_GTsP?*wsaamm-aioQ*ZL^QBSbV8-yR1(lU72c1VqQ5^mW19iRR%%0&L3W}XeG>f zZ)^S8=3aNb9qf0)_V(^Zms*GGm+h~*&HcS|gY?%@4k{PC{;FKX`o9(B8L zgxY|o)%z%>>iJf3iNeR0$^MnKXe!>DzyK2XzGY$Gw_tn-+#0wwv|9tiKj^|gOcM2> z%7JOCR^_YLIDC~9ZS4DW{q`IU)H_bAymz14^OqF1yyYm!`bQ^<_&XIZ?9y_00HusE#t(6Nl~wbjs$9@1cBN5F zdvj_KKD%O-j&B;grH;?8oSVUCSNQD8GV1v3%Bc-?aVFW%{oZBZqbhtw;!K)VQwN-O}eu+TxSlW?^@C+@5PC#={I8VR**(Xx`k#cpv8muPqv= zXrPv8{Z-UjG*JCoK?4;H)JiR&frJe-KXfvSCKfr#hR zL_Bw2F~xg|doyvsAcQL3k$4<;BrK3C?&n9kdyTGVKl-ztN;e>RLovUp1Z-qFCoA)K ze1f+J@%CUtw+EY-ndSR@y4Mo%St{xPr~}9X$~#sm|I6R5%3Ly&^}T9RExu93eKNQE zM6P1@hphRH@{o^Lv$UA?aS%>MS)F;p+K6rrSrM&#k+e?wyXIAE?1V~Qatv6ncIvq5 zGv{=htrF$aJ92I5EdvB7N4fh5SfFVK8^jOL>Yh_}gnoCL7D(gh=r zOFb1xngFs}bVf&P=4W7rja+=vTwp4N?0!W}zz==t1SbWQ;}4V?HXh96%fffVHLsp< zn==!MF!=6!YEzl&jb**vU>sy14RV79OoT40{p?`X3kAG$xfyQkuWz@5XTffJ`*MG` zy&vp`?ajTb?s{;!zWMBuvt_4N(%WyT0+H^*^bL*}kyODDeS>vS0m~1efUWr+1r+ec zWoIwgxO&#^Ze4cU+u{0E`*J4;+uPmF{$;QqY;5mtRanf)U7Fk~hVN@wz3fJcX#qPN zEg}?ftqZDE>ls;QdD4OGZf@+iclJ8#?d`2_s~v2u@3w=zjoq#N^~?305b=H=5bt-k zgvER>dA}vB+}X>mUj9oB>vkb^1O)q?aM=sa9B%DicD6d3?aTcgsxIv9ciPW(_b=Of zSHacZv(Dy5XZzW?8SJ;#&Ep8MJ8cVUx(-pZvy&~xlmCRjauq5}AFpORS3jdyvr}cE z%U^0FFMc`m)V?@forbNs=fktb-MD9^4TswqUuV?+S}%*s&Mope|G=%(MzgO2DH6vL0B-Uip;=dXpSYStbyRAi{L!cYsR;tqV2kpa#F6IE8h zq`Z?|Jv$0U^{Axz6^E>Iaarfu+T1YDjxCxD3(l5aDS{xhWSLe+cyof+BJ;E{zL{p8 zohIYu*chb43PWbOxXiNHuMGDSCxF893Jn-|s>rDNa4WOB19(|MSHoWkZTFh~gD*;1 zH}X6;ezizEuS`j-ga6r=95TVj&IDh{TQPPvsNS%t%m!I|$x@V6BKLFST#tbJjl%A$ z5sZBu9MHJhknufs#;0E5v-3XnPGDu;C!3^8QPziy&y8t44#rmp%hNA1 zIOzXVY3%Ue?1I$}OGX`dYbHa52PY@?3T39sEdTwW-{uHXgaZV&@B(9FtW;&7w5sm! zgId^UVGfa3BCnh^Ua8}Pxnb92sm#|7>GHfDjP40Cw+CQuJhm8%I5qjZld=g#PKTUs zhB;lL!K5Stqpd>_WPt>_u5k&*O108vi8Yf%;|G@BSq5I2@{9UXOyP|I^GFvoDSY zbosNU7mPgybPaWG=$M@^={Uu1j#C&11z88Ojt62L1#O3glNik6$Qlvjn^B9t_tRk^=71=a-YF59;bY=`i}m@ab`OB7~6 zt8?w{ExWJ0qQqegnt3+oPDz?zY%C2tu6UQirdlJmfy*1 z@U5LMVu{}Mp&#tu%lt27h{zDnD=@?mFmb!Zm7GOj;G^;)`zoVFb~0Pw#f#hmCfl0d z<%%a;nje!5Lg)_J&_JFXO4?HHtyH4fk-Q31O)uzYzRR7f`oAg8a$(GZte5~6or(!+ zKnn7cvMO%UJj#pfQ82s_!a-iH8PtO=6#p^Z6Ctd zY4iCRP!#b=__CD^`0x}**5y;B1H<*H&P_`A)MyoK-aJ!`J9D<(MBl>rojmc`(Hn%h zWAzecs0I@bjUhCK&MO#0s!#501a{GsoN_sHf(uQZ5ut7sP9op)^JqN)DW%6vAgtbo z*Q}Eg2aeCqTbM^BGYAv@%lnkW2%eX^E>l*Q%PR#;npKf2xxA9ur+G6xK9^hJ?-j;a08ZMIB3&Cmm#x8W<5n_El#d9qb`oFbib$=qRKq9 zG}VYRBmO5uFjjmA*%PQ@SyLf6Zt57y(4WTxh{iDO6LKDExhNVw}k*IMFOWRM%mb{s$8EU9WwHeo2TH~Ly?n71| zW8k7?R_)IE|B~)eNB{7azLi2m&W~aiJA>QdAf^WUs~~62vE6niPe9bmG5*9Ri>9Ul z`O?aSwAo=MX~u)!5*^6t1e~zrZhi<^Ub)y~X~+~0F|~&t_LI$-x);#$I=d)4b7++u zSN#0>)8Ft*)`{f`fw(|G*3WCXJV1wtFby3z6=k~x#r+q~I3XVuF~wY<$^RmGJb4rK zyOeHnHW-40lO@6D`GT4h>~M^-o>U;Arh}T!3~D;wY6aYr*ii3D$R8xYyQV31+W`ND zjRPKcF5JOlX4?qX{Yh^yW?O@BE0Gn%J%oE`ruR_E?2_eWy0}-8ta6)VmaeXHSs-&h z1y2~JcsylLd9@Y<PLA*#2hVX9?i?rG>v)iZ z!ri4|6z)P{jdGO_kOPY_-^#?yFnC(##3Rl zX{oFpdWjl*`BoJd_{9D|n3g>TWz{j7SQsIdxttE0b06;1L_FFN0g>E&&22dfGc_6Uhyp zW@9P1y(*rx73)i5w+1GQ*igQ5IZvJD`i)}p8Wc45rOMWIaadj&$9;djhEX?Hzh$i6 zZ{e6**l2p28GGQp$JE7{WQV2KI(NR8@flPJm7UU$Us#QNH}y4;yTjTq)yi zhQigsFF(t6QL2U%Hj!ZurHIS70W}UpObPXl!|-l2?1eB3zi~6iV=Tei(2`4Ss8c#d z5WaVs+r7dXyiPi8V*%#MjXS8wEz^smJ`L>n@Bk@pd>Yty=3!jS)G9Z;7M$Zg%`ZUh z9bNxj$~Q~NK0VY%vDvn5P93mF@yeF&&XyG#K7VVx0=m3I6;!Q0VZD)8ypnSSFm{sz z29~)q=t~RYpHUoLMm;u5{PLC1>XS+N7KQTF|1JGBlIIsu{QBQi!9L>(+_z*UCsD&c z(AnpOGshb0*T8hdImu?Lsf!247haq2wUr8a^e)0o`<|f)9fz7pCTi2Cv%||`=l_z z>hK^^@WU+i`jCPPv$+^x!MUCBP{6WkkRVFZ$HPH4RQFf*p0e}-0F{dhHA}O4US`%V z<~$^=cIdQMVjqD+L@;{r9kt)SJ~(~dKK%Il;Ouopw*Nl-uDZJBckQ83T~P`(;Rz|M zs+kfcep|@htC8z9Sr%t=$0y<_cyTy=)0)&Y-5cq2(kkzIJ(1CKjpt^2#uxmjlcVY~ z@{|^?7U z^|%tP>u$!k-_h&0uPaNnk6{nG+(mQ9dzZ}gPVdfh$Kae@<`ZxcU4=iQcpNW7eo4$*`Yr4d_>RYk zga1}mN;c^M?JiXv#4U8FfG+$#S&lR` z$XlnXZq$jo@kD0cJehekY|aE=)zA~2b*X%okJ_cD<2{ej57MZYD4Krp@~9GwLLjC%WnGq|`SsIVbpX!DCP zmZB0oyeTP zmj&S@apNZTq9VAZ!cURSe_?Gu4Q9mH2RR1041>e4k<|&i)iiRnUncQ*e6!*!;<&(? zQ>;yOV<969!Rv~HOqVz;m)As=sZY>6N2Iq7CZuo^R@H_wtx8YbO-VCF-f(k}Moa*o zVH&dbffzd7^IbfRn@Nritkxr>#@Y)DLDcBBmckDYIIKl;cl&QNR5UD&h05nE-K#>c z@f)?Ztc|H?s^=!q65!_524MZfM%hangl9!M?Tcg!X^Y9y9}6z_N|11czc5PPZI^zw zOY@JU{8WmW{pc`)H|yrZ3DG9@h6Th-)0JolXy>3ywoZ{y$C10#lZ1C-(0C!(~mthI2OYA$}_xL^)0l}E80`=sP=te8;N?pH8}0FQQLwYZ(iY zdSWw31DwrGHTYg^fk7+Ih=NnNO^6{TjFUSf`6>%b3$-=a$haULV`(1YZHUj;Fs!HK zvG5gzV`IChFtU)My8Yga#a>28F|I`PFR<((&QdsPpLGooarx>680+3-#B1AYJJT!gnBn;hVchIU2hT^YOd^C=|-(g%5(SiHb>q24X-Qm4xwY^uTAcr4{E}zmXuJ zMcv$Tgax#5WNLToox%;zxmron@O5hcltOc$m-&$hHF+9?O!Kb`sSm}C|FB1??;QLZ z;bs+6iNQSH57%{l>q7EB!W>k{1cr|qpY^(197uCrQA5o|@C+>=71cg5%y6He_joW~ z`D!usasORc%UQG0d6D)!izKAef%2T@)c!>d?X4%Z|3rzoa|FSXdva%}xm4jM%xPTB zie6LMLpQ^sh{30hvYkqAoqH)8^)EE5v<}T!cMF1xKADrqO~Uppe)meX zFJITjddEh4rUWL_bRrH~~`sgqvt+GL2(nyX%Cgk6D7^dKJQkM8r z0=pSnLX#1eQuy17o{^I~O=h9w-5r4AcoeK=r%{BIwQU$^^DDQJbycTYL<&DB-azgy z%%Df4vQ>&QED>b+l&w))A^x>g&|)9tNE?$8>$AE~au@)(HB5sf2w<#0s1 zhAuF%-HA@vS=MrMdpAy=JQ3w;nRiaEa0j9#?Mq-`tol@XU@4$id8AD$jfkMx1FQ0$ zRVFWK=ap_KExxo8sERZ@nPrEAez)EA&BCOkJCC)}n?*}{(FE9{JjD^6V39|Sv`Tg5P$a{Q)gv6*m2de; zaaD&?Z|)F&WvI&kSa;ot0Xn2#ikXq0?^f&v#Was0bpa)xMySIHpK@~YynJc6ZHM4d zL?0(&u<6!qtvEFj4H$>zBD|-ysG)m+fhL2`X|+cQ zet{F}~b%7G6*LKSARWR8dO8sJMDxi@j$tz{XnD0#Z$&>dJb8lbJZ-qBHT5dTc zO?exaGw3osJ$dzNZfQV628Bf~JwCKOPpDi4?V?8%uBIyrI^opiJ15z4|Lz`po94_K^nm{rqWS z#BNn%8uGJXBFl&A7@*~0O7cdSkZ+uM(ht3=I^~f^@_%rV%R_@Do@J*E_dqyYA>JIp zG{7?B-sBFrhrp27x?~a)Y`A}s^wW|u)Mq1#^f2QsA0F*r+0IlPC9Iogn2+JJ3kXVb~^ z4M7+vAvN`WLK$m5#A+WT=Eq8mvZNThDiw4;=Jk-vVKz5u@?8aN6k4q4l!Gh*`ePma0V29?d8_C(g=^ zYG{Z`1H7v%VE*+bLl)Pxf2xMfa=f%>%TLOtYp-(c*Gm!|!^5Y_oJ$fNjo%y-p4NNM zvYw0BzJv%DO}ye%L?pM_WTo&8`Y&9)S?WL9Xp% z5ZhhySb=Xb;M~PflU|aTTGD?w01@#k*2r(#vlMlOoJGy${I-qDP3nSQpq-E}Wckdpb< z>2B@ly^E=S(QyPt2}wpVEZR7GCb;@8%MJ*JefGsNxHmJCi~3lUUj=(3cUA(cF9x3 z%u{6(8HJ2%*t>KI#O5&TCHt7jp%=;>xV7>(eO`9UHl>S-) z$r^dk+${yZNP7h*aXK*2a+Ccx{8KWAyRX|N60IsGB%|;Ufrvc*c7O}z#A&$#+S0}O z5~?Hrt8|-8w>qHXl%B>CL#xd%Ey^t&p$CO9V%(v@wbF@sfZV#(c%+6 z&a0Q6@P^M?k|Hqhvq6I8f#^Dvp8z_Vbj4OHxhn}g{T>c9QwrDD zauIC*S~oc5P?HxtDw(wS{{rM90ovcp%8cgXYz%if_zbCC2J7Fj*@Q@1oJK2GE~u$< zwCgieZkJiDdF!phnei>pvRyj0?)z+TF73P@S;E4rPt$upy_UMQ`Bqjl_>-|Y=@3P784#IBolz69UVa61?bT_-xY@jBJ* znA=e#g+5)Nc~4FM63r> zX+zW7#@X+Esmi_wGj$x{faBZ84%)FAZ-V0m=#GLoC-y3h>c5)l31h(`;f6_~7uUQO z<_1AqbaP(KQxP*5{Hwdn3A<1Ncdzfk)6HiX=;Vw&8x1LLti>h|x8UaDyi-<19O8n4{w@pm##9 zhVSqsdpX|=$zC9|A&=ZAd31E1qjDy^SL#dRQBM9Sd)j`8+b3CVPLAS11KsQ3ypA^I z<;bk@=-`#6ZQekut?yoMzHjxF_BS|UO04z0p?dLYlG*y?l~iMW-juO|)?4U% zj!!yb_`-FMu3S;A8{~BGI)Z0R_EdscZRBr_dH;!HMn;@q#xP*8I1$b%qJHPB2eU;f z`|)h4b{=Pb-uRF%`~`^!e&I(XYOVSI9sKtjJe-oaY%j4~;tRd>A37n}@D+F)%2ZFb zcR)Utk=^lAv;JKQ@$O&4?1XH7o98R|iMS4o+yZ^G)eQG8h%t~V z1dV!S-GX4^h%f}O6LdIUz7

K3x1{JTs7^i{Qh@%wmD6VTfO9BMTatqv%M0WAtJK*sw~HBq-^v~ciENm0ewTj*vxw~`zc-n@OE@yF{iU$EVezC26V~at z$@F#i0mjU#qqGM#Ov*Nx{kU~yJu~gyy^bQFjAR(Ttt$53x>2SVO*K6h_jkehPHVT< z?Hm%oQ{~wyeuhRzOnM*sYtOggtLj8pt-X={PUc z-Uz4_gvOvmxnf0iRR5kt8^+_yao++km%-P=o3c!HYCMFVI=H|z9uLJyu&BiQTu%b? zh6|=q*bgs=U6=MZrYQXW)D~uADUtuDT9ae}bZ6a9bX7s;%6d|$4)$C^Zxb^Gg50+B z7XQ8XS^6hCA6wGycvA;@p@69FoF`o>N!Dd|z8}J+n+wjZc?$R@ayAD1(OI9wz>3do!O8vkNGYQa$SvA1IQY6v}j725J%y+d)2=(yZkwDAlIUSx4_Eqfmd_t}5oTDjr5 zJem4`I1sUGo=AIcQYFc6Pu%jVTOo`WpTzhe|JOU~<8-dMKPy z{6W$SL+OBh*sO<7H+phjoX80e?e*YBfH~&t$OI^v*&#j`eD*zFReCfUyP>w=fz<*G zU$~A|d;zDMeSJF?fI-4X{~v?&qNsI6s&y#JNqjP<(QY{xmyw`;N=}paz*5TRBI0h& zcP;z;Pck!mS0E>Eq0a*`MHaJlk6Ye1i@9~yIq`v*L3lPj1!6lVw}Zmy>?FsTqa68% z{$XF36IKkjWH{c^DW)u*)YLS$gqD>|V4SQHU2)&<0spTL{mRhAjr&U9kzyZ)O|st< zUd1^Bv2o&#r#A?1>qlN3Y(1#U5x<1Q^+TrH5&zkgm~Bh4D`HR2+0{y_p#9B**7Ng$ z^K>LSE_W%+gyRuoM3v-q3LXTeXsYZ>kkG*U_HVlRZ!@6NS+6ePV5t_6amy;{(ow3#F(H?lhtA5;F15@4ByQE{q;G~pki&#manlMgF1@O>=@%%7~Ehp zr1p%flfQ69lnzoNvQ&9ELuhp+SZ{|B&HF$n)XepZ5p1`RAkHE8pPz z=Je^A<^42&6T@HUYs%of@B4JgIV){HKJ{<}M4qh-g<0Ckp?De%m^z@c|H4+)7ru?jm0ETL(>+mtHwV0egAzW0gz;{4Ay z+P8@};=FkiUFFDp?}1oz7vJJb9S!2ksD0ixB8F)YuHMouE6Wn}X%m?dPZ3bICV1_$ zdsn-$rqP)v`KGf1}&#vTsyrdTA~}rO~H7b8GMeOTMNISqj96c zE$hrDvU{5&H|)$b{~GcdWj*4|Z#-%C&O6aM7IbzRwcxf%!18gsco=(be*Hz5Jaxhb z29J0=cYa*;*~G-)52~ZHWWK`O!i^{v`-wIj@+c$r3w5>sP}h_`>aGLaSkW)4E`U$| zzJcdsVdCwUOni3EB{+Wx*E_bC7NRk4gecMDJ%QvjJE`#)kMNbi0yj#XR4ODd@(t~k z+ASS5RIR8En%c*-tUtYD4Cfxij|FKUg6z@<{>5~RbnC|oAB=>y?q9ePD{iFlN(RE{ zmieJ_XCXfMMhW%dBD4kcVtAWjBuG<;YPp?V&w~6jCgC>;M`i%NcfL=8IpWFAl^j1c z@q)8q3$o1oELDB_FNZ$xpdY0&JS*(j3l-KLOxQAUXu_1YNvjAaOFme2au(vSU@Y7b z)ot)B8=pZXyjUfPVDy_{(eV!)cukSQck*933Z{pG51&Xniaa4obC68t zCcW8oSP7|(VA3z9MP*#YLUeh?RxYF;CfwcF_xj{yI_g?f+)xeGDX5A2^#$l{1s};@ zJZ@3zwX|5v!zgvrLVlDif_afT?}roqSz{CPd!)H$Dt*sNTVa;91`;<4<%29u96ysRLY?@ZLzPuqVHL;N|7B2=bc-5^Vk?H<5T& zqSitvp17`Z;GWcXlHU)uHg0?6$2eZ6}cSijU3tqk_w z;iX=rZ0eb2P*M%@fQ25EC|vp+Vq`u4j0VIRbxhv9B@;$avHC4CN`${-pKlV}lC1EB zN{N!$_Z?|fiPtS2FnwXX+zUJC(#AM-?azUhpb`(Qak)GNqzj`@X43s8YO8HscTG`FFgd2S-tFt{|ic7$d_Csi9s=H zPoGJ0ltVPPoVuSa2R}heCi{uVzs?I4=+_dIf`5(exT%kcOiBcExfzd^hNu=-XE@`V z%)|YWLDtabyoL?KUndizpl3-+f$Dz;Hn5gjVI{!@k#~|05;ez{iXqv9{H~KTe z0U!nt(xcEOxtJ_K=d4TdDQ#&~0j`fqW^a-S_u+>VNh{W zz}1dJqb4|0`6e$jTHPiUzn_zw>v1ozsk$Y)oTVGwB-ifTfvyI^yi`7RBhT-{%j4ny{CTd@_&O%`o|vggu>xNbmaw&^43})D_U6sw`qr!^W}9*9#ynR&biD#?vK8|t%;cz& zD`yxl51&fwtJL&9VXO3u&oyZa6 z2fXN!<%vFEa4`?>ham1Sh_`bwH>)xCar%{h^kpdPt?;mLkue{HHmb&(nU=&)ix8YQ-l5BN9L$oQAasVoNWW2V!SHc_82J!gy38=o=ig*w%M5c!(X zX=FjQT)V{VIMzV6o&#?ZIq5bwscxxFd@8}wMp1z#k}977d7HZ^?C~p@?~-Omq8rDa zo#@qiMd0QTfZx?+_~tH)P&@aA9v%7lu$)oo zrRsHH;-o%6&qFjY ziXsyxC%lP|Zzx}Tz2w3luag>E6BD{+5n0lPer%>@>fLbWbJ?_~`0uoeO>2*JUZ)H& zfsIqqH-1dMDBesC%Uu(uUNIFW9GCVDJrMj}+HCr#qOst9NrpY(Nsc<5lol|n4h)A- zo?;79IFEG_nH|CDIP2yFJCuQh`{EyESXM3K<1t5L?&z88zH8G3`$U6?;Z}SV`$XQC zybQFRVVBU+eLtS_xQ&E&(^3wyKK!LtE3X_JukwCZbws%32zDx|cou-CkDRvvB=XaB z(M|FDPAXLYM#(|fX5%WKPWlEpxn3%to3OtfO`8h8slo`N25U2#FaLPBsFiql(fUR= z+gwI2YWz80`j=-(W2S|mNi#VmY58v`fxv9u*B9P1gcv7$9qv^x!X?(2OlVK+N45JaAkxgK)B#p57>3YeBdPVo!SVj8SjJ&z<)v`l|I zGbM|zsbxS`W>sYtJHCSoPDUmKbY6+v$K`E8rb1=>Pz!A^k3Usc4)casWP>6RDWvgV z|5ADXU(Eur4R}lY-QrjAhJ8ZfACKT9GDxl=pJdKs#)KL;cs zPbS|JoY@~|XYI}GuY9hDk-JX8I-?%ZB(xCKimI?n{(;=o@G8Ty*w0j7j`pdzq>I!f zc$IptGU>D)V|y_mK57nEO~bfyrVOb<;gKaYy6VYE^1tY*&Ki-G+?nFcrEMJY3{rhn z5>Be*;Yk&r7%m1!&3P1D&-oxh_lFWT#P+&n2_E||dZ5mAMRU%Zygfeu=y(h(vy_~H zp{2WJ-Z}D?r49GAmyF5xa;#3!rJ|a2KHg9|Urtb6J%EdPBI=>EIWq6XoGtGKX~#RO zK0zLaG@@hucDZPta$?m~u>s0g7(z9%l{Jn?&8utQFg#Z8jlViJb2qc8y`N@(m{@S3 z*1BhpmI8FuasJH6kbQ1hXFst&}UmMoh6PP2`&n9uY< zcFOcYWaqxBS;3;3pP#j_LyuR?&`I48?Q=&*g033l5gph-to{S$F@|&j#vyyp4Pz~H z6c%KIIAaRDv5in3(CL3@W!N(3uc`S@r$A6%2#iHrzOsc`ugd+}`gAgP64=t=iFACj z9zNNjiRtdxc-m^Km`Ly7rS_^u3&L9#dv(q!x|*TSg$i!|q=Gm8k(7c~+wpx1?>1BZ z(^~#T3g3d~YdM#}*4X5IeJ7{*bKA%Yf$~RRGL5gGt-w~3`{;S$Bbdu2zNCV%`$+ga z%45MhsKFKJnH0CdSK&kOqrpdiht*FHKC{Bcb{IaR!j5}e_~eZ1?nj{03jGJ4=<`ke zA?OkFg7SCO(q~rFCz^#@|D=H}chBEtFDh!@L7F(Pv~FwzGj*@n^H;-})55H$mC~=4 z(yLUnJDW~LIXx6hPqE+GQxZ>Ji!UptDA9BG+>0kG^rSAkVsE) zYG>PYwhd4^dx&YfzArqUTo*Nhqwlrnea=@d2d$5J(nczCj#l#9=0{h3Upo;DUiL5f zHUS?7Nxd#>K?VykVK*Tc<$w72#?s$Lqrc#4$K>)V>)Ij%CY2vbebQhAbPdVLK`}URWY* zL3P5%N-SJ~f0=XP5fP@m0CxJBy1!WZ(d06)x&xur3i?|co zU-XVsy-bk`v{-KSele<0URx*p!eA=YT)%hCAiStgWfTHsdCp!mkrlk{?>aus=RHl` zo!(mPwO!A}=Zfm_6b6ps@#cVg-MisfUE6CwDjKhWSD%}pmbl~X+VQx{)6#&2&N0Yn zc2Wv0!zO921G!)RtV#o2CdKB~>5uc>@p-<+g{|U=Zwqj^4Iz$UAZE2}6WPjd>JN|m z{L+^C=;o7yI(GStN|*lFASbWoKlG{GE=)6;>O_6JK9X2|TDDTPP8;wjmuNfxG|#5Y z>FZuymfswxRqAxu275|7abw2r$lrD1vtnfd zzw!#FHtX2f+W4kQ;Vhec9^sBluKzyI1*8%QZvAW6kP8DTl#VE!Iz(4;k~_@$K5m{c z`Pz~|gq};nD`Dc96Ig^^4Z6d0eeX?EX5>q63OJK*54oHre}-%^$wbQHnRIITbdV7@ zkQ=w_J@=GejZcP+;K+JT-dY>E*P?XRqQrwe%A&X){?=yMJZpcwqJf_mXQWB#|NdAA z=f!d5L}AMbwVD%jrU0V1$O~(dA0bqjzI(SJ@AGILWtl3SBww(>bLtGORlB(Ds$+AO zNJq)B%!sGno&#DI#w1l=TFU{8%ni75$?CG*fVpOX46gIoZ9e}fyE@d-6ub&PTpB{S z*=hMf3p4P3ITDraH{KRN%XR7rtoj!9Pcb2$eRP=vt_|widCgbGpd>i#hA;dlW*4HJ zM?#B-Yi5kGSjr0Bf*<44GZKaZE_~BERg=5=PmET@bB#ufkLb;dc6O_DNFOZRb4&tZ zA+*`ipm8oPUOzcF*#smJ8b9D(_G4!_{A+Jul-G7ky!E}|pSDM>yBO7c+`B_WR|#c} z0v&!F(k{_|dShWi|)AYdg^b|R8*lNOJ<()L?O#ez{aU*-JMrII@ zMN;>Zt2n?eK>?MEp@aC!BIWWo+_{YZE`m%^@Fx?^c%qEY0{JnHE0qM0Wh8I1pHk>6 zzmuZ&+k!7EiYEarI^OBW@i3RFclNxc!{o0?OHhyJAS5UM{80ro+Q}wOX31BOJ_27j zoqk{bYtimXNKK0-%bZCZk>dPJs=>7&g(rt>b$Bc_>ZHA5g-zBL<4w^)+dRpAL8$uD za;|j>SUjgUcp(ttz#kY;`28a;ziv57bNja7Gkpccozc+;wu7?-Tr?PEzQbt7G6PFT zucxNhrZ1b#%asr9nmqSAp?j8H?mTJ@98fe$b*-nR`rC4@eZU;MG1o z__~Law)1tjoM1;l>n(mxVf0TDg_+EnG~Se}G#vh4MJaN_MoMQg|M`yECDj4idl7mj^UC`(M*Bxal)5% z1mCGVOx=%``){HuV%qRQ6712#>qL{0eSO2j9 zll6SV_zpaTY9W-p6aIKbhum0eYgZKEp&}B=o1FBi52UK5H`bWIk@FgE{g=?&4F^!m zp8B#@vkKXfc|TqZf&82Z{*+rwE8$BH1E9^!d|EadR=KzI7>gRrt%gF*R;J(zL4}1R@NPEcL zp@l}1V2|D4hj`!}43 ziw4=!H)Cn>hLIFrTiwc+GuDXg(gZPn;T15MPr+T_Xt+Wm^eCjjR{Bj#t`0~AL|+*C z`lJwOzY$TFipV@r1{`RAi`eo+3zX}9QnQQCL6H|JHrI?DULW=Q>m8KUAw5)!yWaSEGbX1;y#&;Mv5r*^M|KLz?hISA0d2 zuJ3Y`$NJnc$*;j*_|Z}`{f_WlBs2uaqBY2K0W+SlkLkRf_}fniwWEbd4}zvL`Rtn> zoybN*Iae~^(#L?>@0;2utk^&(KbSELLJo$wm;obEc@C422|=w+C_s9RC~)FUfLI_3 z=hXb``kwV#xzAtRp+cL>bUJmj=%43Km++>5f1|I|(){>^xK^f#9b`6lpbbcH~;H#)Q6M7@+tTw;|bi0a0c;qx5 zuQW1&N(`N`88)7+@+vEVb4(NRyt*^P<2Xx9Ixt}i*uxCkhq>{t1vtD|tzC|grqA`B zZ#+&RpMGANW&Q8ZeTRWaZxgOVQI=dWkq;H{nQ>{GLo!m!`S)MU%^~!Yre*4nhRZ!? zu-BMc>d_onD8I%Wq$O z(l8aW;iQ+BfDN3s(4iD|9(9Killnl^{wszzkL&~@TJEbA)JaC6wEP$ynw|x*)vNM$ zsR+q~GdA@J38xSn-OUA-Mvk=-AK$mif@JzG0$Nl?98slyKAe}MFRPTkA?k<)Dk+`i zJ2psZ)7Ra78>f*}DX0}_H!Mft8ZCZIw* zO;=3w1%(wn^;2X#8VTFhnf^IiGU?%g=tNYN4{Qa&uhT0e?6YQ^Y#MjTH+q67$wTKZm7)y1g8Rb`WQ$;;E#!1ChWg?3px-H zc!$Ax_P*BQbq*O0r8b=B&3ogKOrV~LA*n9nsSN9BVYK!X**ywUr%*c}WtV6QE=*|2 zthZp6bw|@hzU1HBJ@I4vS3v1!&$s(}Mm|iJgug!{jU^FH(DCC@u!VnO82%(SsINLf#X_ zu=EP3>>wv(uB82*MIr3TP{MOz{A5v=1CL4hQ$kNkHfa4%NsT*%-puD-%tt|m%YA?}+IWQO+!bCM5cW5CrR+9GAM;rmR0r#R z<1KBkUW%>m<;Yw+Br?f9QO_Wch}sb;naNsyS%qp8571RBKK~LAl4OUje*q4(2Hoz` zUnAS)THZE8l(@4hTut$1wq=SN<&Ggu>LQ-*{ATMmn3=KA=g`H5Ke$s0GB2;u)K`R- zq5v+9t3d<3{9^q_?HU)a@Bde?@jaG#o_P>kINM)dOY%D9S8_-yCQ` z)S@!q68g$nL1RwpN|jj%E|1x&0jgJYMhuE1uh#Po8Hjx)&WK`SpE9*I21caJuW1X~ zc`P}_zaolL%Epls$Ep9)q*A(OmyJ|8ki=VvFxB829x@bFIh?zqSYwN_u#9s#sd@A# zX+p2}yxzQ`;j+~jo>_t_$_O4zHv?X>%5a5LkwnpiRQW<=s(J_`tV(zx89WV+PF@&u zM@S;9RE~%vsD%($q>m=vL=jhX>A{p%($X)%Ntz5z(-uwLzaK&pwf@!6`VPS^S_l4T>;$!hz581l-Wnj$H8tpiD!AEG zfHfcO5gJtRkT-xWAuay_<&z`vw6GQ~Fe#-)#=;NFyN=7xp9p3b(-zL`Z>(*t;YQ?Y z2RjBs1Plqg0qh_!zzzmjM^_|Uqg))3K{cq<{Evx}0r-Bku`{vkang-7*m?NkQsVzq zPt6sv6p*O_RxI@{vQf4whQzH(MA#Si=`Jbcz1`ZRB0ilIV4iTq_|}WbmXn=-8$Fu7 zGy>+!`lH<{f}TyR|Lpwsi`dO7spWUZFh@jg)LJEqQ8_;)Ds?eFu#%qJI}}I}IrvdV z`@Z?wFds;f6$(gE7Bb*kCABRJSaVQ7#YRX#MHoO55E0qZyCXydRS^ae5!JH)SJ(i@ zmJCG16~OJ497II4Boeg?BQx+I?D}J}FUS0}QRPcoTHx}a6nYyV~@_Tt{8u7A3X&p;h|H)Zm zXlhl*X6=t*Lq5_I>sJQFW?0H9>v4ovR7H7&*9DQT@)fv}0?9Fv`@|F>$7$GkKc138 zHZg{h0#s3+I%<1 zG&~$tLS&69)|lIJcqlj!)?cjuxmCaXwX^2mGbpEq|3VJtbDL89=RPT=&A&R>+StV) zgb36O{GZ&WklXUVAsd`lhhzW{S4U68{~tez3f-| zkU#F-LrU0ptA%NKOa|Z`)y5X({aZl3nCNI`^lJ3h3K5`_Q>WV`ik3rS_~`HfL;7Z& z*kGkRzzGo$dtG`96#&;>^{9|F848QF(cPqo2(;Rb!W$NxAs-f80SFt}u%Mi>+J^Zr z9dIVa7APh~IDillL0HjyB86jC;D-=FRI&fBSOJb!On@=qb`=*91U0Ed)iTNyG#Hy< z6HJu31y?25%wo{wJe!ORG?O9=;5k>GJ}vg%?n&54psBoWu&OYoF&)By37d!^tPU|N zbYe{k&=;~q7vgwSa~k5XnG|Df2?5g)7#Ca!n7hVHV^-*TObb9B4%kmWa> zY%8*2o#iAdDHftCD*2SaR%sXft1|KaZ`aXXLiXj53vT?cO1Z@7UzH`)!WT*fPaLF~ z6rzN=h=eUh7e_Y4{8scB2gO!XQ%^xc8jNSszZ<=OJO>MCp4Bn<&!7*AH##E%&2+<| zL8o5XLIceh>tP`bALoptKa9`m4vITl1n2Puy$fgy`Sv!}KG#5D{?K6DDdFKv8dAKs zh1XZWLtOzigR;5>0Dz1J0D1Nwkm8VoMgIZmTrdLw^5j1tZQw)1Y6jZ>4}N?|eZ~I~ zNZP9ZFOcXf|382f`+ot6&ISNd9ss16nC5b%p_18G%oJS3n~T3uykBbNzEPmsIp?B1 z@vxff0R}}xbrx!Z$pJ*4kqS1V20-~~tfU}nut}-?&L-+cA65e}tHwq;tQH#5Ue$3V zhI>%ug&5XewE;N&Pu2l40+29(oB$*Nw^BKtmj-b;V1}MDEBCkrnNMd`G=4wAo)lsU!THsp38MH)^v_ud_%o6q0zYRJ;Kp4XNC+z|VfoMSL%RKRE zfUNa#S3vqNDvH&|Oz0G^0>}PCwhe&n-jT7)^DJqnzQu*dAD)OYZgAee?m{;_EBXi= z@qRoWsG5IxI^e|1B1fv?TIEesb0v@2B;0*^|BL3#ykmV}IchG&dp6px`O2xpasG)I zisJl(??k@x8!?+86t+PE{Vk(9r37ROb=I4#Ty4C*)i`H{;$T)0w|8HTie*d-Q9u* zmqCL=a2;TV5ZpC*umpE^cNiETxFuL{g3F-6B|v}>G)DNFobRvi)_2dnb(vbVhu!q5 z?y9HWwcn=q-ZF7KGw~Je(F4beC~^Tvry)(@H^EL;msSMa4R7MbYTF!N%1Z{bwV>Me z2wK?RTqK*5KPm7U|Z57T&Jt8DCjS1kX}+sERno z%Rh+iG)Mr&S(kxNwJPZyDDq!|sk@K{xXmZxS>(#vK74UvwH0G<8%gU%&K(<>tR%*r z1~zEkut8v$SZ#CU09Ob`)(2D-n-3FIK98B}GkH7}O%dtJdj>!QW8;+DGjNjMLj-!1 z`YXFtJ095i%04jL_sN@Bpk{5tVUi?u>)PGjV6eA%Z&%agD zFN5&{{`fo*~KqQYHcdKe76UyF@Hx@pKBw7I=lDbBKNFD?%t04|)z*ZeOFulkbs>TiKoJkE5ipgBck=Quq z-Ko<;cDoK&tIex=eaF#Y=%8$vsPw4|&qWe?BzZ2Zqeb`PZ4WiU=T{vmDZK?iI9Ce4ID_JK4!fV7T3 zr13^KKad80APxLL8vMPA2<7YpX~_?yHUBedHUCMP;lD}CH~8QVt(kYbdmw_jCyis(Jt|LVQTI^~yb*8E2yvhgXmB@Di!CV716PflAZl|&v5V?} zN7ux5z@>o&{!I+%M5`04jf)pi^;-cCq6T=7k};*slN?oHz=H@F+!E@y>S`c19iGZ1 zOQUcjx<6Jj&%f8(e^g7NYV%3mFKCAD8K0S3qeb)L&?{wJ#FbT{GtHUleEOqEF3T$B zNO+X9syD@;PC|OrHY;DkM_Pu;ftQ0iF0m$qI;;i)U^xt-+bj)SeF>&$$N2|KLJC+C z#lJ0yRf~B%U`cKPOCn(WU`gW16(20g?hIf_hD!iTvO8l=OC7)TU`f~jOQQIXmPDD< z;F*Y237ss-DzcCT#y8;@4tNDtLL%T6oV^%h;R-&XAdFR78!Q)mU}!gdAWMp%j;9eu zq9t#V6hXraUg1YFd8SxklBdJYry5=As9BXz1~N_6q45REbc;JU)dg{W#jhqK2BA^PoN?@=yc!7rAdb|TiYUu{6zjU?T62n5b8OuVq z6$nir(!d#QRH4u0AYd1H2v`9K70kF?b<;s6Za9VoW*l7e@5lvOV-3tWN8qrd7G@mw zSPIwmU=xZQ-ttLk=?YYfORl-4SkP;7E>#|~paJ9wpf@{R+bAek4p(9Y&P6A+dPA_S zGhd4twJJt?Y`XiRN-3I6w`Dhx*siurSqyANgBb;%jCxV^BMFMILJIAZS*$Q#KyG5a7H&oX{eG*oFMrn`se4QIlS)qekJQQf0a8~C z!}O0WhS8_8BAyXm3F~dRXG!6DcsgY#t`c3f08)3A&Uom+da)PCeCWVS5nA|1>X;1p z%Yh-^&l|t~WUhxHUpaPYAu!~#umXmB1H-_O&%%n|88_1CVaRt34EaI}|7png=&%}a zs5AJ*Sf{}`4XA;+iZkgACkRansH$5IyTP!Z38;nS?{gliD%XScK-LDT>Q*&~0i_VAs$@xO!7#7~ zH~L3TFSPesL?;V<^bC^A4yJnx$Ug8Ti5i6ha{H@b37+)pKr8qIS_zmx{lQyY`}OPm0WBRn zv;Y8Y+wuXlApo>(OMVmFNP`E^4jw=&_(#x|{}Z%^{{q^{e+O;(e*;bOe+2El)_(`h z{Qm;l@_&G4{s7unf=$L{&d`D>zGY5Uf>|vkkL6SLXrI3wM63nL_h=uuX0(r^8qik` zZF#V##yBq=SRCN3?Imv5OjxnRbh)p~-d(4y}m|0m|1fo@CSy8;lNK&T{wt1&Xk zFdh4BDM%-$JoK<~EB?wTamvgjEiJGG@~mEdbKJZ+V-aCq<@7tThgI+k92^s#2~Wnp zfF%qRNITJ+C>RDyGLSz<8Pw(kWf4#anb4i*1bRl}D!`d9+xC&B#O|tfz zObQZ$5%!U1cn7oGBQA(GqS()O-#n|AD^O#NIp_?X-KL@}^`uxQe#f|-Axw~I$~Uk* zMV0n_v(C!_%z*9CHEN1_^?be3WdmgUwvN{2=D9~1$8#0tn?2k{^87OL-D32#tC@;) z4IQ=g?ATB(*S_Z}VP_~OyH^oQN?zVX34Hww;5M-Z<M+&0{e{c4=v# zG);96TLR^FW@{BJ^`tI&XZ{WHkp=8v|JQUq%JO@!9dq-AWL%+r`y@1BWEyeB)Btf z#91w(Vz2${D$^(X#3vrd3D2}^<0svX=hqmRT9Lo!defzH;VQjhSSEdQN+^~{a&T0y zK%Dd?U_0)zB9Bl@r?8&jbv|GBuZ&KiBeT9n)6~n~^}9rO3qgK?SD&fx;(iNpis8SG zUjwJ~oXLENFtRdUecKHceq=hkO6k*4`#T=rj1CXeu*?aC(fHV2KA7b&cMDK`WnvxM z=R!r&J#}Sx^cc!ZeP31SuA7mnSB~HDnGLu^OE_kUt*ln#@8n6W5*E8#-iq1uazI0v zyY%VOE8L54@fz8QMOs;Qr5!}y5N}i`9(cGHd1=zKC6#@)Zzw~1w>w#Id%0%(alNWc z+>c;zrafur3GnX0SUYE>ChvwgVm6)lTw`hB^PZdsT|zbTH?K(|35%F_m4)adLmcs| zkutag(lI~w&KDxWs8RcVabo#;BV(KMAAhWk>D@Y>%gwN4DqGxnx3*^PRaD}gFz)k1 zl;ZmAhgX3=MK448ay|G?a9wb*!cn<)#Yg$Fm3y-AJGSrKG`g4cT~#UTbb2a%GyYf& zlgbR`=eL>%z?>96@vnPtjjiDt-AunLlyD~;-L9BG;|8@KEb!!a$L^}85a0NCe@}G>>yD<_PcX~6vnGyI1 zIb-bmAc`y8Tln?Z){*X`_3u@fpIxa6KyBW7w8!q*qSXs@W>E6yoKN=g{HiADL!Lo> zjOsePs<;=%nf&#sN6GZ6&2Dd-n@P5BHG%@iao_t5f%viTd}Oihl-5KRACEut>@rem z8#;k6-c} z`sx$jGH3Wp9vTA4mKduAqfCTPT#HVh=#R&bS)!(%=tR4y%U(pIjW-1-hDGc>0ZAD| zW8;jS9@_|X;*x6j5Lq&5hQYCCEtw1;U@3#rNl{|F@^JYid*Ng@#u-ULyz*)-k0BM2 ztGLh$jn4WioVd^m;Zsv9Zpz;*H`adZL~lIlBXqB37HF67T!&PjN{ph__( zj9EiyKru%eKaItFBAw)Xfp}a~jQ8GZVBGifHWFWT1Tti>Nl1VJQhq?@TZEQ81->MaT~+upIkgnmYOBJ=fdH zjs+A5RS@d$&a?h!T`W<@VV{cX960b_Ys?x#k12~xBR>uh}2NNevGQOuq6hxkMN z(rR(sY~*<+_G3LciYuoY44W3HU+Jg^e2e?5*KB9g=`r36D7%`a9JtfXF)dlek-Td3&3?rBlle|x6@=~NLN}6sg`{>xsxywY}2^LJ4Q}ubZaw}C&)oO4fmy&7Z zhPW>pUZ9`Cd@{+oMPxuTQL4P0mo7_eu%=JQa*}|h69adtuqRg2k5JZo83RAHe!+Uu ztyatiZxiJl4lht7^C{)Z5bwf*DeGg#Vi`}GYcJ;+gkfqgc=2{MSY1Xz?PK8yz8?fQ zTQu!tx!|Dur?3XmJmlJ{RcHF@{tajJu2RQlzXj}oW^u+iI35KN_lf2w0Umh!6HqX8 z*UH#bb# z1I^+OY*x5nBOMU^oXVa;*^~3FC1g7nRJjlYgy?2_To@Ea1|ORcdl_%J>Sn; zGM9MO5(IPmou&M9!m8#AAT)#`X`&+(E-PuDKi8aaNqpb!BG~jr?|y$M{(XKpZ!+w( z+w5DGQP}Sex_M-OEzr~Lx^Hb1iAS~V+qxny=i<=kn_91E(ARl^or=CG1bT~8dOO^V zzkey!5u^o*lu?m7RC;~^>oz)p_9NoXN~))_#%&oyFvF#a zA{`O}NJ(`Kh3P(=njkVKwx6HnKJD2Nu<^yIB2Dc4M=V55PGmZC4YIEFX;Q4ecATe4 z?S7&za&o;cfv1!D!$Cni76E->n!QHA%2*0_6jwz~621#aA+QO*zU>xt8>gVdB44Yq zn5H+T%S=7tTrTl*qW8QeEyZIo{zSj1X*yufQ|z(bl@33wEB(Twd8%UYY_M4B2BM>y z9`gOU&T)Aj#eA1${J267G%tNe|F?wbt#h~Fr=S9_QQE_dU@{hKc4 z8xzg=zSmH}CWg>MF8zhsn(FY(jBf@TXMV2)4OiR}G7X0ID;nX-D1`pnz7=+DHt{`C zZIS$Ju6&WkC*zXm+t=pm&;@HsFd0rV30%bse@8h==tV&zM0>KccCaeh0WxA>=N`7r z$^NpUfbxW!qP*aZdh;cy+hmus!QF}I6}9jg+x^?d{Q6~l(!eRR_$Y$&vZEJlcxYeS zWxmCsjeD4{*Llk=xyob?2SX=XPb{xH-|Ux|H2)$L6sKXOk@Wh@HnZSKDkic3do?go z%6K^e@Ti=QyBo4MW+(e?AiZD#mzClyI!s8G$Lw09FFm0(DCDEwp~$H3?qrHV6a z+ADka)Nlgt;)7mv-PbDxEao**i;ufL?wHBtF;7S@8wy*+NtH-&Lj$U-O4>LhW}ebX z4mHHE!~7~-E8gF!xqpNiD zdwjSxZV`l*X4)l<=htWBbHPnfo=>((0aS*hRuhA?<$WyI-eyic3uBs5{O=Owe29J^ zh#dH;=}OG(Xn!DT#kp+13NJPylbg?7JJtFWF1fJTztYbazBh2MmhuO03f7W(21Os_ z*#_|oo2^$FIo8Iz?XQjI{QO?>cp}ucjM2IQdd6)1BG=Z6=ex?LI7C5uJ;#~MS<{V7 z%<6~-|HYN^W#6pQ9!R%s7n#YSwp?q=-s%x1ZQW#4-|Ua16$(1CkTSV4Hsb_|q;w2% zE8=qVX=ikeuDOL{Z=(psQ#bPq-SW}GFrsr>5R?QGR&4K4JrzV_vze#7Uh)RqM9&V&VJkK8JX zYgRoa=g^dp1W1)rHN&RRJ8m4%w>FhFQt11Q@qCMH@d<9{M!BXG_aaRg!G_q|gdRgg zv#Uwo;YWJVs-^rhXwhZ9jB-i#_apC1%xfqv#kbU<)P%88d%G56b+HqKWMDH$k zw+V1hnwOvHMT5MBG^4vZm*SMnvQR!~`W;}Iv6K*Y^3ms)NLd~ytC__woJ6!7u@2S6 z9|jw4QZX}sw}^}ZLr_bi1teWM!nXJX8<4$Do?kN+!V8g6_M8db8X*gv)Zw%KDWM#v zj*V222RQFDrC>2k%9uO4gQ`D3B3=iNq|b=W1gVF-7OlLKg1Fz27>dgeqRN%ki^`;t zkkEbT>YVO6Vjx5_!HAa;xZd%+>5nUtF&_ol`Oj@_Tdb!6@J|Q*MbtRe_6&9n3(TtZlx+JP zO#P|fD8KfzYhh=?x&`5>Cg%`fSBLz&CcepIh3{>l)X4wQ*m`YR^p{aowyD0DNgQHD@&HFC2o%$Gk8y^M4zIT!@0VP`CGMANz(Nf z%~ZnZ;7@rWDa$=PCKwERT35^@E9e8erIHuc)1bEk7-U-x44KJ&?y2uPhv-|*SSYqe zc~?l;D0OjeqHFBn6Y=yxVA7=7(w8?lJ+Zj?S5NTMe(`xpAUi}Q8mLlV%z7}>Bk;=3 zUMUVe#huD_W!YRcr(54vCUscU<+5^CZJIq=v8L2d+pS>7`Xsi!Ki8y)t$jp$h6Y&7l~?G^EnovDuGwzBAP+@;P0k zc0F4?_0aVa6s4PNkK(B{@m;D7eB#&kB(H9N>6KCP<~l~WkyrVvw1F4kD6uEppV}bQ z$GRi^7az#g6%6(v5YshFzaR<7#j@nF(e}kyw z*@#*j%Jq6$x0|-~(H+7rKTkiR0UK`jdV+78btd{*8sw~%P$U$u{<_`rSxP1Q>kw^h zGKfN~w*NJ|*sE7GzQ}v)L?MTQ#hixk=)_vzkCOyjbLAQ8ae)?Ei+AcZ4P0u- zI3?77y=Bl*M@Atj8w)QR z0|!MLTL)JMF9$bQUPn(i*Z-PC7)avKXwANniG(Cuj)g?@uT%d{q6wsSv2bt&+qk@N Y22%a&^uN#_{t5;7gafT{*~4%D4~6WI?f?J) literal 41892 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 HzxDqBUFuhc From eb8cd0de13ae2d67f7527616c809a6da5132866e Mon Sep 17 00:00:00 2001 From: sschuur <78623042+sschuur@users.noreply.github.com> Date: Tue, 29 Aug 2023 15:53:37 -0700 Subject: [PATCH 4/9] increment version --- .../Infoblox-HighThreatLevelQueryNotBlockedDetected.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-HighThreatLevelQueryNotBlockedDetected.yaml b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-HighThreatLevelQueryNotBlockedDetected.yaml index d269d8fff49..710ff06ab9c 100644 --- a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-HighThreatLevelQueryNotBlockedDetected.yaml +++ b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-HighThreatLevelQueryNotBlockedDetected.yaml @@ -63,5 +63,5 @@ eventGroupingSettings: aggregationKind: SingleAlert incidentConfiguration: createIncident: true -version: 1.0.0 +version: 1.0.1 kind: Scheduled From b844de103ae80c597791b285534e8c41530f4a7b Mon Sep 17 00:00:00 2001 From: sschuur <78623042+sschuur@users.noreply.github.com> Date: Tue, 29 Aug 2023 15:54:18 -0700 Subject: [PATCH 5/9] increment version --- .../Infoblox-ManyHighThreatLevelSingleQueryDetected.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-ManyHighThreatLevelSingleQueryDetected.yaml b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-ManyHighThreatLevelSingleQueryDetected.yaml index 32fb9c02afd..c56f9679f86 100644 --- a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-ManyHighThreatLevelSingleQueryDetected.yaml +++ b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-ManyHighThreatLevelSingleQueryDetected.yaml @@ -47,5 +47,5 @@ eventGroupingSettings: aggregationKind: SingleAlert incidentConfiguration: createIncident: true -version: 1.0.0 +version: 1.0.1 kind: Scheduled From c43debab1e3173fd1ce611891555017f98fb46a9 Mon Sep 17 00:00:00 2001 From: sschuur <78623042+sschuur@users.noreply.github.com> Date: Tue, 29 Aug 2023 15:54:47 -0700 Subject: [PATCH 6/9] increment version --- .../Infoblox-TI-InfobloxCDCMatchFound-LookalikeDomains.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-TI-InfobloxCDCMatchFound-LookalikeDomains.yaml b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-TI-InfobloxCDCMatchFound-LookalikeDomains.yaml index e0235bd5d8d..c49af07ada3 100644 --- a/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-TI-InfobloxCDCMatchFound-LookalikeDomains.yaml +++ b/Solutions/Infoblox Cloud Data Connector/Analytic Rules/Infoblox-TI-InfobloxCDCMatchFound-LookalikeDomains.yaml @@ -75,5 +75,5 @@ eventGroupingSettings: aggregationKind: SingleAlert incidentConfiguration: createIncident: true -version: 1.0.0 +version: 1.0.1 kind: Scheduled From 5a1e283c964e8ee3c40273d70fcd46e87769122e Mon Sep 17 00:00:00 2001 From: sschuur <78623042+sschuur@users.noreply.github.com> Date: Tue, 29 Aug 2023 23:32:16 -0700 Subject: [PATCH 7/9] data connector UI fixes --- .../Data Connectors/InfobloxCloudDataConnector.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Solutions/Infoblox Cloud Data Connector/Data Connectors/InfobloxCloudDataConnector.json b/Solutions/Infoblox Cloud Data Connector/Data Connectors/InfobloxCloudDataConnector.json index aa6effa62c0..b769a0cf022 100644 --- a/Solutions/Infoblox Cloud Data Connector/Data Connectors/InfobloxCloudDataConnector.json +++ b/Solutions/Infoblox Cloud Data Connector/Data Connectors/InfobloxCloudDataConnector.json @@ -123,7 +123,7 @@ }, { "title": "2. Configure Infoblox BloxOne to send Syslog data to the Infoblox Cloud Data Connector to forward to the Syslog agent", - "description": "Follow the steps below to configure the Infoblox CDC to send BloxOne data to Microsoft Sentinel via the Linux Syslog agent.\n2. Navigate to **Manage > Data Connector**.\n3. Click the **Destination Configuration** tab at the top.\n4. Click **Create > Syslog**. \n - **Name**: Give the new Destination a meaningful **name**, such as **Azure-Sentinel-Destination**.\n - **Description**: Optionally give it a meaningful **description**.\n - **State**: Set the state to **Enabled**.\n - **Format**: Set the format to **CEF**.\n - **FQDN/IP**: Enter the IP address of the Linux device on which the Linux agent is installed.\n - **Port**: Leave the port number at **514**.\n - **Protocol**: Select desired protocol and CA certificate if applicable.\n - Click **Save & Close**.\n5. Click the **Traffic Flow Configuration** tab at the top.\n6. Click **Create**.\n - **Name**: Give the new Traffic Flow a meaningful **name**, such as **Azure-Sentinel-Flow**.\n - **Description**: Optionally give it a meaningful **description**. \n - **State**: Set the state to **Enabled**. \n - Expand the **CDC Enabled Host** section. \n - **On-Prem Host**: Select your desired on-prem host for which the Data Connector service is enabled. \n - Expand the **Source Configuration** section. \n - **Source**: Select **BloxOne Cloud Source**. \n - Select all desired **log types** you wish to collect. Currently supported log types are:\n - Threat Defense Query/Response Log\n - Threat Defense Threat Feeds Hits Log\n - DDI Query/Response Log\n - DDI DHCP Lease Log\n - Expand the **Destination Configuration** section. \n - Select the **Destination** you just created. \n - Click **Save & Close**. \n7. Allow the configuration some time to activate." + "description": "Follow the steps below to configure the Infoblox CDC to send BloxOne data to Microsoft Sentinel via the Linux Syslog agent.\n1. Navigate to **Manage > Data Connector**.\n2. Click the **Destination Configuration** tab at the top.\n3. Click **Create > Syslog**. \n - **Name**: Give the new Destination a meaningful **name**, such as **Microsoft-Sentinel-Destination**.\n - **Description**: Optionally give it a meaningful **description**.\n - **State**: Set the state to **Enabled**.\n - **Format**: Set the format to **CEF**.\n - **FQDN/IP**: Enter the IP address of the Linux device on which the Linux agent is installed.\n - **Port**: Leave the port number at **514**.\n - **Protocol**: Select desired protocol and CA certificate if applicable.\n - Click **Save & Close**.\n4. Click the **Traffic Flow Configuration** tab at the top.\n5. Click **Create**.\n - **Name**: Give the new Traffic Flow a meaningful **name**, such as **Microsoft-Sentinel-Flow**.\n - **Description**: Optionally give it a meaningful **description**. \n - **State**: Set the state to **Enabled**. \n - Expand the **Service Instance** section. \n - **Service Instance**: Select your desired Service Instance for which the Data Connector service is enabled. \n - Expand the **Source Configuration** section. \n - **Source**: Select **BloxOne Cloud Source**. \n - Select all desired **log types** you wish to collect. Currently supported log types are:\n - Threat Defense Query/Response Log\n - Threat Defense Threat Feeds Hits Log\n - DDI Query/Response Log\n - DDI DHCP Lease Log\n - Expand the **Destination Configuration** section. \n - Select the **Destination** you just created. \n - Click **Save & Close**. \n6. Allow the configuration some time to activate." }, { "title": "3. Validate connection", From f07b8a92e13b39f637dc26b13084e73e158addc0 Mon Sep 17 00:00:00 2001 From: sschuur <78623042+sschuur@users.noreply.github.com> Date: Wed, 30 Aug 2023 00:36:07 -0700 Subject: [PATCH 8/9] package recent updates --- .../Package/3.0.0.zip | Bin 41972 -> 41995 bytes .../Package/createUiDefinition.json | 2 +- .../Package/mainTemplate.json | 10 +++++----- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Solutions/Infoblox Cloud Data Connector/Package/3.0.0.zip b/Solutions/Infoblox Cloud Data Connector/Package/3.0.0.zip index e624505e0bcd315d5eef0337e0ad21876b936fe7..c71aee844ad1a8614910a24758c314efa9fcfe0d 100644 GIT binary patch delta 37116 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 D3)6*k delta 37100 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 F000pKEdu}m diff --git a/Solutions/Infoblox Cloud Data Connector/Package/createUiDefinition.json b/Solutions/Infoblox Cloud Data Connector/Package/createUiDefinition.json index f079c552767..14cb1122605 100644 --- a/Solutions/Infoblox Cloud Data Connector/Package/createUiDefinition.json +++ b/Solutions/Infoblox Cloud Data Connector/Package/createUiDefinition.json @@ -6,7 +6,7 @@ "config": { "isWizard": false, "basics": { - "description": "\n\n _Please refer to the following before installing the solution: \r \n • Review the solution [Release Notes](https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/Infoblox%20Cloud%20Data%20Connector/ReleaseNotes.md)\r \n • There may be [known issues](https://aka.ms/sentinelsolutionsknownissues) pertaining to this Solution, please refer to them before installing._ \n\nThe [Infoblox](https://www.infoblox.com/) Cloud solution allows you to easily connect your Infoblox BloxOne data with Microsoft Sentinel. By connecting your logs to Microsoft Sentinel, you can take advantage of search & correlation, alerting, and threat intelligence enrichment for each log.\r\n \r\n **Underlying Microsoft Technologies used:** \r\n \r\n This solution takes a dependency on the following technologies, and some of these dependencies either may be in [Preview](https://azure.microsoft.com/support/legal/preview-supplemental-terms/) state or might result in additional ingestion or operational costs:\r\n \r\n a. [Agent based logs collection from Windows and Linux machines ](https://docs.microsoft.com/azure/azure-monitor/agents/data-sources-custom-logs)\n\n**Data Connectors:** 1, **Parsers:** 1, **Workbooks:** 1, **Analytic Rules:** 8, **Playbooks:** 11\n\n[Learn more about Microsoft Sentinel](https://aka.ms/azuresentinel) | [Learn more about Solutions](https://aka.ms/azuresentinelsolutionsdoc)", + "description": "\n\n _Please refer to the following before installing the solution:_ \r \n • _Review the solution [Release Notes](https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/Infoblox%20Cloud%20Data%20Connector/ReleaseNotes.md)._ \r \n • _Review the TIDE Threat Intelligence playbooks and their installation [here](https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Playbooks)._ \r \n • _There may be [known issues](https://aka.ms/sentinelsolutionsknownissues) pertaining to this Solution._ \n\nThe [Infoblox](https://www.infoblox.com/) Cloud solution allows you to easily connect your Infoblox BloxOne data with Microsoft Sentinel. By connecting your logs to Microsoft Sentinel, you can take advantage of search & correlation, alerting, and threat intelligence enrichment for each log.\r\n \r\n **Underlying Microsoft Technologies used:** \r\n \r\n This solution takes a dependency on the following technologies, and some of these dependencies either may be in [Preview](https://azure.microsoft.com/support/legal/preview-supplemental-terms/) state or might result in additional ingestion or operational costs:\r\n \r\n a. [Agent based logs collection from Windows and Linux machines ](https://docs.microsoft.com/azure/azure-monitor/agents/data-sources-custom-logs)\n\n**Data Connectors:** 1, **Parsers:** 1, **Workbooks:** 1, **Analytic Rules:** 8, **Playbooks:** 11\n\n[Learn more about Microsoft Sentinel](https://aka.ms/azuresentinel) | [Learn more about Solutions](https://aka.ms/azuresentinelsolutionsdoc)", "subscription": { "resourceProviders": [ "Microsoft.OperationsManagement/solutions", diff --git a/Solutions/Infoblox Cloud Data Connector/Package/mainTemplate.json b/Solutions/Infoblox Cloud Data Connector/Package/mainTemplate.json index 13e5b6b69dc..862fb88f735 100644 --- a/Solutions/Infoblox Cloud Data Connector/Package/mainTemplate.json +++ b/Solutions/Infoblox Cloud Data Connector/Package/mainTemplate.json @@ -57,7 +57,7 @@ "analyticRuleId1": "[resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', variables('analyticRulecontentId1'))]", "analyticRuleTemplateSpecName1": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/',concat(parameters('workspace'),'-ar-',uniquestring(variables('_analyticRulecontentId1'))))]", "_analyticRulecontentProductId1": "[concat(take(variables('_solutionId'),50),'-','ar','-', uniqueString(concat(variables('_solutionId'),'-','AnalyticsRule','-',variables('_analyticRulecontentId1'),'-', variables('analyticRuleVersion1'))))]", - "analyticRuleVersion2": "1.0.0", + "analyticRuleVersion2": "1.0.1", "analyticRulecontentId2": "dc7af829-d716-4774-9d6f-03d9aa7c27a4", "_analyticRulecontentId2": "[variables('analyticRulecontentId2')]", "analyticRuleId2": "[resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', variables('analyticRulecontentId2'))]", @@ -69,7 +69,7 @@ "analyticRuleId3": "[resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', variables('analyticRulecontentId3'))]", "analyticRuleTemplateSpecName3": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/',concat(parameters('workspace'),'-ar-',uniquestring(variables('_analyticRulecontentId3'))))]", "_analyticRulecontentProductId3": "[concat(take(variables('_solutionId'),50),'-','ar','-', uniqueString(concat(variables('_solutionId'),'-','AnalyticsRule','-',variables('_analyticRulecontentId3'),'-', variables('analyticRuleVersion3'))))]", - "analyticRuleVersion4": "1.0.0", + "analyticRuleVersion4": "1.0.1", "analyticRulecontentId4": "99278700-79ca-4b0f-b416-bf57ec699e1a", "_analyticRulecontentId4": "[variables('analyticRulecontentId4')]", "analyticRuleId4": "[resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', variables('analyticRulecontentId4'))]", @@ -87,7 +87,7 @@ "analyticRuleId6": "[resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', variables('analyticRulecontentId6'))]", "analyticRuleTemplateSpecName6": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/',concat(parameters('workspace'),'-ar-',uniquestring(variables('_analyticRulecontentId6'))))]", "_analyticRulecontentProductId6": "[concat(take(variables('_solutionId'),50),'-','ar','-', uniqueString(concat(variables('_solutionId'),'-','AnalyticsRule','-',variables('_analyticRulecontentId6'),'-', variables('analyticRuleVersion6'))))]", - "analyticRuleVersion7": "1.0.0", + "analyticRuleVersion7": "1.0.1", "analyticRulecontentId7": "568730be-b39d-45e3-a392-941e00837d52", "_analyticRulecontentId7": "[variables('analyticRulecontentId7')]", "analyticRuleId7": "[resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', variables('analyticRulecontentId7'))]", @@ -1583,7 +1583,7 @@ "title": "1. Linux Syslog agent configuration" }, { - "description": "Follow the steps below to configure the Infoblox CDC to send BloxOne data to Microsoft Sentinel via the Linux Syslog agent.\n2. Navigate to **Manage > Data Connector**.\n3. Click the **Destination Configuration** tab at the top.\n4. Click **Create > Syslog**. \n - **Name**: Give the new Destination a meaningful **name**, such as **Azure-Sentinel-Destination**.\n - **Description**: Optionally give it a meaningful **description**.\n - **State**: Set the state to **Enabled**.\n - **Format**: Set the format to **CEF**.\n - **FQDN/IP**: Enter the IP address of the Linux device on which the Linux agent is installed.\n - **Port**: Leave the port number at **514**.\n - **Protocol**: Select desired protocol and CA certificate if applicable.\n - Click **Save & Close**.\n5. Click the **Traffic Flow Configuration** tab at the top.\n6. Click **Create**.\n - **Name**: Give the new Traffic Flow a meaningful **name**, such as **Azure-Sentinel-Flow**.\n - **Description**: Optionally give it a meaningful **description**. \n - **State**: Set the state to **Enabled**. \n - Expand the **CDC Enabled Host** section. \n - **On-Prem Host**: Select your desired on-prem host for which the Data Connector service is enabled. \n - Expand the **Source Configuration** section. \n - **Source**: Select **BloxOne Cloud Source**. \n - Select all desired **log types** you wish to collect. Currently supported log types are:\n - Threat Defense Query/Response Log\n - Threat Defense Threat Feeds Hits Log\n - DDI Query/Response Log\n - DDI DHCP Lease Log\n - Expand the **Destination Configuration** section. \n - Select the **Destination** you just created. \n - Click **Save & Close**. \n7. Allow the configuration some time to activate.", + "description": "Follow the steps below to configure the Infoblox CDC to send BloxOne data to Microsoft Sentinel via the Linux Syslog agent.\n1. Navigate to **Manage > Data Connector**.\n2. Click the **Destination Configuration** tab at the top.\n3. Click **Create > Syslog**. \n - **Name**: Give the new Destination a meaningful **name**, such as **Microsoft-Sentinel-Destination**.\n - **Description**: Optionally give it a meaningful **description**.\n - **State**: Set the state to **Enabled**.\n - **Format**: Set the format to **CEF**.\n - **FQDN/IP**: Enter the IP address of the Linux device on which the Linux agent is installed.\n - **Port**: Leave the port number at **514**.\n - **Protocol**: Select desired protocol and CA certificate if applicable.\n - Click **Save & Close**.\n4. Click the **Traffic Flow Configuration** tab at the top.\n5. Click **Create**.\n - **Name**: Give the new Traffic Flow a meaningful **name**, such as **Microsoft-Sentinel-Flow**.\n - **Description**: Optionally give it a meaningful **description**. \n - **State**: Set the state to **Enabled**. \n - Expand the **Service Instance** section. \n - **Service Instance**: Select your desired Service Instance for which the Data Connector service is enabled. \n - Expand the **Source Configuration** section. \n - **Source**: Select **BloxOne Cloud Source**. \n - Select all desired **log types** you wish to collect. Currently supported log types are:\n - Threat Defense Query/Response Log\n - Threat Defense Threat Feeds Hits Log\n - DDI Query/Response Log\n - DDI DHCP Lease Log\n - Expand the **Destination Configuration** section. \n - Select the **Destination** you just created. \n - Click **Save & Close**. \n6. Allow the configuration some time to activate.", "title": "2. Configure Infoblox BloxOne to send Syslog data to the Infoblox Cloud Data Connector to forward to the Syslog agent" }, { @@ -1804,7 +1804,7 @@ "title": "1. Linux Syslog agent configuration" }, { - "description": "Follow the steps below to configure the Infoblox CDC to send BloxOne data to Microsoft Sentinel via the Linux Syslog agent.\n2. Navigate to **Manage > Data Connector**.\n3. Click the **Destination Configuration** tab at the top.\n4. Click **Create > Syslog**. \n - **Name**: Give the new Destination a meaningful **name**, such as **Azure-Sentinel-Destination**.\n - **Description**: Optionally give it a meaningful **description**.\n - **State**: Set the state to **Enabled**.\n - **Format**: Set the format to **CEF**.\n - **FQDN/IP**: Enter the IP address of the Linux device on which the Linux agent is installed.\n - **Port**: Leave the port number at **514**.\n - **Protocol**: Select desired protocol and CA certificate if applicable.\n - Click **Save & Close**.\n5. Click the **Traffic Flow Configuration** tab at the top.\n6. Click **Create**.\n - **Name**: Give the new Traffic Flow a meaningful **name**, such as **Azure-Sentinel-Flow**.\n - **Description**: Optionally give it a meaningful **description**. \n - **State**: Set the state to **Enabled**. \n - Expand the **CDC Enabled Host** section. \n - **On-Prem Host**: Select your desired on-prem host for which the Data Connector service is enabled. \n - Expand the **Source Configuration** section. \n - **Source**: Select **BloxOne Cloud Source**. \n - Select all desired **log types** you wish to collect. Currently supported log types are:\n - Threat Defense Query/Response Log\n - Threat Defense Threat Feeds Hits Log\n - DDI Query/Response Log\n - DDI DHCP Lease Log\n - Expand the **Destination Configuration** section. \n - Select the **Destination** you just created. \n - Click **Save & Close**. \n7. Allow the configuration some time to activate.", + "description": "Follow the steps below to configure the Infoblox CDC to send BloxOne data to Microsoft Sentinel via the Linux Syslog agent.\n1. Navigate to **Manage > Data Connector**.\n2. Click the **Destination Configuration** tab at the top.\n3. Click **Create > Syslog**. \n - **Name**: Give the new Destination a meaningful **name**, such as **Microsoft-Sentinel-Destination**.\n - **Description**: Optionally give it a meaningful **description**.\n - **State**: Set the state to **Enabled**.\n - **Format**: Set the format to **CEF**.\n - **FQDN/IP**: Enter the IP address of the Linux device on which the Linux agent is installed.\n - **Port**: Leave the port number at **514**.\n - **Protocol**: Select desired protocol and CA certificate if applicable.\n - Click **Save & Close**.\n4. Click the **Traffic Flow Configuration** tab at the top.\n5. Click **Create**.\n - **Name**: Give the new Traffic Flow a meaningful **name**, such as **Microsoft-Sentinel-Flow**.\n - **Description**: Optionally give it a meaningful **description**. \n - **State**: Set the state to **Enabled**. \n - Expand the **Service Instance** section. \n - **Service Instance**: Select your desired Service Instance for which the Data Connector service is enabled. \n - Expand the **Source Configuration** section. \n - **Source**: Select **BloxOne Cloud Source**. \n - Select all desired **log types** you wish to collect. Currently supported log types are:\n - Threat Defense Query/Response Log\n - Threat Defense Threat Feeds Hits Log\n - DDI Query/Response Log\n - DDI DHCP Lease Log\n - Expand the **Destination Configuration** section. \n - Select the **Destination** you just created. \n - Click **Save & Close**. \n6. Allow the configuration some time to activate.", "title": "2. Configure Infoblox BloxOne to send Syslog data to the Infoblox Cloud Data Connector to forward to the Syslog agent" }, { From eef7ee4b007967bf857facbe1f99b5103bdb5caa Mon Sep 17 00:00:00 2001 From: PrasadBoke Date: Fri, 1 Sep 2023 15:05:37 +0530 Subject: [PATCH 9/9] Create ui updated --- .../Package/3.0.0.zip | Bin 41995 -> 42006 bytes .../Package/createUiDefinition.json | 542 +++++++++--------- 2 files changed, 271 insertions(+), 271 deletions(-) diff --git a/Solutions/Infoblox Cloud Data Connector/Package/3.0.0.zip b/Solutions/Infoblox Cloud Data Connector/Package/3.0.0.zip index c71aee844ad1a8614910a24758c314efa9fcfe0d..f354f27d0c5041fb05a48beecdfc9c5ffbf204cf 100644 GIT binary patch delta 3277 zcmV;;3^MbJ$O4wg0vk|E0|XQR000O8rFbD%!lUi`J`4Z=hB^QM7n7W$8h`Cu>vG$; z75?9uz5_uI=5lV`nlD35lpdf(w9FwA;+|S^8*wlAZ$) zyhx;Dd!u-_TmO(n5SMfL&JBPF`RVt+BkEB84%g+`t-F$U2AvEw7Tkb2D1xtt04?yZ2wKwm8`dSuBX6T|#peUZI`$C&X& zY|7`aFVc&YJb3U@8usYH19B`F)r=@MXNnj}Ow7n!3L%#~U62`@OT`FJwV^^_3%=J< z{D=Z>?vvRaE8m1gswm{x_kQDxouHnt*vnXmZuKGn9KNIiwhXMoOn}Rk;UPK6 z1+&c$?LcqZw&NbIa()EZOi6;ymd<2uTA;mQ;g%V1<^%FivN=oXbFLp;`Unu*pf_v; zFrClp5v&p2;5AHQC3mdk6^~pLJ#Y3Q^+^571AjojD3gP6xqfr)uAx*MrWygK$4d~p z&M0UOfLc&6wkB<5e(ijXNvuMy?G6!_hqmt=JzTHZ^-cZpeN%)&hO|R`ka-nF&;~L#5yf-RuPFFpYU#lgm1gZv~W-gUNqK47{&W|RqO9q=%npMV{ z$zf>(!9*pKjDsy3CB^zUDa9E_zIxUz&$+;)kjz$zpIfsbzpD%2ps``SZ3lsMnf`9D~0_1Zr+#S5>tt;RM2;Qb0MzO@SwD;`E z**c0L#Wk^A7pMRL_3I`L%kgNqQ?s6%8r(ND|FGQ7d=Z!``h_*N8y>nPb z|1O-ZB?)WYW`aiSj2lba2l_IXWVOW6%>dC(;~u1E?@UW9>$IXX=nu(wc-b;YW-cJEw8jxch$=x}JN{ z%%g+ex)k3x8`cB#O|?FTYzSfT>mfb^UBEZ-3_jJ@jh3key|q zuY1PD^rLzSxFPKgd2cG9{#dI7ZkF)0lpf6lrmX|ya7RU-^%Marc1RDv4f%ZYp!8&D zd!5xzFN1=-IdUq~W&yDlahrjyi`Kh@w35nuacK2znbM-Hg zjqTx0_!+}$E))_o5P`Nri`{3x={$XTO8%NNwHlxJIELyx zS8iB!#lJ~Mhkv`rzm6q8Lj3EZ^)B(Rr1F;&|C%QeohKo%^;!vY5@tW?0U$I=~>z$i>u>_!ko zmJ|dxD}MwBnW$nBS5|tzKG=P>J=j4ETy&p$a33+y>xxMlEte$U`5c-@3u1ho|)%b_nK zv<_0NuyoD+DYl?0!hK_V8Od%o{`!FS#g>8g@_%pBS1%@qFKvB(QgXg!fPHb#0Q2lM z5riVBl#d5zsZ2-qOxbQeSn$;$*5&>FH+|lh+k@iSA$)8eF20~9jLB1wOJwmXmQ=BW zw%qe$fbz?G2IVII{eve@2NmDr^4s*;gd|otb1NKw09(};9XD?8iaPQ_Mtr_%910DK z^MAeCJ zxj@H~MAe<_wu20u_rU$ii#*R~AMsqH!p3jtT*LXks65#4LfH1vMq`(2 z^IvOsO=WJfeEl|Wb=P@R`+Y#~e9o0N{X1Uj1rYXs#>L(t`yr=7`w`eU^vf@+mDg?n z+grSzhqW8Ly#{aop}*Ftx^<1cT2`#Clo#@~|KQ`lP)h>@6aWAK2mnBLA+vQ12$v3} zcp+E9qwV`X3;+OzI+Kf|Hy=QEAy;~27q8lu003a52>=lQ0000000031AOHXWbCcnt LBnEt=00000=;<%k delta 3237 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\n\n _Please refer to the following before installing the solution:_ \r \n • _Review the solution [Release Notes](https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/Infoblox%20Cloud%20Data%20Connector/ReleaseNotes.md)._ \r \n • _Review the TIDE Threat Intelligence playbooks and their installation [here](https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Playbooks)._ \r \n • _There may be [known issues](https://aka.ms/sentinelsolutionsknownissues) pertaining to this Solution._ \n\nThe [Infoblox](https://www.infoblox.com/) Cloud solution allows you to easily connect your Infoblox BloxOne data with Microsoft Sentinel. By connecting your logs to Microsoft Sentinel, you can take advantage of search & correlation, alerting, and threat intelligence enrichment for each log.\r\n \r\n **Underlying Microsoft Technologies used:** \r\n \r\n This solution takes a dependency on the following technologies, and some of these dependencies either may be in [Preview](https://azure.microsoft.com/support/legal/preview-supplemental-terms/) state or might result in additional ingestion or operational costs:\r\n \r\n a. [Agent based logs collection from Windows and Linux machines ](https://docs.microsoft.com/azure/azure-monitor/agents/data-sources-custom-logs)\n\n**Data Connectors:** 1, **Parsers:** 1, **Workbooks:** 1, **Analytic Rules:** 8, **Playbooks:** 11\n\n[Learn more about Microsoft Sentinel](https://aka.ms/azuresentinel) | [Learn more about Solutions](https://aka.ms/azuresentinelsolutionsdoc)", - "subscription": { - "resourceProviders": [ - "Microsoft.OperationsManagement/solutions", - "Microsoft.OperationalInsights/workspaces/providers/alertRules", - "Microsoft.Insights/workbooks", - "Microsoft.Logic/workflows" - ] - }, - "location": { - "metadata": { - "hidden": "Hiding location, we get it from the log analytics workspace" + { + "$schema": "https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json#", + "handler": "Microsoft.Azure.CreateUIDef", + "version": "0.1.2-preview", + "parameters": { + "config": { + "isWizard": false, + "basics": { + "description": "\n\n **Note:** Please refer to the following before installing the solution: \r \n • Review the solution [Release Notes](https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/Infoblox%20Cloud%20Data%20Connector/ReleaseNotes.md). \r \n • Review the TIDE Threat Intelligence playbooks and their installation [here](https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/Infoblox%20Cloud%20Data%20Connector/Playbooks). \r \n • There may be [known issues](https://aka.ms/sentinelsolutionsknownissues) pertaining to this Solution. \n\nThe [Infoblox](https://www.infoblox.com/) Cloud solution allows you to easily connect your Infoblox BloxOne data with Microsoft Sentinel. By connecting your logs to Microsoft Sentinel, you can take advantage of search & correlation, alerting, and threat intelligence enrichment for each log.\r\n \r\n **Underlying Microsoft Technologies used:** \r\n \r\n This solution takes a dependency on the following technologies, and some of these dependencies either may be in [Preview](https://azure.microsoft.com/support/legal/preview-supplemental-terms/) state or might result in additional ingestion or operational costs:\r\n \r\n a. [Agent based logs collection from Windows and Linux machines ](https://docs.microsoft.com/azure/azure-monitor/agents/data-sources-custom-logs)\n\n**Data Connectors:** 1, **Parsers:** 1, **Workbooks:** 1, **Analytic Rules:** 8, **Playbooks:** 11\n\n[Learn more about Microsoft Sentinel](https://aka.ms/azuresentinel) | [Learn more about Solutions](https://aka.ms/azuresentinelsolutionsdoc)", + "subscription": { + "resourceProviders": [ + "Microsoft.OperationsManagement/solutions", + "Microsoft.OperationalInsights/workspaces/providers/alertRules", + "Microsoft.Insights/workbooks", + "Microsoft.Logic/workflows" + ] }, - "visible": false - }, - "resourceGroup": { - "allowExisting": true - } - } - }, - "basics": [ - { - "name": "getLAWorkspace", - "type": "Microsoft.Solutions.ArmApiControl", - "toolTip": "This filters by workspaces that exist in the Resource Group selected", - "condition": "[greater(length(resourceGroup().name),0)]", - "request": { - "method": "GET", - "path": "[concat(subscription().id,'/providers/Microsoft.OperationalInsights/workspaces?api-version=2020-08-01')]" + "location": { + "metadata": { + "hidden": "Hiding location, we get it from the log analytics workspace" + }, + "visible": false + }, + "resourceGroup": { + "allowExisting": true + } } }, - { - "name": "workspace", - "type": "Microsoft.Common.DropDown", - "label": "Workspace", - "placeholder": "Select a workspace", - "toolTip": "This dropdown will list only workspace that exists in the Resource Group selected", - "constraints": { - "allowedValues": "[map(filter(basics('getLAWorkspace').value, (filter) => contains(toLower(filter.id), toLower(resourceGroup().name))), (item) => parse(concat('{\"label\":\"', item.name, '\",\"value\":\"', item.name, '\"}')))]", - "required": true + "basics": [ + { + "name": "getLAWorkspace", + "type": "Microsoft.Solutions.ArmApiControl", + "toolTip": "This filters by workspaces that exist in the Resource Group selected", + "condition": "[greater(length(resourceGroup().name),0)]", + "request": { + "method": "GET", + "path": "[concat(subscription().id,'/providers/Microsoft.OperationalInsights/workspaces?api-version=2020-08-01')]" + } }, - "visible": true - } - ], - "steps": [ - { - "name": "dataconnectors", - "label": "Data Connectors", - "bladeTitle": "Data Connectors", - "elements": [ - { - "name": "dataconnectors1-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "This Solution installs the data connector for Infoblox Cloud Data Connector. You can get Infoblox Cloud Data Connector CommonSecurityLog data in your Microsoft Sentinel workspace. After installing the solution, configure and enable this data connector by following guidance in Manage solution view." - } - }, - { - "name": "dataconnectors-parser-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "The Solution installs a parser that transforms the ingested data into Microsoft Sentinel normalized format. The normalized format enables better correlation of different types of data from different data sources to drive end-to-end outcomes seamlessly in security monitoring, hunting, incident investigation and response scenarios in Microsoft Sentinel." - } + { + "name": "workspace", + "type": "Microsoft.Common.DropDown", + "label": "Workspace", + "placeholder": "Select a workspace", + "toolTip": "This dropdown will list only workspace that exists in the Resource Group selected", + "constraints": { + "allowedValues": "[map(filter(basics('getLAWorkspace').value, (filter) => contains(toLower(filter.id), toLower(resourceGroup().name))), (item) => parse(concat('{\"label\":\"', item.name, '\",\"value\":\"', item.name, '\"}')))]", + "required": true }, - { - "name": "dataconnectors-link2", - "type": "Microsoft.Common.TextBlock", - "options": { - "link": { - "label": "Learn more about connecting data sources", - "uri": "https://docs.microsoft.com/azure/sentinel/connect-data-sources" + "visible": true + } + ], + "steps": [ + { + "name": "dataconnectors", + "label": "Data Connectors", + "bladeTitle": "Data Connectors", + "elements": [ + { + "name": "dataconnectors1-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "This Solution installs the data connector for Infoblox Cloud Data Connector. You can get Infoblox Cloud Data Connector CommonSecurityLog data in your Microsoft Sentinel workspace. After installing the solution, configure and enable this data connector by following guidance in Manage solution view." + } + }, + { + "name": "dataconnectors-parser-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "The Solution installs a parser that transforms the ingested data into Microsoft Sentinel normalized format. The normalized format enables better correlation of different types of data from different data sources to drive end-to-end outcomes seamlessly in security monitoring, hunting, incident investigation and response scenarios in Microsoft Sentinel." + } + }, + { + "name": "dataconnectors-link2", + "type": "Microsoft.Common.TextBlock", + "options": { + "link": { + "label": "Learn more about connecting data sources", + "uri": "https://docs.microsoft.com/azure/sentinel/connect-data-sources" + } } } - } - ] - }, - { - "name": "workbooks", - "label": "Workbooks", - "subLabel": { - "preValidation": "Configure the workbooks", - "postValidation": "Done" + ] }, - "bladeTitle": "Workbooks", - "elements": [ - { - "name": "workbooks-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "This solution installs workbook(s) to help you gain insights into the telemetry collected in Microsoft Sentinel. After installing the solution, start using the workbook in Manage solution view." - } + { + "name": "workbooks", + "label": "Workbooks", + "subLabel": { + "preValidation": "Configure the workbooks", + "postValidation": "Done" }, - { - "name": "workbooks-link", - "type": "Microsoft.Common.TextBlock", - "options": { - "link": { - "label": "Learn more", - "uri": "https://docs.microsoft.com/azure/sentinel/tutorial-monitor-your-data" + "bladeTitle": "Workbooks", + "elements": [ + { + "name": "workbooks-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "This solution installs workbook(s) to help you gain insights into the telemetry collected in Microsoft Sentinel. After installing the solution, start using the workbook in Manage solution view." } - } - }, - { - "name": "workbook1", - "type": "Microsoft.Common.Section", - "label": "Infoblox Cloud Data Connector Workbook", - "elements": [ - { - "name": "workbook1-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "Get a closer look at your BloxOne DNS Query/Response logs, DHCP logs and Threat Defense security event data. This workbook is intended to help visualize BloxOne query data as part of the Infoblox Cloud solution. Drilldown your data and visualize events, trends, and anomalous changes over time." + }, + { + "name": "workbooks-link", + "type": "Microsoft.Common.TextBlock", + "options": { + "link": { + "label": "Learn more", + "uri": "https://docs.microsoft.com/azure/sentinel/tutorial-monitor-your-data" } } - ] - } - ] - }, - { - "name": "analytics", - "label": "Analytics", - "subLabel": { - "preValidation": "Configure the analytics", - "postValidation": "Done" - }, - "bladeTitle": "Analytics", - "elements": [ - { - "name": "analytics-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "This solution installs the following analytic rule templates. After installing the solution, create and enable analytic rules in Manage solution view." + }, + { + "name": "workbook1", + "type": "Microsoft.Common.Section", + "label": "Infoblox Cloud Data Connector Workbook", + "elements": [ + { + "name": "workbook1-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "Get a closer look at your BloxOne DNS Query/Response logs, DHCP logs and Threat Defense security event data. This workbook is intended to help visualize BloxOne query data as part of the Infoblox Cloud solution. Drilldown your data and visualize events, trends, and anomalous changes over time." + } + } + ] } + ] + }, + { + "name": "analytics", + "label": "Analytics", + "subLabel": { + "preValidation": "Configure the analytics", + "postValidation": "Done" }, - { - "name": "analytics-link", - "type": "Microsoft.Common.TextBlock", - "options": { - "link": { - "label": "Learn more", - "uri": "https://docs.microsoft.com/azure/sentinel/tutorial-detect-threats-custom?WT.mc_id=Portal-Microsoft_Azure_CreateUIDef" + "bladeTitle": "Analytics", + "elements": [ + { + "name": "analytics-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "This solution installs the following analytic rule templates. After installing the solution, create and enable analytic rules in Manage solution view." } - } - }, - { - "name": "analytic1", - "type": "Microsoft.Common.Section", - "label": "Infoblox - Data Exfiltration Attack", - "elements": [ - { - "name": "analytic1-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "Data exfiltration attack detected by Infoblox Threat Insight. Customize query count, scheduling, responses and more." + }, + { + "name": "analytics-link", + "type": "Microsoft.Common.TextBlock", + "options": { + "link": { + "label": "Learn more", + "uri": "https://docs.microsoft.com/azure/sentinel/tutorial-detect-threats-custom?WT.mc_id=Portal-Microsoft_Azure_CreateUIDef" } } - ] - }, - { - "name": "analytic2", - "type": "Microsoft.Common.Section", - "label": "Infoblox - High Threat Level Query Not Blocked Detected", - "elements": [ - { - "name": "analytic2-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "At least 1 high threat level query generated by single host in 1 hour that is not blocked or redirected. Customize query count, scheduling, responses and more." + }, + { + "name": "analytic1", + "type": "Microsoft.Common.Section", + "label": "Infoblox - Data Exfiltration Attack", + "elements": [ + { + "name": "analytic1-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "Data exfiltration attack detected by Infoblox Threat Insight. Customize query count, scheduling, responses and more." + } } - } - ] - }, - { - "name": "analytic3", - "type": "Microsoft.Common.Section", - "label": "Infoblox - Many High Threat Level Queries From Single Host Detected", - "elements": [ - { - "name": "analytic3-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "At least 200 high threat level queries generated by single host in 1 hour. Queries do not need to be the same. Customize query count, scheduling, responses and more." + ] + }, + { + "name": "analytic2", + "type": "Microsoft.Common.Section", + "label": "Infoblox - High Threat Level Query Not Blocked Detected", + "elements": [ + { + "name": "analytic2-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "At least 1 high threat level query generated by single host in 1 hour that is not blocked or redirected. Customize query count, scheduling, responses and more." + } } - } - ] - }, - { - "name": "analytic4", - "type": "Microsoft.Common.Section", - "label": "Infoblox - Many High Threat Level Single Query Detected", - "elements": [ - { - "name": "analytic4-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "Single high threat level domain queried at least 200 times in 1 hour regardless of source. Customize query count, scheduling, responses and more." + ] + }, + { + "name": "analytic3", + "type": "Microsoft.Common.Section", + "label": "Infoblox - Many High Threat Level Queries From Single Host Detected", + "elements": [ + { + "name": "analytic3-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "At least 200 high threat level queries generated by single host in 1 hour. Queries do not need to be the same. Customize query count, scheduling, responses and more." + } } - } - ] - }, - { - "name": "analytic5", - "type": "Microsoft.Common.Section", - "label": "Infoblox - Many NXDOMAIN DNS Responses Detected", - "elements": [ - { - "name": "analytic5-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "Detected at least 200 DNS responses for non-existent domains in 1 hour generated by single host. Queries do not need to be the same. Customize query count, scheduling, responses and more." + ] + }, + { + "name": "analytic4", + "type": "Microsoft.Common.Section", + "label": "Infoblox - Many High Threat Level Single Query Detected", + "elements": [ + { + "name": "analytic4-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "Single high threat level domain queried at least 200 times in 1 hour regardless of source. Customize query count, scheduling, responses and more." + } } - } - ] - }, - { - "name": "analytic6", - "type": "Microsoft.Common.Section", - "label": "Infoblox - TI - CommonSecurityLog Match Found - MalwareC2", - "elements": [ - { - "name": "analytic6-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "CommonSecurityLog (CEF) MalwareC2/MalwareC2DGA match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired." + ] + }, + { + "name": "analytic5", + "type": "Microsoft.Common.Section", + "label": "Infoblox - Many NXDOMAIN DNS Responses Detected", + "elements": [ + { + "name": "analytic5-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "Detected at least 200 DNS responses for non-existent domains in 1 hour generated by single host. Queries do not need to be the same. Customize query count, scheduling, responses and more." + } } - } - ] - }, - { - "name": "analytic7", - "type": "Microsoft.Common.Section", - "label": "Infoblox - TI - InfobloxCDC Match Found - Lookalike Domains", - "elements": [ - { - "name": "analytic7-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "InfobloxCDC Lookalike Domain match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired." + ] + }, + { + "name": "analytic6", + "type": "Microsoft.Common.Section", + "label": "Infoblox - TI - CommonSecurityLog Match Found - MalwareC2", + "elements": [ + { + "name": "analytic6-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "CommonSecurityLog (CEF) MalwareC2/MalwareC2DGA match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired." + } } - } - ] - }, - { - "name": "analytic8", - "type": "Microsoft.Common.Section", - "label": "Infoblox - TI - Syslog Match Found - URL", - "elements": [ - { - "name": "analytic8-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "Syslog URL match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired." + ] + }, + { + "name": "analytic7", + "type": "Microsoft.Common.Section", + "label": "Infoblox - TI - InfobloxCDC Match Found - Lookalike Domains", + "elements": [ + { + "name": "analytic7-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "InfobloxCDC Lookalike Domain match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired." + } } - } - ] - } - ] - }, - { - "name": "playbooks", - "label": "Playbooks", - "subLabel": { - "preValidation": "Configure the playbooks", - "postValidation": "Done" - }, - "bladeTitle": "Playbooks", - "elements": [ - { - "name": "playbooks-text", - "type": "Microsoft.Common.TextBlock", - "options": { - "text": "This solution installs the Playbook templates to help implement your Security Orchestration, Automation and Response (SOAR) operations. After installing the solution, these will be deployed under Playbook Templates in the Automation blade in Microsoft Sentinel. They can be configured and managed from the Manage solution view in Content Hub." + ] + }, + { + "name": "analytic8", + "type": "Microsoft.Common.Section", + "label": "Infoblox - TI - Syslog Match Found - URL", + "elements": [ + { + "name": "analytic8-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "Syslog URL match found in your Infoblox TIDE Threat Intelligence. Customize query count, scheduling, responses and more. Modify data sources, types and threat properties as desired." + } + } + ] } + ] + }, + { + "name": "playbooks", + "label": "Playbooks", + "subLabel": { + "preValidation": "Configure the playbooks", + "postValidation": "Done" }, - { - "name": "playbooks-link", - "type": "Microsoft.Common.TextBlock", - "options": { - "link": { - "label": "Learn more", - "uri": "https://docs.microsoft.com/azure/sentinel/tutorial-respond-threats-playbook?WT.mc_id=Portal-Microsoft_Azure_CreateUIDef" + "bladeTitle": "Playbooks", + "elements": [ + { + "name": "playbooks-text", + "type": "Microsoft.Common.TextBlock", + "options": { + "text": "This solution installs the Playbook templates to help implement your Security Orchestration, Automation and Response (SOAR) operations. After installing the solution, these will be deployed under Playbook Templates in the Automation blade in Microsoft Sentinel. They can be configured and managed from the Manage solution view in Content Hub." + } + }, + { + "name": "playbooks-link", + "type": "Microsoft.Common.TextBlock", + "options": { + "link": { + "label": "Learn more", + "uri": "https://docs.microsoft.com/azure/sentinel/tutorial-respond-threats-playbook?WT.mc_id=Portal-Microsoft_Azure_CreateUIDef" + } } } - } - ] + ] + } + ], + "outputs": { + "workspace-location": "[first(map(filter(basics('getLAWorkspace').value, (filter) => and(contains(toLower(filter.id), toLower(resourceGroup().name)),equals(filter.name,basics('workspace')))), (item) => item.location))]", + "location": "[location()]", + "workspace": "[basics('workspace')]" } - ], - "outputs": { - "workspace-location": "[first(map(filter(basics('getLAWorkspace').value, (filter) => and(contains(toLower(filter.id), toLower(resourceGroup().name)),equals(filter.name,basics('workspace')))), (item) => item.location))]", - "location": "[location()]", - "workspace": "[basics('workspace')]" } } -}