IP Library Patent Application 18789787
Patent Application
App. No. 18/789,787

Detection of Dynamic Link Library (DLL) Side Loading Attacks

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
18/789,787
Abstract

A method for detecting a cyber-attack includes identifying an event occurring in a computer belonging to a computer system, the event including loading of an application to memory together with a Dynamic Link Library (DLL). A filtering criterion is applied to the event, to verify that (i) the application and the DLL are loaded from the same folder, (ii) the application is signed and verified and (iii) the DLL does not have a valid signature. Responsively to meeting the filtering criterion, a profiling criterion is applied to the event, to verify that prevalences of defined characteristics of the DLL in the computer system are below defined prevalence levels. Responsively to meeting the profiling criterion, a decision is made that the DLL is suspected of being malicious.

Claims (37)

1 . A method for detecting a cyber-attack, the method comprising:

identifying an event occurring in a computer belonging to a computer system, the event comprising loading of an application to memory together with a Dynamic Link Library (DLL);

applying to the event a filtering criterion, which verifies that (i) the application and the DLL are loaded from a same folder, (ii) the application is signed and verified and (iii) the DLL does not have a valid signature;

responsively to meeting the filtering criterion, applying to the event a profiling criterion, which verifies that prevalences of defined characteristics of the DLL in the computer system are below defined prevalence levels; and

responsively to meeting the profiling criterion, deciding that the DLL is suspected of being malicious.

2 . The method according to claim 1 , further comprising initiating a responsive action upon deciding that the DLL is suspected.

3 . The method according to claim 1 , wherein applying the profiling criterion comprises verifying that the DLL was observed in the computer system (i) on less than a defined number of computers and (ii) during less than a defined number of days.

4 . The method according to claim 1 , wherein applying the profiling criterion comprises verifying that a path to the DLL was observed, in the computer system, to contain DLLs having no valid signatures (i) on less than a defined number of computers and (ii) during less than a defined number of days.

5 . The method according to claim 1 , further comprising evaluating a score of the event responsively to meeting the profiling criterion, and deciding whether the DLL is suspected of being malicious depending on the score.

6 . The method according to claim 5 , wherein evaluating the score comprises checking whether an entropy of the DLL is below a defined threshold.

7 . The method according to claim 5 , wherein evaluating the score comprises checking whether an entropy of the DLL is above a defined threshold.

8 . The method according to claim 5 , wherein evaluating the score comprises checking whether the DLL was loaded from a folder defined as suspicious.

9 . The method according to claim 5 , wherein evaluating the score comprises checking whether the DLL was loaded from a folder having a single-character name.

10 . The method according to claim 5 , wherein evaluating the score comprises checking whether the DLL is included in a defined list of DLLs known to be malicious.

11 . The method according to claim 5 , wherein evaluating the score comprises checking whether the DLL was compiled with a different file name.

12 . The method according to claim 5 , wherein evaluating the score comprises checking whether a command line of the application has no arguments.

13 . The method according to claim 5 , wherein evaluating the score comprises checking whether a time duration between creation and execution of the DLL is below a defined threshold.

14 . The method according to claim 5 , wherein evaluating the score comprises checking whether the application is signed by a security company.

15 . The method according to claim 5 , wherein evaluating the score comprises checking whether a time duration between creation and execution of the DLL is below a defined threshold.

16 . The method according to claim 5 , wherein evaluating the score comprises identifying, within the computer system, that:

the application was observed loading the DLL as signed with a first prevalence that is above a first defined prevalence level; and

the application was observed loading the DLL as unsigned with a second prevalence that is below a second defined prevalence level.

17 . The method according to claim 5 , wherein evaluating the score comprises identifying that:

the application was observed loading the DLL as signed in more than a first defined number of computer systems;

the application was observed loading the DLL as unsigned in less than a second defined number of computer systems;

within the computer system, the application was observed loading the DLL as unsigned with a first prevalence that is below a first defined prevalence level; and

within the computer system, signatures of a signature vendor associated with the application were observed with a second prevalence that is below a second defined prevalence level.

18 . A system for detecting a cyber-attack, the system comprising:

an input interface, configured to receive events occurring in a computer system; and

one or more processors, configured to:

identify an event occurring in a computer belonging to the computer system, the event comprising loading of an application memory together with a Dynamic Link Library (DLL);

apply to the event a filtering criterion, which verifies that (i) the application and the DLL are loaded from a same folder, (ii) the application is signed and verified and (iii) the DLL does not have a valid signature;

responsively to meeting the filtering criterion, apply to the event a profiling criterion, which verifies that prevalences of defined characteristics of the DLL in the computer system are below defined prevalence levels; and

responsively to meeting the profiling criterion, decide that the DLL is suspected of being malicious.

19 . The system according to claim 18 , wherein, in applying the profiling criterion, the one or more processors are configured to verify that the DLL was observed in the computer system (i) on less than a defined number of computers and (ii) during less than a defined number of days.

20 . The system according to claim 18 , wherein, in applying the profiling criterion, the one or more processors are configured to verify that a path to the DLL was observed, in the computer system, to contain DLLs having no valid signatures (i) on less than a defined number of computers and (ii) during less than a defined number of days.

21 . The method according to claim 18 , wherein the one or more processors are further configured to evaluate a score of the event responsively to meeting the profiling criterion, and to decide whether the DLL is suspected of being malicious depending on the score.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 7, 2025
From: PALO ALTO NETWORKS (ISRAEL ANALYTICS) LTD.
To: PALO ALTO NETWORKS INC.
Reel/Frame 071816/0063 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2024
From: ERLICH, CHEN
To: PALO ALTO NETWORKS (ISRAEL ANALYTICS) LTD.
Reel/Frame 068131/0710 →