Security DLL Hook Protection Against Attacker Detection and Modification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing security software substitutes modified functions in dynamic link libraries (DLLs) without adequate protection against detection or modification by attackers.

Innovation Solution

Implementing security DLLs that redirect native DLLs, using methods such as IAT, EAT, and inline hooks, and employing a BotSink to manage these hooks, along with kernel-level denial of debugging privileges to prevent detection and modification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If security software substitutes modified functions in DLLs (DLL hooks), then threat mitigation function is achieved, but the hooks can be detected and modified by attackers

Engineering Contradiction:
Improvethreat mitigation functionVSAvoiddetection and modification by attackers
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent applies preliminary anti-action by implementing kernel-level protection mechanisms that prevent attackers from detecting or modifying DLL hooks before they can compromise security. The system proactively blocks debugging privileges and modification attempts at the kernel level, creating a protective barrier that neutralizes potential threats before they can affect the DLL hook integrity.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The patent uses an intermediary approach by introducing a security DLL as a mediator between the native DLL and the application. This security DLL intercepts function calls and performs threat mitigation functions, while the native DLL remains restricted from performing certain functions. The intermediary layer protects the hook mechanism from direct attack while maintaining the desired security functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If DLL hooks are implemented for security functions, then threat mitigation is achieved, but the hooks lack protection against detection

Engineering Contradiction:
Improvesecurity function executionVSAvoidhook detection difficulty
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent implements preliminary anti-action by establishing kernel-level denial of debugging privileges before attackers can detect or measure DLL hooks. This proactive protection prevents detection capabilities from being activated, making hook measurement and detection fundamentally unavailable to attackers while maintaining secure function execution.

Inventive Principle:
Principle #9Preliminary anti-action

3Reliability

If DLL hooks are implemented for security functions, then threat mitigation is achieved, but the hooks can be modified by attackers

Engineering Contradiction:
Improvesecurity function executionVSAvoidhook modification by attackers
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent employs an intermediary security DLL that acts as a protected layer between the application and the native DLL. This intermediary restricts the native DLL from performing certain functions and protects the hook mechanism from attacker modification. The intermediary layer maintains security function execution while blocking malicious modification attempts.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent applies preliminary anti-action by implementing kernel-level protection that prevents attacker modification of DLL hooks before it can occur. The system proactively blocks modification capabilities at the kernel level, creating a protective barrier that neutralizes potential malicious changes to the hook mechanism.

Inventive Principle:
Principle #9Preliminary anti-action

Data Source

PatentUS20250258909A1Preserving DLL hooks
Publication Date: 2025.08.14 SENTINELONE INC
  • US20250258909A1 patent drawing
  • US20250258909A1 patent drawing
  • US20250258909A1 patent drawing

AI summary

DLL hooks are protected by mapping the starting address of the new executable to a sample of the former executable. Attempts to read the starting address are responded to with the sample of the former executable. Attempts to write to the starting address are responded to with confirmation of success without actually writing data. Debuggers are detected upon launch or by evaluating an operating system. A component executing in the kernel denies debugging privileges to prevent inspection and modification of DLL hooks.