T1185 Elastic Security · Elastic

Detect Browser Session Hijacking in Elastic Security

Adversaries may take advantage of security vulnerabilities and inherent functionality in browser software to change content, modify user behaviors, and intercept information as part of various browser session hijacking techniques. A specific example is when an adversary injects software into a browser process that allows them to inherit cookies, HTTP sessions, and SSL client certificates of a user, then uses the browser as a pivot into an authenticated intranet. Executing browser-based behaviors such as pivoting may require specific process permissions, such as SeDebugPrivilege and/or high-integrity/administrator rights. Another technique involves redirecting browser traffic through an adversary-controlled proxy injected into the browser process, allowing session impersonation without modifying user-visible traffic. Malware families such as TrickBot, Dridex, IcedID, QakBot, and Cobalt Strike implement browser pivoting and web inject techniques to steal banking credentials, session tokens, and SSL certificates.

MITRE ATT&CK

Tactic
Collection
Technique
T1185 Browser Session Hijacking
Canonical reference
https://attack.mitre.org/techniques/T1185/

Elastic Detection Query

Elastic Security (Elastic)
eql
sequence by host.id with maxspan=5m
  [process where event.type == "start" and
   process.name : ("chrome.exe", "msedge.exe", "firefox.exe", "iexplore.exe", "brave.exe", "opera.exe", "microsoftedge.exe") and
   event.action == "start"]
  [process where event.action in ("access", "ptrace") and
   target.process.name : ("chrome.exe", "msedge.exe", "firefox.exe", "iexplore.exe", "brave.exe", "opera.exe", "microsoftedge.exe") and
   not process.name : ("chrome.exe", "msedge.exe", "firefox.exe", "MsMpEng.exe", "WerFault.exe", "csrss.exe", "dwm.exe", "taskmgr.exe")]

OR

sequence by host.id, process.pid with maxspan=2m
  [process where process.name : ("chrome.exe", "msedge.exe", "firefox.exe", "iexplore.exe", "brave.exe", "opera.exe") and event.type == "start"]
  [library where process.name : ("chrome.exe", "msedge.exe", "firefox.exe", "iexplore.exe", "brave.exe", "opera.exe") and
   not dll.path : (
     "?:\\Program Files\\Google\\Chrome\\*",
     "?:\\Program Files\\Mozilla Firefox\\*",
     "?:\\Program Files\\Microsoft\\Edge\\*",
     "?:\\Windows\\System32\\*",
     "?:\\Windows\\SysWOW64\\*",
     "?:\\Windows\\WinSxS\\*"
   ) and
   not dll.name : ("d3d*.dll", "opengl*.dll", "nvoglv*.dll", "atig6*.dll", "ig*.dll")]
high severity medium confidence

Detects browser session hijacking via process injection into browser processes or suspicious DLL loads inside browser processes. Uses EQL sequences to correlate browser process start with subsequent injection API calls or anomalous library loads from non-standard paths.

Data Sources

Windows Sysmon (event.action process access/ptrace)Endpoint agent with DLL/library load eventsElastic Endpoint Security or Winlogbeat with Sysmon

Required Tables

logs-endpoint.events.process-*logs-endpoint.events.library-*winlogbeat-*

False Positives & Tuning

  • Security tools such as CrowdStrike Falcon sensor or Carbon Black may legitimately access browser processes for monitoring purposes
  • Screen recording or accessibility software (e.g., Zoom, screen readers) may load DLLs into browser processes
  • Browser extensions distributed as standalone DLLs loaded from non-default paths
  • Development/debugging tools like Visual Studio or WinDbg attaching to browsers during web development
  • Password managers with browser integration loading helper DLLs from custom paths
Download portable Sigma rule (.yml)

Other platforms for T1185


Testing Methodology

Validate this detection against 4 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1Browser Process Enumeration and Handle Open (ReadVM Access)

    Expected signal: Sysmon EventCode=10 (ProcessAccess): SourceImage=powershell.exe, TargetImage=<browser>.exe, GrantedAccess=0x10 (PROCESS_VM_READ), CallTrace will show the kernel32.dll and ntdll.dll call stack. MDE DeviceEvents ActionType=OpenProcessApiCall with FileName=<browser>.exe, InitiatingProcessFileName=powershell.exe.

  2. Test 2Chrome Cookie Database Exfiltration via File Copy

    Expected signal: Sysmon EventCode=11 (FileCreate): TargetFilename=%TEMP%\argus_test_cookies_*.db, Image=powershell.exe. Sysmon EventCode=1 (ProcessCreate): powershell.exe with command line referencing LOCALAPPDATA\Google\Chrome\User Data. MDE DeviceFileEvents with ActionType=FileCreated, FileName=argus_test_cookies_*.db, InitiatingProcessFileName=powershell.exe.

  3. Test 3Browser Proxy Configuration via Registry (Browser Pivot Simulation)

    Expected signal: Sysmon EventCode=13 (RegistryValueSet): TargetObject=HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyServer, Details=127.0.0.1:4444, Image=powershell.exe. Second EventCode=13 for ProxyEnable=1. MDE DeviceRegistryEvents with ActionType=RegistryValueSet, RegistryValueName=ProxyServer, RegistryValueData=127.0.0.1:4444.

  4. Test 4CreateRemoteThread Simulation into Browser Process (Benign Payload)

    Expected signal: Sysmon EventCode=8 (CreateRemoteThread): SourceImage=powershell.exe, TargetImage=<browser>.exe, StartAddress=<kernel32!Sleep address>, StartModule=C:\Windows\System32\kernel32.dll, StartFunction=Sleep. MDE DeviceEvents ActionType=CreateRemoteThreadApiCall, FileName=<browser>.exe, InitiatingProcessFileName=powershell.exe. Security Event ID 4688 for the PowerShell process if command line auditing is enabled.

Unlock Pro Content

Get the full detection package for T1185 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections