Microsoft Sentinel Analytic Rules
cloudbrothers.infoAzure Sentinel RepoToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage

CYFIRMA - High severity Trojan Network Indicators - Monitor Recommended Rule

Back
Id89fd02b8-3c21-492c-a8de-b3e728d39119
RulenameCYFIRMA - High severity Trojan Network Indicators - Monitor Recommended Rule
Description“This analytics rule detects network-based indicators flagged by CYFIRMA threat intelligence as associated with Command & Control (C2) infrastructure.

These indicators may represent attacker-controlled endpoints used for persistence, data exfiltration, or command delivery to compromised systems.”
SeverityHigh
TacticsImpact
Persistence
DefenseEvasion
CredentialAccess
CommandAndControl
Execution
InitialAccess
TechniquesT1496
T1053
T1555
T1090
T1071
T1204
T1189
T1053.005
T1555.003
T1071.001
T1204.001
Required data connectorsCyfirmaCyberIntelligenceDC
KindScheduled
Query frequency5m
Query period5m
Trigger threshold0
Trigger operatorGreaterThan
Source Urihttps://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Cyfirma Cyber Intelligence/Analytic Rules/TrojanNetworkIndicatorsMonitorHighSeverityRule.yaml
Version1.0.1
Arm template89fd02b8-3c21-492c-a8de-b3e728d39119.json
Deploy To Azure
//Trojan Network Indicators - Monitor Recommended 
let timeFrame= 5m;
CyfirmaIndicators_CL 
| where ConfidenceScore >= 80
    and TimeGenerated between (ago(timeFrame) .. now())
    and pattern !contains 'file:hashes' and RecommendedActions has 'Monitor' and Roles has 'Trojan'
| extend IPv4 = extract(@"ipv4-addr:value\s*=\s*'([^']+)'", 1, pattern)
| extend IPv6 = extract(@"ipv6-addr:value\s*=\s*'([^']+)'", 1, pattern)
| extend URL = extract(@"url:value\s*=\s*'([^']+)'", 1, pattern)
| extend Domain = extract(@"domain-name:value\s*=\s*'([^']+)'", 1, pattern)
| extend parsed = parse_json(extensions)
| extend extensionKeys = bag_keys(parsed)
| mv-expand extensionKeys
| extend extensionKeyStr = tostring(extensionKeys)
| extend ext = parsed[extensionKeyStr]
| extend props = ext.properties
| extend 
    extension_id = extensionKeyStr,
    ASN_Owner = props.asn_owner,
    ASN = props.asn,
    ProviderName = 'CYFIRMA',
    ProductName = 'DeCYFIR/DeTCT'
| project
    IPv4,
    IPv6,
    URL,
    Domain,
    ThreatActors,
    RecommendedActions,
    Sources,
    Roles,
    Country,
    IPAbuse,
    name,
    Description,
    ConfidenceScore,
    IndicatorID,
    created,
    modified,
    valid_from,
    Tags,
    ThreatType,
    TimeGenerated,
    SecurityVendors,
    ProductName,
    ProviderName
description: |
  "This analytics rule detects network-based indicators flagged by CYFIRMA threat intelligence as associated with Command & Control (C2) infrastructure. 
  These indicators may represent attacker-controlled endpoints used for persistence, data exfiltration, or command delivery to compromised systems."  
enabled: false
severity: High
triggerThreshold: 0
queryFrequency: 5m
tactics:
- Impact
- Persistence
- DefenseEvasion
- CredentialAccess
- CommandAndControl
- Execution
- InitialAccess
alertDetailsOverride:
  alertDescriptionFormat: '{{Description}} - {{name}} '
  alertDisplayNameFormat: 'High-Confidence Trojan Network Indicators - Monitor Recommended Rule - {{name}} '
  alertDynamicProperties:
  - alertProperty: ProductName
    value: ProductName
  - alertProperty: ProviderName
    value: ProviderName
version: 1.0.1
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Cyfirma Cyber Intelligence/Analytic Rules/TrojanNetworkIndicatorsMonitorHighSeverityRule.yaml
query: |
  //Trojan Network Indicators - Monitor Recommended 
  let timeFrame= 5m;
  CyfirmaIndicators_CL 
  | where ConfidenceScore >= 80
      and TimeGenerated between (ago(timeFrame) .. now())
      and pattern !contains 'file:hashes' and RecommendedActions has 'Monitor' and Roles has 'Trojan'
  | extend IPv4 = extract(@"ipv4-addr:value\s*=\s*'([^']+)'", 1, pattern)
  | extend IPv6 = extract(@"ipv6-addr:value\s*=\s*'([^']+)'", 1, pattern)
  | extend URL = extract(@"url:value\s*=\s*'([^']+)'", 1, pattern)
  | extend Domain = extract(@"domain-name:value\s*=\s*'([^']+)'", 1, pattern)
  | extend parsed = parse_json(extensions)
  | extend extensionKeys = bag_keys(parsed)
  | mv-expand extensionKeys
  | extend extensionKeyStr = tostring(extensionKeys)
  | extend ext = parsed[extensionKeyStr]
  | extend props = ext.properties
  | extend 
      extension_id = extensionKeyStr,
      ASN_Owner = props.asn_owner,
      ASN = props.asn,
      ProviderName = 'CYFIRMA',
      ProductName = 'DeCYFIR/DeTCT'
  | project
      IPv4,
      IPv6,
      URL,
      Domain,
      ThreatActors,
      RecommendedActions,
      Sources,
      Roles,
      Country,
      IPAbuse,
      name,
      Description,
      ConfidenceScore,
      IndicatorID,
      created,
      modified,
      valid_from,
      Tags,
      ThreatType,
      TimeGenerated,
      SecurityVendors,
      ProductName,
      ProviderName  
suppressionDuration: 5m
queryPeriod: 5m
triggerOperator: GreaterThan
name: CYFIRMA - High severity Trojan Network Indicators - Monitor Recommended Rule
requiredDataConnectors:
- connectorId: CyfirmaCyberIntelligenceDC
  dataTypes:
  - CyfirmaIndicators_CL
relevantTechniques:
- T1496
- T1053
- T1555
- T1090
- T1071
- T1204
- T1189
- T1053.005
- T1555.003
- T1071.001
- T1204.001
suppressionEnabled: true
customDetails:
  ValidFrom: valid_from
  Country: Country
  IndicatorID: IndicatorID
  Tags: Tags
  Roles: Roles
  IPAbuse: IPAbuse
  RecommendedActions: RecommendedActions
  Sources: Sources
  Modified: modified
  ThreatType: ThreatType
  ThreatActors: ThreatActors
  SecurityVendors: SecurityVendors
  Description: Description
  ConfidenceScore: ConfidenceScore
  Created: created
  TimeGenerated: TimeGenerated
eventGroupingSettings:
  aggregationKind: AlertPerResult
kind: Scheduled
incidentConfiguration:
  createIncident: true
  groupingConfiguration:
    lookbackDuration: PT5H
    reopenClosedIncident: false
    enabled: false
    matchingMethod: AllEntities
entityMappings:
- entityType: IP
  fieldMappings:
  - identifier: Address
    columnName: IPv4
- entityType: IP
  fieldMappings:
  - identifier: Address
    columnName: IPv6
- entityType: DNS
  fieldMappings:
  - identifier: DomainName
    columnName: Domain
- entityType: URL
  fieldMappings:
  - identifier: Url
    columnName: URL
id: 89fd02b8-3c21-492c-a8de-b3e728d39119