IP Library Granted Patent US 12711232
Granted Patent B2
US 12711232 · App. 18/819,262 · Granted Aug 18, 2026

Ransomware prevention

Inventor: Matthew Holland (Ottowa, CA)
Assignee: Field Effect Software Inc.
G06F21/566G06F21/6218G06F2221/034
View Patent ↗
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 12711232
App. No.
18/819,262
Granted
Aug 18, 2026
Kind
B2
Abstract

Ransomware attacks may be prevented by monitoring file access requests. When a process requests a directory listing, the results provided may be modified based on whether the process is trusted or not. For trusted processes, the results provided are the actual directory listing, while the results provided to processes that aren't trusted may be modified to include seeded files. Access to the seeded files may be monitored to determine if the process is associated with a ransomware attack, and steps taken to mitigate an attempted ransomware attack. Ransomware may also be prevented by ensuring that only trusted processed are allowed to access certain files. In order to provide an improved user experience, the processes can be determined automatically from a system structure and their trustworthiness determined.

Claims (51)

1 . A method of preventing a ransomware attack comprising:

processing a system structure to automatically determine a file type to process mapping between a plurality of file types and processes used in accessing respective ones of the plurality of file types, wherein processing the system structure to automatically determine the file type to process mapping comprises:

using an API to identify a plurality of Uniform Type Identifiers (UTIs) on a given host; and

correlating UTI mappings to the registered applications or bundles that support them;

for each of the processes in the file type to process mapping, evaluating a trustworthiness of the process;

receiving at a file system an input/output (IO) request from a requesting process;

determining if the requesting process is a trusted process; and

allowing or blocking the IO request based on the determination of if the requesting process is trusted.

2 . The method of claim 1 , further comprising:

for each of the processes in the file type to process mapping generating a fingerprint of the process that was evaluated for trust; and

when determining if the requesting process is trusted:

determining a requesting process fingerprint of the requesting process; and

comparing the requesting process fingerprint with the previously

determined fingerprint of the process that was evaluated for trust,

wherein allowing or blocking the IO request is further based on the comparison of the requesting process fingerprint and the previously determined fingerprint.

3 . The method of claim 2 , wherein, responsive to a failed match between the requesting process fingerprint and the previously determined fingerprint, the method further comprises re-evaluating the trustworthiness of the requesting process.

4 . The method of claim 1 , wherein the system structure comprises a macOS system structure.

5 . A system for preventing a ransomware attack comprising:

a processor for executing instructions; and

a memory for storing instructions, which when executed by the processor, configure the system to perform a method comprising:

processing a system structure to automatically determine a file type to process mapping between a plurality of file types and processes used in accessing respective ones of the plurality of file types, wherein processing the system structure to automatically determine the file type to process mapping comprises:

using an API to identify a plurality of Uniform Type Identifiers (UTIs) on a given host; and

correlating UTI mappings to the registered applications or bundles that support them;

for each of the processes in the file type to process mapping, evaluating a trustworthiness of the process;

receiving at a file system an input/output (IO) request from a requesting process;

determining if the requesting process is a trusted process; and

allowing or blocking the IO request based on the determination of if the requesting process is trusted.

6 . The system of claim 5 , wherein the method configured by executing the instructions further comprises:

for each of the processes in the file type to process mapping generating a fingerprint of the process that was evaluated for trust; and

when determining if the requesting process is trusted:

determining a requesting process fingerprint of the requesting process; and

comparing the requesting process fingerprint with the previously

determined fingerprint of the process that was evaluated for trust, wherein allowing or blocking the IQ request is further based on the comparison of the requesting process fingerprint and the previously determined fingerprint.

7 . The system of claim 6 , wherein, responsive to a failed match between the requesting process fingerprint and the previously determined fingerprint, the method further comprises re-evaluating the trustworthiness of the requesting process.

8 . The system of claim 5 , wherein the system structure comprises a macOS system structure.

9 . A non-transitory computer readable media having encoded thereon instructions that, when executed by a processor of a computer system, configure the computer system to perform a method comprising:

processing a system structure to automatically determine a file type to process mapping between a plurality of file types and processes used in accessing respective ones of the plurality of file types, wherein processing the system structure to automatically determine the file type to process mapping comprises:

using an API to identify a plurality of Uniform Type Identifiers (UTIs) on a given host; and

correlating UTI mappings to the registered applications or bundles that support them;

for each of the processes in the file type to process mapping, evaluating a trustworthiness of the process;

receiving at a file system an input/output (IO) request from a requesting process;

determining if the requesting process is a trusted process; and

allowing or blocking the IO request based on the determination of if the requesting process is trusted.

10 . The non-transitory computer readable media of claim 9 , wherein the method configured by the instructions further comprises:

for each of the processes in the file type to process mapping generating a fingerprint of the process that was evaluated for trust; and

when determining if the requesting process is trusted:

determining a requesting process fingerprint of the requesting process; and

comparing the requesting process fingerprint with the previously determined fingerprint of the process that was evaluated for trust,

wherein allowing or blocking the IO request is further based on the comparison of the requesting process fingerprint and the previously determined fingerprint.

11 . The non-transitory computer readable media of claim 10 , wherein, responsive to a failed match between the requesting process fingerprint and the previously determined fingerprint, the method further comprises re-evaluating the trustworthiness of the requesting process.

12 . The non-transitory computer readable media of claim 9 , wherein the system structure comprises a macOS system structure.