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

CYFIRMA - Medium severity Trojan File Hash Indicators with Block Action Rule

Back
Id25686f44-5f5f-4388-95e2-eea244481438
RulenameCYFIRMA - Medium severity Trojan File Hash Indicators with Block Action Rule
Description“This KQL query extracts file hash indicators associated with Trojan activity from the CyfirmaIndicators_CL table.

It specifically targets indicators containing file hashes linked to Trojan behavior and retrieves MD5, SHA1, and SHA256 values.

The query also includes contextual threat intelligence such as threat actors, tags, sources, and geolocation information.”
SeverityMedium
TacticsInitialAccess
Execution
Persistence
DefenseEvasion
CommandAndControl
CredentialAccess
TechniquesT1566
T1204
T1547
T1027
T1071
T1003
T1566.001
T1547.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/TrojanFileHashIndicatorsBlockMediumSeverityRule.yaml
Version1.0.1
Arm template25686f44-5f5f-4388-95e2-eea244481438.json
Deploy To Azure
//Trojan File Hash Indicators with Block Action
let timeFrame = 5m;
CyfirmaIndicators_CL 
| where (ConfidenceScore < 80 and ConfidenceScore >= 50)
    and TimeGenerated between (ago(timeFrame) .. now())
    and pattern contains 'file:hashes' and RecommendedActions has 'Block' and (Roles has 'Trojan')
| extend MD5 = extract(@"file:hashes\.md5\s*=\s*'([a-fA-F0-9]{32})'", 1, pattern)
| extend SHA1 = extract(@"file:hashes\.'SHA-1'\s*=\s*'([a-fA-F0-9]{40})'", 1, pattern)
| extend SHA256 = extract(@"file:hashes\.'SHA-256'\s*=\s*'([a-fA-F0-9]{64})'", 1, pattern)
| extend
    Algo_MD5='MD5',
    Algo_SHA1= 'SHA1',
    Algo_SHA256='SHA256',
    ProviderName = 'CYFIRMA',
    ProductName = 'DeCYFIR/DeTCT'
| project  
    MD5,
    Algo_MD5,
    SHA1,
    Algo_SHA1,
    SHA256,
    Algo_SHA256,
    ThreatActors,
    Sources,
    RecommendedActions,
    Roles,
    Country,
    name,
    Description,
    ConfidenceScore,
    SecurityVendors,
    IndicatorID,
    created,
    modified,
    valid_from,
    Tags,
    ThreatType,
    TimeGenerated,
    ProductName,
    ProviderName
id: 25686f44-5f5f-4388-95e2-eea244481438
enabled: false
relevantTechniques:
- T1566
- T1204
- T1547
- T1027
- T1071
- T1003
- T1566.001
- T1547.001
triggerOperator: GreaterThan
entityMappings:
- fieldMappings:
  - identifier: Value
    columnName: MD5
  - identifier: Algorithm
    columnName: Algo_MD5
  entityType: FileHash
- fieldMappings:
  - identifier: Value
    columnName: SHA1
  - identifier: Algorithm
    columnName: Algo_SHA1
  entityType: FileHash
- fieldMappings:
  - identifier: Value
    columnName: SHA256
  - identifier: Algorithm
    columnName: Algo_SHA256
  entityType: FileHash
alertDetailsOverride:
  alertDynamicProperties:
  - alertProperty: ProductName
    value: ProductName
  - alertProperty: ProviderName
    value: ProviderName
  alertDisplayNameFormat: 'High-Confidence Trojan File Hash Indicators with Block Action Rule - {{name}} '
  alertDescriptionFormat: '{{Description}} - {{name}} '
requiredDataConnectors:
- dataTypes:
  - CyfirmaIndicators_CL
  connectorId: CyfirmaCyberIntelligenceDC
queryFrequency: 5m
suppressionEnabled: true
queryPeriod: 5m
triggerThreshold: 0
incidentConfiguration:
  groupingConfiguration:
    enabled: false
    reopenClosedIncident: false
    matchingMethod: AllEntities
    lookbackDuration: PT5H
  createIncident: true
query: |
  //Trojan File Hash Indicators with Block Action
  let timeFrame = 5m;
  CyfirmaIndicators_CL 
  | where (ConfidenceScore < 80 and ConfidenceScore >= 50)
      and TimeGenerated between (ago(timeFrame) .. now())
      and pattern contains 'file:hashes' and RecommendedActions has 'Block' and (Roles has 'Trojan')
  | extend MD5 = extract(@"file:hashes\.md5\s*=\s*'([a-fA-F0-9]{32})'", 1, pattern)
  | extend SHA1 = extract(@"file:hashes\.'SHA-1'\s*=\s*'([a-fA-F0-9]{40})'", 1, pattern)
  | extend SHA256 = extract(@"file:hashes\.'SHA-256'\s*=\s*'([a-fA-F0-9]{64})'", 1, pattern)
  | extend
      Algo_MD5='MD5',
      Algo_SHA1= 'SHA1',
      Algo_SHA256='SHA256',
      ProviderName = 'CYFIRMA',
      ProductName = 'DeCYFIR/DeTCT'
  | project  
      MD5,
      Algo_MD5,
      SHA1,
      Algo_SHA1,
      SHA256,
      Algo_SHA256,
      ThreatActors,
      Sources,
      RecommendedActions,
      Roles,
      Country,
      name,
      Description,
      ConfidenceScore,
      SecurityVendors,
      IndicatorID,
      created,
      modified,
      valid_from,
      Tags,
      ThreatType,
      TimeGenerated,
      ProductName,
      ProviderName  
name: CYFIRMA - Medium severity Trojan File Hash Indicators with Block Action Rule
kind: Scheduled
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Cyfirma Cyber Intelligence/Analytic Rules/TrojanFileHashIndicatorsBlockMediumSeverityRule.yaml
description: |
  "This KQL query extracts file hash indicators associated with Trojan activity from the CyfirmaIndicators_CL table. 
  It specifically targets indicators containing file hashes linked to Trojan behavior and retrieves MD5, SHA1, and SHA256 values. 
  The query also includes contextual threat intelligence such as threat actors, tags, sources, and geolocation information."  
severity: Medium
tactics:
- InitialAccess
- Execution
- Persistence
- DefenseEvasion
- CommandAndControl
- CredentialAccess
suppressionDuration: 5m
version: 1.0.1
eventGroupingSettings:
  aggregationKind: AlertPerResult
customDetails:
  modified: modified
  Tags: Tags
  RecommendedActions: RecommendedActions
  ValidFrom: valid_from
  Country: Country
  ConfidenceScore: ConfidenceScore
  ThreatType: ThreatType
  Roles: Roles
  created: created
  Sources: Sources
  Description: Description
  SecurityVendors: SecurityVendors
  ThreatActors: ThreatActors
  TimeGenerated: TimeGenerated
  IndicatorID: IndicatorID