Windows HandleKatz: Duplicate LSASS Handle via Process Access with Handle Duplication Rights

Flags HandleKatz-style behavior duplicating an existing LSASS handle using PROCESS_DUP_HANDLE and ntdll.dll call trace.

FreeReviewedSigma · High · v2
Product
windows
Category
process_access
Author
Bhabesh Raj (rule), @thefLinkk (SigmaHQ), DRL 1.1
Published
2022-06-27
Updated
2026-07-31
title: "Windows HandleKatz: Duplicate LSASS Handle via Process Access with Handle Duplication Rights"
id: d0b2e76a-62fe-4978-970b-406d42ffc2a9
status: test
description: This rule identifies HandleKatz behavior where a process obtains access to lsass.exe that is consistent with duplicating an existing LSASS handle for later memory dumping. Attackers use this to capture credentials from LSASS without necessarily creating additional direct handle activity to LSASS. Detection relies on Windows process access telemetry for TargetImage, specific GrantedAccess values, and matching CallTrace patterns from ntdll.
references:
  - https://github.com/codewhitesec/HandleKatz
  - https://github.com/SigmaHQ/sigma/blob/master/rules/windows/process_access/proc_access_win_hktl_handlekatz_lsass_access.yml
author: Bhabesh Raj (rule), @thefLinkk, Huntrule Team
date: 2022-06-27
modified: 2023-11-28
tags:
  - attack.execution
  - attack.t1106
  - attack.t1003.001
  - attack.credential-access
logsource:
  category: process_access
  product: windows
detection:
  selection:
    TargetImage|endswith: \lsass.exe
    GrantedAccess: "0x1440"
    CallTrace|startswith: C:\Windows\System32\ntdll.dll+
    CallTrace|contains: "|UNKNOWN("
    CallTrace|endswith: )
  condition: selection
falsepositives:
  - Unknown
level: high
license: DRL-1.1
related:
  - id: b1bd3a59-c1fd-4860-9f40-4dd161a7d1f5
    type: derived