Vulnerability Analysis

Identifying Accounts Used From A Threat Actor Device

In cybersecurity, identifying accounts accessed by a threat actor’s device is a critical aspect of incident response and threat hunting.

This process is particularly relevant in environments where Microsoft Defender for Endpoint (MDE) or Microsoft Defender for Identity (MDI) is deployed. Below is an overview of how this can be achieved using advanced hunting queries.

When a threat actor connects their device to a network, often via VPN, they may attempt to use legitimate accounts for malicious purposes.

To detect such activities, security analysts need to query authentication logs for successful logins originating from the threat actor’s device. Key identifiers include the device name or the IP address assigned to the device.

Steps To Identify Compromised Accounts

  1. Gather Initial Information
    • Obtain the threat actor’s device name and/or IP address.
    • Ensure that the remote IP corresponds to the threat actor’s machine during the events in question.
  2. Query Authentication Logs
    • Use MDE’s DeviceLogonEvents or MDI’s IdentityLogonEvents tables to search for successful logins (ActionType == "LogonSuccess") originating from the identified device or IP.
    • Extend results to include account details such as domain and username.
  3. Summarize Results
    • Aggregate data to list all accounts successfully used from the threat actor’s device.
    • Include a count of unique accounts accessed.
  4. Expand Analysis
    • Remove filters for successful logins to review failed login attempts. These may indicate accounts with valid credentials but locked or restricted access.

Below is an example query for MDE:

textlet TARemoteDeviceNames = dynamic(["THREAT_ACTOR_DEVICE_NAME"]);
let TARemoteIPs = dynamic(["THREAT_ACTOR_IP"]);
DeviceLogonEvents
| where RemoteDeviceName has_any (TARemoteDeviceNames) or RemoteIP has_any (TARemoteIPs)
| where ActionType == "LogonSuccess"
| extend Account = strcat(AccountDomain, "\\", AccountName)
| summarize Accounts=make_set(Account), AccountCount=dcount(Account) by RemoteDeviceName, RemoteIP
  • Not all log entries will include both device name and IP address; prioritize IP-based searches when necessary.
  • Failed login attempts should not be ignored, as they may still indicate compromised credentials.
  • Advanced techniques, such as analyzing logon types and associated devices, can provide deeper insights into threat actor behavior.

By leveraging tools like KQL (Kusto Query Language) within Microsoft Defender XDR, security teams can efficiently identify compromised accounts and take swift action to mitigate risks.

Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

How to Use Pentest Copilot in Kali Linux

Introduction Artificial Intelligence is changing how cybersecurity professionals work, especially in penetration testing. Tools that…

13 hours ago

How to Use the Windows Registry to optimize and control your PC.

The Windows Registry Editor lets you easily view and control critical Windows system and application…

3 days ago

MQTT Security: Securing IoT Communications

In the rapidly expanding Internet of Things (IoT) ecosystem, billions of devices are constantly exchanging…

3 days ago

How Do I Do Reverse Image Search

Have you ever come across a picture on the internet and wondered where it came…

1 week ago

WhatsMyName App – Find Anyone Across 640+ Platforms

Overview WhatsMyName is a free, community-driven OSINT tool designed to identify where a username exists…

3 weeks ago

Analyzing Directory Size Linux Tools Explained

Managing disk usage is a crucial task for Linux users and administrators alike. Understanding which…

3 weeks ago