Back to Intelligence

SkyW4lker Device-Code Phishing Kit: Microsoft 365 OAuth Token Theft Campaign — OTX Detection Pack

SA
Security Arsenal Team
November 5, 2026
15 min read

Threat Summary

The SkyW4lker phishing kit represents a sophisticated evolution in enterprise credential harvesting — one that completely sidesteps traditional password theft and MFA interception. Instead, this kit weaponizes Microsoft's legitimate device-code OAuth 2.0 flow (the same mechanism used when you authenticate a smart TV or IoT device to your Microsoft account) to trick users into granting attackers direct access tokens to their Microsoft 365 accounts.

Between June and October 2026, security researchers observed 618 sandbox analyses tied to SkyW4lker infrastructure, with submission volume climbing steadily through Q3. The campaign targets enterprises across the United States, United Kingdom, Canada, India, and British Indian Ocean Territory, with specific focus on Technology, Manufacturing, and Government sectors.

The attack chain is deceptively simple but devastatingly effective:

  1. Initial lure: Target receives a phishing email (often masquerading as an IT security notice, shared document notification, or MFA re-enrollment request)
  2. Device-code initiation: Attacker's infrastructure initiates a legitimate Microsoft device-code authentication request, generating a real user code
  3. Social engineering: Victim is directed to a phishing page (hosted on attacker-controlled domains) that mimics a Microsoft security prompt and instructs them to enter the provided code at microsoft.com/devicelogin — a legitimate Microsoft URL
  4. Token capture: Once the victim enters the code and approves the authentication, the attacker's system receives valid OAuth access and refresh tokens
  5. Account compromise: Tokens are used to access email, OneDrive, SharePoint, and Teams data — all without the attacker's infrastructure ever seeing a password or MFA challenge

This technique is classified under MITRE ATT&CK T1557.002 (Adversary-in-the-Middle: Device Code Phishing) and T1550.001 (Use Alternate Authentication Material: Web Session Cookie) when tokens are replayed.

The mention of a "gabagool connection" in the OTX tags suggests potential overlap or shared infrastructure with the Gabagool phishing-as-a-service (PhaaS) ecosystem — a known criminal marketplace for phishing kits. This indicates SkyW4lker may be distributed or sold through established PhaaS channels, lowering the barrier to entry for less sophisticated actors.


Threat Actor / Malware Profile

Kit Name: SkyW4lker Phishing Kit Type: Phishing-as-a-Service (PhaaS) / OAuth Abuse Toolkit Attribution: Unknown (criminal PhaaS ecosystem, possible Gabagool affiliation)

Distribution Method

SkyW4lker operators primarily rely on spear-phishing emails tailored to enterprise targets. Lure themes observed include:

  • Fake Microsoft security alerts ("Unusual sign-in activity detected")
  • IT-mandated "MFA re-registration" notices
  • Shared document notifications (OneDrive, SharePoint)
  • HR policy updates requiring "re-authentication"
  • Voicemail or fax notifications with embedded links

Emails typically originate from compromised legitimate domains or freshly registered typosquats designed to pass basic SPF/DKIM checks.

Payload Behavior

Unlike traditional malware, SkyW4lker's "payload" is a web-based phishing framework hosted on attacker-controlled domains. The kit:

  • Presents pixel-perfect clones of Microsoft login portals
  • Initiates device-code authentication via Microsoft's public OAuth endpoints
  • Displays the legitimate device code and instructs victims to enter it at the real microsoft.com/devicelogin
  • Polls Microsoft's token endpoint to capture access/refresh tokens upon user approval
  • Exfiltrates captured tokens to operator-controlled C2 infrastructure

C2 Communication

Captured tokens and session metadata are transmitted to operator infrastructure hosted on the domains listed in the IOC section. Communication occurs over HTTPS to blend with normal web traffic. The phishing pages themselves often load resources from multiple domains to complicate takedown efforts.

Persistence Mechanism

SkyW4lker achieves persistence through OAuth refresh tokens, which remain valid for up to 90 days by default (unless explicitly revoked). Attackers can:

  • Register malicious OAuth applications in the victim's tenant to maintain access
  • Create inbox rules to hide security alerts or forward sensitive emails
  • Add attacker-controlled MFA methods to the account
  • Access Microsoft Graph API to enumerate users, groups, and sensitive data

Anti-Analysis Techniques

  • Legitimate infrastructure abuse: By leveraging Microsoft's actual authentication endpoints, the kit avoids detection by traditional email filters and web proxies
  • Dynamic code generation: Device codes are generated in real-time, so static IOCs are less effective
  • Geofencing: Some SkyW4lker pages check victim IP geolocation and serve benign content to security researchers or sandbox environments
  • JavaScript obfuscation: Phishing pages use heavily obfuscated JavaScript to hinder automated analysis
  • Short-lived infrastructure: Phishing domains are often registered, used for days or weeks, then abandoned

IOC Analysis

The OTX pulse provides 185 total indicators, with a sample of domains listed below:

IndicatorTypeNotes
5200m.comDomainPhishing page host
fosterswifts.comDomainPhishing page host
kuer.onlineDomainC2 / token exfil
mouphyweb.comDomainPhishing page host
off365mail.clubDomainTyposquat (Microsoft 365 theme)
eccentric-authentication.comDomainPhishing page host
photosofus.comDomainPhishing page host
nicewayrealestate.ccDomainPhishing page host

Operationalizing These Indicators

For SOC teams:

  1. Email security: Add domains to blocklists in your secure email gateway (SEG). Flag any emails containing these domains in URLs or sender addresses.
  2. Web proxy / DNS filtering: Block HTTP/HTTPS requests to these domains. Enable alerting on any internal host attempting resolution.
  3. Threat intelligence platform (TIP): Ingest the full 185 IOCs from the OTX pulse into your TIP (MISP, ThreatConnect, Anomali, etc.) and enable automated enrichment.
  4. SIEM correlation: Create detection rules that alert on:
    • DNS queries to known SkyW4lker domains
    • HTTP requests with microsoft.com/devicelogin as referrer followed by requests to non-Microsoft domains
    • OAuth token grants to unfamiliar client IPs or user agents
  5. Microsoft 365 audit logs: Hunt for device-code authentication events (DeviceCode flow) in Azure AD sign-in logs, especially from unusual IPs or geographies.

Decoding / Analysis Tools:

  • URLScan.io / VirusTotal: Submit phishing URLs for sandbox analysis and screenshot capture
  • PhishTank / OpenPhish: Cross-reference domains against known phishing databases
  • Microsoft Graph API: Query for suspicious OAuth app registrations or consent grants
  • Azure AD Identity Protection: Review risky sign-ins and token anomalies
  • ANY.RUN: The original SkyW4lker analysis was published here — use their sandbox to detonate phishing links safely

Detection Engineering

YAML
---
title: SkyW4lker Phishing Kit - Device Code OAuth Abuse
id: 8f3a9c1e-5b2d-4e7f-9a1c-3d5e7f8a9b1c
status: experimental
description: Detects device-code authentication flow abuse targeting Microsoft 365, indicative of SkyW4lker phishing kit activity
references:
    - https://any.run/cybersecurity-blog/skyw4lker-phishing-kit-analysis/
author: Security Arsenal Threat Intel
date: 2026/11/05
modified: 2026/11/05
tags:
    - attack.credential_access
    - attack.t1557.002
    - attack.t1550.001
logsource:
    product: azure
    service: signinlogs
detection:
    selection_flow:
        AuthenticationProtocol: 'deviceCode'
    selection_suspicious:
        - Location|contains:
              - 'Unknown'
              - 'Anonymous'
        - IPAddress|contains:
              - 'TOR'
              - 'VPN'
    selection_phishing_domains:
        - Referrer|contains:
              - '5200m.com'
              - 'fosterswifts.com'
              - 'kuer.online'
              - 'mouphyweb.com'
              - 'off365mail.club'
              - 'eccentric-authentication.com'
              - 'photosofus.com'
              - 'nicewayrealestate.cc'
    condition: selection_flow and (selection_suspicious or selection_phishing_domains)
falsepositives:
    - Legitimate device-code authentication from corporate-managed IoT devices
    - Developers testing OAuth integrations
level: high
---
title: SkyW4lker Phishing Domain DNS Query
id: 7e2b8d1c-4a3f-5e6d-8b2c-4d6e8f9a1b2d
status: experimental
description: Detects DNS queries to known SkyW4lker phishing kit infrastructure domains
references:
    - https://any.run/cybersecurity-blog/skyw4lker-phishing-kit-analysis/
author: Security Arsenal Threat Intel
date: 2026/11/05
modified: 2026/11/05
tags:
    - attack.command_and_control
    - attack.t1071.001
logsource:
    category: dns
detection:
    selection:
        query|contains:
            - '5200m.com'
            - 'fosterswifts.com'
            - 'kuer.online'
            - 'mouphyweb.com'
            - 'off365mail.club'
            - 'eccentric-authentication.com'
            - 'photosofus.com'
            - 'nicewayrealestate.cc'
    condition: selection
falsepositives:
    - Security researchers investigating the campaign
    - Threat intelligence feeds performing automated lookups
level: medium
---
title: Suspicious OAuth Application Consent Grant - Microsoft 365
id: 6d1c7e2b-3f4a-5b6c-7d8e-9f0a1b2c3d4e
status: experimental
description: Detects user consent grants to OAuth applications with high-risk permissions, potential SkyW4lker persistence mechanism
references:
    - https://any.run/cybersecurity-blog/skyw4lker-phishing-kit-analysis/
author: Security Arsenal Threat Intel
date: 2026/11/05
modified: 2026/11/05
tags:
    - attack.persistence
    - attack.t1550.001
logsource:
    product: azure
    service: auditlogs
detection:
    selection_operation:
        OperationName:
            - 'Consent to application'
            - 'Add service principal'
    selection_permissions:
        TargetResources|contains:
            - 'Mail.Read'
            - 'Mail.ReadWrite'
            - 'Files.Read.All'
            - 'Files.ReadWrite.All'
            - 'offline_access'
    selection_user:
        InitiatedBy: 'User'
    condition: selection_operation and selection_permissions and selection_user
falsepositives:
    - Legitimate third-party app integrations (Slack, Zoom, etc.)
    - IT-administered service principal creation
level: high
KQL — Microsoft Sentinel / Defender
// Microsoft Sentinel KQL Hunt Query - SkyW4lker Device Code Phishing
// Hunt for device-code authentication events and phishing domain connections

let phishing_domains = dynamic([
    "5200m.com",
    "fosterswifts.com",
    "kuer.online",
    "mouphyweb.com",
    "off365mail.club",
    "eccentric-authentication.com",
    "photosofus.com",
    "nicewayrealestate.cc"
]);

// Part 1: Azure AD Sign-in Logs - Device Code Flow
SigninLogs
| where TimeGenerated >= ago(30d)
| where AuthenticationProtocol == "deviceCode"
| extend ParsedLocation = tostring(parse_json(LocationDetails))
| extend Country = tostring(parse_json(ParsedLocation).countryOrRegion)
| extend City = tostring(parse_json(ParsedLocation).city)
| where ResultType == 0  // Successful authentication
| project
    TimeGenerated,
    UserPrincipalName,
    IPAddress,
    Country,
    City,
    UserAgent,
    AppDisplayName,
    DeviceDetail,
    AuthenticationProtocol,
    ConditionalAccessStatus
| summarize FirstSeen = min(TimeGenerated), LastSeen = max(TimeGenerated), Count = count()
    by UserPrincipalName, IPAddress, Country, UserAgent, AppDisplayName
| where Count >= 1
| order by LastSeen desc;

// Part 2: Network connections to known SkyW4lker phishing domains
DeviceNetworkEvents
| where TimeGenerated >= ago(30d)
| where RemoteUrl has_any (phishing_domains)
| project
    TimeGenerated,
    DeviceName,
    InitiatingProcessAccountName,
    InitiatingProcessFileName,
    InitiatingProcessCommandLine,
    RemoteUrl,
    RemoteIP,
    RemotePort,
    ActionType
| summarize FirstSeen = min(TimeGenerated), LastSeen = max(TimeGenerated), ConnectionCount = count()
    by DeviceName, InitiatingProcessAccountName, RemoteUrl, RemoteIP
| order by LastSeen desc;

// Part 3: Email clicks on phishing domains (requires Office 365 connector)
EmailUrlInfo
| where TimeGenerated >= ago(30d)
| where Url has_any (phishing_domains)
| join kind=inner (
    EmailEvents
    | where TimeGenerated >= ago(30d)
    | project NetworkMessageId, SenderFromAddress, RecipientEmailAddress, Subject, DeliveryAction
) on NetworkMessageId
| project
    TimeGenerated,
    SenderFromAddress,
    RecipientEmailAddress,
    Subject,
    Url,
    DeliveryAction,
    ThreatTypes
| order by TimeGenerated desc;

// Part 4: OAuth application consent grants (persistence check)
AuditLogs
| where TimeGenerated >= ago(30d)
| where OperationName in ("Consent to application", "Add service principal")
| extend InitiatedByUser = tostring(parse_json(InitiatedBy).user.userPrincipalName)
| extend TargetApp = tostring(parse_json(TargetResources)[0].displayName)
| extend Permissions = tostring(parse_json(TargetResources)[0].modifiedProperties)
| where Permissions has_any ("Mail.Read", "Files.ReadWrite", "offline_access")
| project
    TimeGenerated,
    InitiatedByUser,
    TargetApp,
    Permissions,
    IPAddress,
    UserAgent,
    Result
| order by TimeGenerated desc;
PowerShell
<#
.SYNOPSIS
    SkyW4lker Phishing Kit IOC Hunt Script
.DESCRIPTION
    Checks Windows endpoints for indicators of SkyW4lker phishing kit compromise:
    - DNS cache entries for known phishing domains
    - Browser history/artifacts for phishing URLs
    - Suspicious OAuth tokens in browser credential stores
    - Network connections to phishing infrastructure
.NOTES
    Run with elevated privileges for complete visibility.
    Author: Security Arsenal Threat Intel
    Date: 2026-11-05
#>

$ErrorActionPreference = 'SilentlyContinue'

# Known SkyW4lker phishing domains from OTX pulse
$PhishingDomains = @(
    "5200m.com",
    "fosterswifts.com",
    "kuer.online",
    "mouphyweb.com",
    "off365mail.club",
    "eccentric-authentication.com",
    "photosofus.com",
    "nicewayrealestate.cc"
)

Write-Host "[+] SkyW4lker Phishing Kit IOC Hunt - $(Get-Date)" -ForegroundColor Cyan
Write-Host "[+] Hostname: $env:COMPUTERNAME`n" -ForegroundColor Cyan

# ============================================
# CHECK 1: DNS Cache for Phishing Domains
# ============================================
Write-Host "[*] Checking DNS cache for SkyW4lker phishing domains..." -ForegroundColor Yellow

$DNSCache = Get-DnsClientCache | Where-Object {
    $entry = $_.Entry
    $PhishingDomains | Where-Object { $entry -like "*$_*" }
}

if ($DNSCache) {
    Write-Host "[!] ALERT: Suspicious DNS cache entries found:" -ForegroundColor Red
    $DNSCache | Format-Table -AutoSize
} else {
    Write-Host "[+] No suspicious DNS cache entries detected." -ForegroundColor Green
}

# ============================================
# CHECK 2: Active Network Connections to Phishing IPs
# ============================================
Write-Host "`n[*] Checking active network connections..." -ForegroundColor Yellow

# Resolve phishing domains to IPs (best effort - domains may be sinkholed or down)
$PhishingIPs = @()
foreach ($domain in $PhishingDomains) {
    try {
        $IPs = [System.Net.Dns]::GetHostAddresses($domain) | Select-Object -ExpandProperty IPAddressToString
        $PhishingIPs += $IPs
    } catch {
        # Domain may not resolve - this is expected for taken-down infrastructure
    }
}

if ($PhishingIPs.Count -gt 0) {
    $SuspiciousConnections = Get-NetTCPConnection | Where-Object {
        $PhishingIPs -contains $_.RemoteAddress
    }
    
    if ($SuspiciousConnections) {
        Write-Host "[!] ALERT: Active connections to phishing infrastructure:" -ForegroundColor Red
        $SuspiciousConnections | Format-Table -AutoSize
    } else {
        Write-Host "[+] No active connections to known phishing IPs." -ForegroundColor Green
    }
} else {
    Write-Host "[*] Phishing domains did not resolve (may be sinkholed or expired)." -ForegroundColor Yellow
}

# ============================================
# CHECK 3: Browser History Artifacts (Chrome)
# ============================================
Write-Host "`n[*] Checking Chrome browser history for phishing domains..." -ForegroundColor Yellow

$ChromeHistoryPath = "$env:LOCALAPPDATA\Google\Chrome\User Data\Default\History"

if (Test-Path $ChromeHistoryPath) {
    # Copy database to temp location to avoid lock issues
    $TempHistory = "$env:TEMP\ChromeHistory_$(Get-Random).db"
    Copy-Item $ChromeHistoryPath $TempHistory -Force
    
    # Check if SQLite assembly is available (requires System.Data.SQLite or manual query)
    # For this script, we'll do a simple string search in the file
    $HistoryContent = Get-Content $TempHistory -Raw -ErrorAction SilentlyContinue
    
    $FoundDomains = @()
    foreach ($domain in $PhishingDomains) {
        if ($HistoryContent -match $domain) {
            $FoundDomains += $domain
        }
    }
    
    if ($FoundDomains.Count -gt 0) {
        Write-Host "[!] ALERT: Phishing domains found in Chrome history:" -ForegroundColor Red
        $FoundDomains | ForEach-Object { Write-Host "    - $_" -ForegroundColor Red }
    } else {
        Write-Host "[+] No phishing domains found in Chrome history." -ForegroundColor Green
    }
    
    Remove-Item $TempHistory -Force
} else {
    Write-Host "[*] Chrome history not found (may not be installed or different profile)." -ForegroundColor Yellow
}

# ============================================
# CHECK 4: Scheduled Tasks (persistence check)
# ============================================
Write-Host "`n[*] Checking for suspicious scheduled tasks..." -ForegroundColor Yellow

$SuspiciousTasks = Get-ScheduledTask | Where-Object {
    $_.TaskName -match "Microsoft.*Update|Office.*Sync|Auth.*Token" -and
    $_.TaskPath -notlike "\Microsoft\*"
}

if ($SuspiciousTasks) {
    Write-Host "[!] ALERT: Suspicious scheduled tasks found:" -ForegroundColor Red
    $SuspiciousTasks | Format-Table TaskName, TaskPath, State -AutoSize
} else {
    Write-Host "[+] No suspicious scheduled tasks detected." -ForegroundColor Green
}

# ============================================
# CHECK 5: Recent Run Keys (persistence check)
# ============================================
Write-Host "`n[*] Checking registry Run keys for suspicious entries..." -ForegroundColor Yellow

$RunKeys = @(
    "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run",
    "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
)

$SuspiciousRunEntries = @()
foreach ($key in $RunKeys) {
    if (Test-Path $key) {
        $entries = Get-ItemProperty $key
        $entries.PSObject.Properties | ForEach-Object {
            if ($_.Value -match "powershell|cmd|wscript|cscript" -and $_.Value -match "http|bit\.ly|tinyurl") {
                $SuspiciousRunEntries += [PSCustomObject]@{
                    Key = $key
                    Name = $_.Name
                    Value = $_.Value
                }
            }
        }
    }
}

if ($SuspiciousRunEntries) {
    Write-Host "[!] ALERT: Suspicious Run key entries found:" -ForegroundColor Red
    $SuspiciousRunEntries | Format-Table -AutoSize
} else {
    Write-Host "[+] No suspicious Run key entries detected." -ForegroundColor Green
}

# ============================================
# CHECK 6: Microsoft 365 Device Login Artifacts
# ============================================
Write-Host "`n[*] Checking for device-code authentication artifacts..." -ForegroundColor Yellow

# Check for recent microsoft.com/devicelogin visits in browser history
$DeviceLoginArtifact = $false
if ($HistoryContent -match "microsoft.com/devicelogin") {
    Write-Host "[!] ALERT: microsoft.com/devicelogin found in browser history." -ForegroundColor Red
    Write-Host "    Verify if user initiated legitimate device pairing (smart TV, IoT device)." -ForegroundColor Yellow
    $DeviceLoginArtifact = $true
} else {
    Write-Host "[+] No device-code login artifacts found in browser history." -ForegroundColor Green
}

# ============================================
# SUMMARY
# ============================================
Write-Host "`n========================================" -ForegroundColor Cyan
Write-Host "SkyW4lker IOC Hunt Complete" -ForegroundColor Cyan
Write-Host "========================================" -ForegroundColor Cyan

$FindingsCount = ($DNSCache.Count + $SuspiciousConnections.Count + $FoundDomains.Count + $SuspiciousTasks.Count + $SuspiciousRunEntries.Count)

if ($FindingsCount -gt 0 -or $DeviceLoginArtifact) {
    Write-Host "[!] SUSPICIOUS ACTIVITY DETECTED - $FindingsCount findings" -ForegroundColor Red
    Write-Host "    Recommended actions:" -ForegroundColor Yellow
    Write-Host "    1. Isolate host from network" -ForegroundColor Yellow
    Write-Host "    2. Force password reset for affected user" -ForegroundColor Yellow
    Write-Host "    3. Revoke all OAuth tokens for user in Azure AD" -ForegroundColor Yellow
    Write-Host "    4. Review Azure AD sign-in logs for anomalous activity" -ForegroundColor Yellow
    Write-Host "    5. Check for unauthorized OAuth app registrations" -ForegroundColor Yellow
} else {
    Write-Host "[+] No indicators of SkyW4lker compromise detected." -ForegroundColor Green
}

Write-Host "`n[*] Hunt completed at $(Get-Date)" -ForegroundColor Cyan

Response Priorities

Immediate (0-4 hours)

  1. Block IOCs: Add all 185 domains from the OTX pulse to:

    • Email gateway blocklists (sender domains, URL rewriting)
    • Web proxy / DNS filtering blocklists
    • Firewall / IDS rules
    • Endpoint protection custom indicators
  2. Hunt for execution artifacts:

    • Run the PowerShell IOC hunt script on all endpoints (or deploy via your EDR/MDM platform)
    • Query DNS logs for any internal hosts that resolved the phishing domains
    • Review email logs for messages containing the phishing domains (sender, URLs in body)
  3. Alert triage: If any hits are found, immediately isolate the affected endpoint and begin forensic collection (memory dump, browser history, recent downloads).

24 Hours

Credential-stealing malware is involved — SkyW4lker captures OAuth tokens that grant full account access. For any user who interacted with phishing infrastructure:

  1. Force password reset (even though passwords weren't directly stolen, this invalidates cached credentials)
  2. Revoke all OAuth refresh tokens in Azure AD:
    • Use the Microsoft Graph PowerShell command: Revoke-AzureADUserAllRefreshToken -ObjectId <user-object-id>
    • Or via Azure Portal: User > Sign-ins > Revoke all sessions
  3. Review OAuth app registrations: Check for any suspicious third-party apps the user may have consented to. Remove any that are not explicitly business-approved.
  4. Check inbox rules: Look for malicious forwarding or deletion rules designed to hide security alerts or exfiltrate data.
  5. Review MFA methods: Ensure no unauthorized authentication methods (phone numbers, authenticator apps) were added to the account.
  6. Enable Azure AD Identity Protection policies if not already active:
    • Block sign-ins from anonymous IPs
    • Require MFA for risky sign-ins
    • Alert on impossible travel

1 Week

Architecture hardening based on the attack vector:

  1. Disable device-code flow if not explicitly needed:

    • Most enterprises do not require device-code authentication for legitimate use cases
    • Use Conditional Access policies to block device-code flow: Azure AD > Conditional Access > New Policy > Cloud apps: Microsoft 365 > Conditions: Authentication flows: Device code flow > Grant: Block
  2. Implement Conditional Access:

    • Require compliant devices for Microsoft 365 access
    • Block legacy authentication protocols
    • Enforce MFA for all users (with number matching enabled to prevent MFA fatigue attacks)
  3. User awareness training:

    • Conduct targeted phishing simulation using device-code lures
    • Educate users that Microsoft will NEVER ask them to enter a code at microsoft.com/devicelogin unless they initiated a device pairing
    • Teach users to verify with IT support before entering any authentication codes
  4. OAuth governance:

    • Enable Azure AD admin consent workflow to require approval for all third-party app consent requests
    • Regularly audit existing OAuth app permissions and remove unused or over-privileged apps
    • Implement app governance policies in Microsoft Cloud App Security (MCAS)
  5. Detection tuning:

    • Deploy the Sigma and KQL detections provided above
    • Tune false positives based on legitimate IoT/device pairing activity in your environment
    • Create playbooks for automated response when device-code phishing is detected

Related Resources

Security Arsenal Incident Response Managed SOC & MDR Services AlertMonitor Threat Detection From The Dark Side Intel Hub

Is your security operations ready?

Get a free SOC assessment or see how AlertMonitor cuts through alert noise with automated triage.