Detection of Domain Generation Algorithms

ID: DET0669
Domains: Mobile
Analytics: AN1765, AN1766
Version: 1.0
Created: 21 October 2025
Last Modified: 12 May 2026

Analytics

AN1765

For Android, detect Domain Generation Algorithms by correlating analyst-visible device/network evidence and management state; use streaming or batched telemetry only where the documented collector is deployed. Correlate Application Permission via Android Enterprise DPC / Application Vetting [DevicePolicyManager.getPermissionGrantState(); PackageManager manifest/requested-permission review]; Network Traffic Content via Enterprise Secure Web Gateway / Proxy [DNS/HTTP(S) inspection or proxy transaction metadata where enterprise decryption/inspection is deployed]; Network Traffic Flow via Android Enterprise Network Logging / Enterprise VPN [DevicePolicyManager.retrieveNetworkLogs(): DnsEvent / ConnectEvent; VPN flow metadata]. Alert on a sequence or state change inconsistent with the device/app baseline, approved management policy, or expected user workflow; do not infer unobserved API calls, file/process activity, or payload content from management state alone.

Log Sources
Data Component Name Channel
Application Permission (DC0114) android:DevicePolicyManager DevicePolicyManager.getPermissionGrantState(); PackageManager manifest/requested-permission review
Network Traffic Content (DC0085) webproxy:applog DNS/HTTP(S) inspection or proxy transaction metadata where enterprise decryption/inspection is deployed
Network Traffic Flow (DC0078) android:EnterpriseNetworkLog DevicePolicyManager.retrieveNetworkLogs(): DnsEvent / ConnectEvent; VPN flow metadata
Mutable Elements
Field Description
MDMApprovedCatalog MDM-managed app list.
DGAEntropyThreshold Default 3.5 bits Shannon. Calibrate from fleet DNS baseline.
DGALabelLength Default 12 characters.
DGACandidateThreshold Default 10 high-entropy queries within window.
DGAWindow Default 60s.
DomainAgeThreshold Default 30 days — newly-registered C2 domain.

AN1766

For iOS, detect Domain Generation Algorithms by correlating analyst-visible device/network evidence and management state; use streaming or batched telemetry only where the documented collector is deployed. Correlate Application Permission via Application Vetting [Code-signing entitlements and Info.plist privacy usage-description keys]; Network Traffic Content via Enterprise Secure Web Gateway / Proxy [DNS/HTTP(S) inspection or proxy transaction metadata where enterprise decryption/inspection is deployed]; Network Traffic Flow via Apple Network Extension / Enterprise VPN [NEFilterFlow / per-app VPN / secure-web-gateway flow metadata]. Alert on a sequence or state change inconsistent with the device/app baseline, approved management policy, or expected user workflow; do not infer unobserved API calls, file/process activity, or payload content from management state alone.

Log Sources
Data Component Name Channel
Application Permission (DC0114) mobile:ApplicationVetting Code-signing entitlements and Info.plist privacy usage-description keys
Network Traffic Content (DC0085) webproxy:applog DNS/HTTP(S) inspection or proxy transaction metadata where enterprise decryption/inspection is deployed
Network Traffic Flow (DC0078) iOS:NetworkExtension NEFilterFlow / per-app VPN / secure-web-gateway flow metadata
Mutable Elements
Field Description
MDMApprovedCatalog MDM-managed app list.
DGAEntropyThreshold Default 3.5 bits Shannon.
DGALabelLength Default 12 characters.
DGACandidateThreshold Default 10 high-entropy queries.
DGAWindow Default 60s.
DomainAgeThreshold Default 30 days.