IP Library Granted Patent US 12,430,435
Granted Patent B2
US 12,430,435 · App. 18/193,377 · Granted Sep 30, 2025

Shadow backup and anti-malware protection for UNIX-based machines

Inventors: Vladimir Strogov (Singapore, SG); Serg Bell (Singapore, SG); Aliaksei Dodz (Singapore, SG); Denis Kopyrin (Singapore, SG); Stanislav Protasov (Singapore, SG)
Assignee: Acronis International GmbH
G06F21/566G06F11/1451
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 12,430,435
App. No.
18/193,377
Granted
Sep 30, 2025
Kind
B2
Abstract

Systems and methods for embedding into a storage stack of a UNIX based computing device. A method includes building a file storage map for a file stored in computing device data storage, intercepting a system call associated with the file, intercepting a storage stack operation, and analyzing the system call and the storage stack operation using the file storage map to determine a change to a data block of the file. The method further includes building a shadow copy of the file on backup storage. The method further includes detecting a malicious operation based on the change to the data block.

Claims (39)

1. A method for embedding into a storage stack of a computing device, the storage stack including a file system, the computing device including a computing device data storage, the method comprising:

intercepting at least one system call associated with a file;

building a file storage map for the file stored in the computing device data storage;

intercepting at least one storage stack operation;

building a shadow backup on a backup data storage to create a file copy, the file copy created only when the intercepted at least one system call or the intercepted at least one storage stack operation accesses the file;

analyzing the at least one system call and the at least one storage stack operation using the file storage map to determine a change to at least one data block of the file;

updating the file copy on the backup data storage corresponding to the changed at least one data block only when the at least one data block of the file is changing.

2. The method of claim 1 , wherein intercepting the at least one storage stack operation comprises hooking a block layer request.

3. The method of claim 1 , wherein intercepting the at least one system call comprises hooking a system call invoked by the at least one application.

4. The method of claim 1 , wherein intercepting the at least one system call and intercepting at least one storage stack operation are executed in parallel.

5. The method of claim 1 , wherein the analyzing includes comparing a block structure of the file in the computing device data storage with a block structure of the file copy in the backup data storage using the file storage map.

6. The method of claim 1 , wherein the file is stored in a block structure of non-sequential blocks in the computing device data storage and the file copy is stored in a block structure of sequential blocks in the backup data storage.

7. The method of claim 1 , further comprising:

analyzing the at least one system call to determine whether updating the file copy on the backup data is to be performed.

8. The method of claim 1 , wherein the shadow backup comprises a data structure including a data block change history of the file, wherein the data block change history comprises a plurality of blocks, each block corresponding to a chronological representation of the file and metadata corresponding to an entropy characteristic for a given chronological representation.

9. The method of claim 8 , further comprising:

detecting a malicious operation based on the entropy characteristic of the data block change history.

10. The method of claim 9 , wherein the entropy characteristic is a count associated with the number of changes to the file for the given chronological representation.

11. A system for embedding into a storage stack of a computing device, the storage stack including a file system, the computing device including a computing device data storage, the system comprising:

a kernel module configured communicatively coupled with the storage stack and configured to:

intercept at least one system call associated with the file,

build a file storage map for a file stored in the computing device data storage,

intercept at least one storage stack operation, and

analyze the at least one system call and the at least one storage stack operation using the file storage map to determine a change to at least one data block of the file;

a backup data storage; and

a backup module operably coupled with the kernel module and the backup data storage and configured to:

build a shadow backup on a backup data storage to create a file copy, the file copy created only when the intercepted at least one system call or the intercepted at least one storage stack operation accesses the file, and

update the file copy on the backup data storage corresponding to the changed at least one data block only when the at least one data block of the file is changing.

12. The system of claim 9 , wherein intercepting at least one storage stack operation comprises hooking a block layer request.

13. The system of claim 9 , wherein intercepting at least one system call comprises hooking a system call invoked by the at least one application.

14. The system of claim 9 , wherein intercepting the at least one system call and intercepting at least one storage stack operation are executed in parallel.

15. The system of claim 9 , wherein the kernel module is further configured to analyze the at least one system call and the at least one storage stack operation using the file storage map to determine a change to at least one data block of the file by comparing a block structure of the file in the computing device data storage with a block structure of the file copy in the backup data storage using the file storage map.

16. The system of claim 9 , wherein the file is stored in a block structure of non-sequential blocks in the computing device data storage and the file copy is stored in a block structure of sequential blocks in the backup data storage.

17. The system of claim 9 , further comprising:

a security application module configured to analyze the at least one system call to determine whether updating the file copy on the backup data is to be performed.

18. The system of claim 9 , wherein the backup module is further configured to build the shadow backup in a shadow backup data structure including a data block change history of the file, wherein the data block change history comprises a plurality of blocks, each block corresponding to a chronological representation of the file and metadata corresponding to an entropy characteristic for a given chronological representation.

19. The system of claim 18 , further comprising:

a security application module configured to detect a malicious operation based on the entropy characteristic of the data block change history.

20. The system of claim 19 , wherein the entropy characteristic is a count associated with the number of changes to the file for the given chronological representation.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENTS LISTED BY DELETING PATENT APPLICATION NO. 18388907 FROM SECURITY INTEREST PREVIOUSLY RECORDED ON REEL 66797 FRAME 766. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Nov 13, 2024
From: ACRONIS INTERNATIONAL GMBH
To: MIDCAP FINANCIAL TRUST
Reel/Frame 069594/0136 →
SECURITY INTEREST Recorded Mar 14, 2024
From: ACRONIS INTERNATIONAL GMBH
To: MIDCAP FINANCIAL TRUST
Reel/Frame 066797/0766 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2023
From: STROGOV, VLADIMIR; BELL, SERG; DODZ, ALIAKSEI; KOPYRIN, DENIS; PROTASCOV, STANISLAV
To: ACRONIS INTERNATIONAL GMBH
Reel/Frame 063178/0609 →