🖥️
Windows DFIR
  • Introduction
  • Windows Artifacts
    • Windows Quick Tips
      • Windows Command Line
      • Workstation File/Folder Locations
      • Server File/Folder Locations
    • Account Usage
      • Authentications SAM Artifacts
        • Last Login
        • Last Failed Login
        • Last Password Change
      • Authentications (Windows Event Log)
        • Logon ID
      • Group Membership
        • Event ID: 4798
        • Event ID: 4799
      • RDP
        • Source System Artifacts - Quick Reference
        • Destination System Artifacts - Quick Reference
      • SSH
      • Rouge Local Accounts
      • CrowdStrike Searches
        • Event Name - UserLogon
        • Event Name - UserLogonFailed
        • Event Name - UserLogonFailed2
        • Event Name - SsoApplicationAccess
    • Browser Usage
      • History & Downloads
        • Viewing History Files - DB Browser
        • Transition Types
      • Auto-Complete Data
      • Bookmarks
      • Browser Preferences
      • Cache
      • Cookies
      • Extensions
      • Super Cookies (HTML5 Web Storage)
      • Media History
      • Private Browsing
      • Session Restore
      • Stored Credentials
      • Suggested/Frequent Sites
      • DB Browser Queries
        • Firefox
        • Chrome
        • Media History
      • PowerShell Scripts
        • Browser Extension Finder
        • Browser History Finder
    • Processes
      • at.exe
      • explorer.exe
      • lsass.exe
      • lsaiso.exe
      • PuTTy.exe
        • X11 Forwarding
      • runtimebroker.exe
      • services.exe
      • smss.exe
      • System
      • svchost.exe
        • Services
      • winlogon.exe
      • wininit.exe
    • Cloud Storage
    • Deleted File or File Knowledge
      • WordWheelQuery (Win 7+)
      • ACMRU (Win XP)
      • Internet Explorer file:///
      • Last Visited MRU
      • Thumbs.db (Win XP)
      • Thumbcache
      • Recycle Bin
      • User Typed Paths
      • Windows Search Database
    • File Download
      • Zone.Identifer
      • Open/Save Most Recently Used (MRU)
      • Email
      • Drive By Downloads
        • Malvertising
      • Web Browsing
        • Cache Files
      • CrowdStrike Searches
        • MoTW
    • Folder/File Opening/Creation
      • Recent Files
      • Office Recent Files
      • Shell Bags
      • .lnk Files
      • Jump Lists
        • AppIDs
      • Prefetch
      • Index.dat file://
      • PowerShell Scripts
        • .lnk Files
    • Persistence
      • Registry
        • NTUSER.DAT & HKU\SID
        • Run and Run Once
        • Shell Folders and UserInit Key
        • Services
        • Logon Scripts
        • Office Add-ins
        • Winlogon Shell
        • Image File Execution Options (IFEO)
        • AppInit_DLLs
        • Scheduled Tasks
      • Scheduled Tasks
        • Scheduled Task Destination System Artifacts
        • Scheduled Task Source System Artifacts
      • Startup
      • Tool: AutoRuns
      • Accounts
      • WMI Event Consumers
        • WMI: Source System Artifacts
        • WMI: Destination System Artifacts
        • WMI: PowerShell Analysis
      • PowerShell Scripts
        • Startup Programs
      • CrowdStrike Searches
        • Files Written to Startup Folder
        • Files Written to Startup Folder from the Internet
        • Local Account Creation/Deletion
        • Azure Account Creation/Deletion
        • Scheduled Tasks
    • Physical Location
      • Time zone
      • Wireless SSID
      • Network History (Vista/Win7–11)
      • Cookies
      • Browser Search Terms
    • Program Execution
      • Prefetch
        • Decoding Prefetch Files with Eric Zimmerman's PECmd Tool
      • BAM/DAM
      • CapabilityAccessManager
      • UserAssist
      • Last Visited MRU
      • RunMRU
      • MUI Cache
      • ShimCache
      • Amcache
      • Jump Lists
    • Shadow Copies
      • VSC Permissions
      • Event ID 8193: Volume Shadow Copy Service Error
    • USB Usage
      • Key Identification
      • Drive Letter and Volume Name
      • Connection Timestamps
      • User
      • Volume Name
      • Plug & Play Event Log
    • Windows Services
      • DoSvc (Delivery Optimization)
    • System Information
    • Event IDs
      • Authentication / Account
        • 4624 - Authentication Success
          • Logon Types
        • 4625 - Authentication Failure
          • SubStatus Codes
        • 4634 - Account Logoff
        • 4648 - Explicit Credentials Success
        • 4672 - Special Privileges
        • 4720 - Account Creation
        • 4722 - Account Enabled
        • 4732 - Addition to Local Group
        • 4738 - Account Changed
        • 4776 - Kerberos Authentication Attempt
          • Substatus Codes
        • 4771 - Kerberos Failure
        • 4768
      • File System
        • 1006
        • 4688 - Process Created
        • 4663
        • 4656
        • 6416
        • 20001
        • 20003
  • Windows DFIR & MITTR
    • Initial Access
      • Content Injection
      • Drive-by Compromise
        • Watering Hole Attack
        • Microsoft Files (Payload Execution)
        • Exploit Delivery
        • Viewing Browser History Files
      • Phishing
    • Execution
    • Persistence
    • Privilege Escalation
    • Defense Evasion
    • Credential Access
      • Logon ID
    • Discovery
    • Lateral Movement
    • Collection
    • Command and Control
    • Exfiltration
    • Impact
  • SOC Related
    • Cached Credentials
    • Domain Controller Password Spraying
Powered by GitBook
On this page
  • Overview
  • Abuse by Threat Actors
  • Detection and Mitigation
  • Example of a Suspicious Entry
  • Conclusion

Was this helpful?

  1. Windows Artifacts
  2. Persistence
  3. Registry

Logon Scripts

Logon scripts offer a way for administrators to automate tasks that should occur each time a user logs on to a Windows system.

Overview

  • Key Location: It's important to clarify that the typical way to set logon scripts for persistence through the registry involves manipulating environment variables or directly setting scripts in Group Policy Objects (GPOs). However, for local user logon scripts without using GPOs, scripts can be specified through the following registry key:

    • HKCU\Environment

      • Here, the UserInitMprLogonScript variable (if specifically mentioned) or other custom variables might be used to specify scripts. However, this specific key (UserInitMprLogonScript) is not a standard Windows environment variable used for logon scripts. Instead, logon scripts are commonly configured via:

        • Group Policy: User Configuration\Policies\Windows Settings\Scripts (Logon/Logoff)

        • Local Group Policy Editor for individual systems without a domain.

  • Purpose and Use: Logon scripts can run batch files, PowerShell scripts, or other executable files. Administrators use them to automate repetitive tasks needed upon user login, such as setting up the user environment, launching applications, or updating software.

Abuse by Threat Actors

  • Persistence Mechanism: By inserting a path to a malicious script or executable into the registry to be run at logon, threat actors ensure their payload is executed every time the victim logs on. This can be done by adding a new environment variable that points to a malicious script or by modifying existing variables or policies intended for legitimate logon scripts.

  • Stealth: Since logon scripts are a legitimate part of many enterprise environments, the use of this mechanism by malware can sometimes evade detection by blending in with normal administrative activities.

Detection and Mitigation

  • Monitoring and Auditing: Regularly monitor and audit the HKCU\Environment registry key and Group Policy settings for unauthorized changes. Look for unexpected or unknown scripts set to execute at logon.

  • Security Solutions: Use endpoint security solutions that can detect and alert on modifications to registry keys associated with persistence mechanisms. These solutions can often correlate such changes with other suspicious behavior on the system.

  • Education and Policies: Educate administrators and users about the risks associated with logon scripts and enforce policies that restrict who can modify logon script settings.

Example of a Suspicious Entry

A hypothetical example of a suspicious registry entry using a different variable for logon scripts might look like:

[HKEY_CURRENT_USER\Environment]
"MyCustomLogonScript"="C:\\Windows\\Temp\\malicious_script.ps1"

Here, MyCustomLogonScript is a made-up variable name that points to a PowerShell script located in a directory commonly used by malware for temporary storage. Real attacks might use more subtly named variables and scripts located in less obvious paths.

Conclusion

While logon scripts are a valid and useful feature for system administration, their misuse for persistence highlights the need for vigilance and robust security practices. Organizations should monitor relevant registry keys and Group Policy settings for unauthorized modifications and employ layered security measures to detect and prevent malicious activity.

PreviousServicesNextOffice Add-ins

Last updated 1 year ago

Was this helpful?