IP Library Granted Patent US 10,169,595
Granted Patent B2
US 10,169,595 · App. 15/160,977 · Granted Jan 1, 2019

Detecting malicious data access in a distributed environment

Inventors: Eric L. Barsness (Pine Island, MN); Daniel E. Beuch (Rochester, MN); Brian R. Muras (Otsego, MN); John M. Santosuosso (Rochester, MN)
Assignee: International Business Machines Corporation
G06F21/6209G06F21/552G06F21/554H04L63/102H04L63/1425G06F21/62G06F21/6218H04L63/10H04L63/14H04L63/1433H04L63/1441
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 10,169,595
App. No.
15/160,977
Granted
Jan 1, 2019
Kind
B2
Abstract

Systems, methods, and computer program products to perform an operation comprising identifying a first access to a first subset of a first database table on a first storage node, of a plurality of storage nodes, identifying a second access to a second subset of the first database table on a second storage node, of the plurality of storage nodes, and performing a predefined operation to restrict access to the first database table on the plurality of storage nodes based on the first and second accesses.

Claims (51)

1. A method, comprising:

identifying a first access to a first subset of a first database table on a first storage node, of a plurality of storage nodes;

identifying a second access to a second subset of the first database table on a second storage node, of the plurality of storage nodes; and

performing a predefined operation to restrict access to the first database table on the plurality of storage nodes based on the first and second accesses, and further based on determining that the first database table is being improperly accessed, wherein determining that the first database table is being improperly accessed comprises:

comparing a first bitmap associated with the first database table on the first storage node to a second bitmap associated with the first database table on the second storage node, wherein comparing the first and second bitmaps comprises performing at least one of: (i) an AND operation, and (ii) an OR operation on the first and second bitmaps; and

determining that a result of the comparison of the bitmaps exceeds a predefined threshold.

2. The method of claim 1 , wherein the second subset of the first database table is a copy of the first subset of the first database table, wherein the first and second storage nodes are different storage nodes located on different systems, wherein an indication of the first access is stored in the first bitmap subsequent to the first access, wherein an indication of the second access is stored in the second bitmap subsequent to the second access.

3. The method of claim 1 , wherein determining the first database table is being improperly accessed further comprises:

comparing the result of the first and second bitmaps to a third bitmap, wherein the third bitmap reflects accesses to the first database table on the plurality of storage nodes by trusted applications; and

determining that the comparison of the result of the comparison of the first and second bitmaps to the third bitmap exceeds a predefined threshold.

4. The method of claim 1 , wherein the first and second bitmaps comprise three-dimensional bitmaps, wherein a first dimension of the first and second bitmaps is configured to store an indication of an access to each of a plurality of rows of the first database table, wherein a second dimension of the first and second bitmaps is configured to store an indication of an access to each of a plurality of columns of the first database table, and wherein a third dimension of the first and second bitmaps is configured to store an indication of a user accessing the first database table.

5. The method of claim 1 , wherein the first database table on the first storage node is a modified version of the first database table on the second storage node, wherein the method further comprises:

defining an association between the first database table on the first storage node and the first database table on the second storage node; and

subsequent to identifying the first and second accesses and prior to performing the predefined operation, determining that the association between the first database table on the first storage node and the first database table on the second storage node exists.

6. The method of claim 1 , wherein the predefined operation is performed upon further determining:

that the first and second accesses were made by at least one of: (i) a first user, and (ii) a first computer; and

that the first and second accesses were not made by a trusted application.

7. A system, comprising:

a processor; and

a memory containing a program which when executed by the processor performs an operation comprising:

identifying a first access to a first subset of a first database table on a first storage node, of a plurality of storage nodes;

identifying a second access to a second subset of the first database table on a second storage node, of the plurality of storage nodes; and

performing a predefined operation to restrict access to the first database table on the plurality of storage nodes based on the first and second accesses, and further based on determining that the first database table is being improperly accessed, wherein determining that the first database table is being improperly accessed comprises:

comparing a first bitmap associated with the first database table on the first storage node to a second bitmap associated with the first database table on the second storage node, wherein comparing the first and second bitmaps comprises performing at least one of: (i) an AND operation, and (ii) an OR operation on the first and second bitmaps; and

determining that a result of the comparison of the bitmaps exceeds a predefined threshold.

8. The system of claim 7 , wherein the second subset of the first database table is a copy of the first subset of the first database table, wherein the first and second storage nodes are different storage nodes located on different systems, wherein an indication of the first access is stored in the first bitmap subsequent to the first access, wherein an indication of the second access is stored in the second bitmap subsequent to the second access.

9. The system of claim 7 , wherein determining the first database table is being improperly accessed further comprises:

comparing the result of the first and second bitmaps to a third bitmap, wherein the third bitmap reflects accesses to the first database table on the plurality of storage nodes by trusted applications; and

determining that the comparison of the result of the comparison of the first and second bitmaps to the third bitmap exceeds a predefined threshold.

10. The system of claim 7 , wherein the first and second bitmaps comprise three-dimensional bitmaps, wherein a first dimension of the first and second bitmaps is configured to store an indication of an access to each of a plurality of rows of the first database table, wherein a second dimension of the first and second bitmaps is configured to store an indication of an access to each of a plurality of columns of the first database table, and wherein a third dimension of the first and second bitmaps is configured to store an indication of a user accessing the first database table.

11. The system of claim 7 , wherein the first database table on the first storage node is a modified version of the first database table on the second storage node, wherein the operation further comprises:

defining an association between the first database table on the first storage node and the first database table on the second storage node; and

subsequent to identifying the first and second accesses and prior to performing the predefined operation, determining that the association between the first database table on the first storage node and the first database table on the second storage node exists.

12. The system of claim 7 , wherein the predefined operation is performed upon further determining:

that the first and second accesses were made by at least one of: (i) a first user, and (ii) a first computer; and

that the first and second accesses were not made by a trusted application.

13. A computer program product, comprising:

a non-transitory computer-readable storage medium having computer-readable program code embodied therewith, the computer-readable program code executable by one or more computer processors to perform an operation comprising:

identifying a first access to a first subset of a first database table on a first storage node, of a plurality of storage nodes;

identifying a second access to a second subset of the first database table on a second storage node, of the plurality of storage nodes; and

performing a predefined operation to restrict access to the first database table on the plurality of storage nodes based on the first and second accesses, and further based on determining that the first database table is being improperly accessed, wherein determining that the first database table is being improperly accessed comprises:

comparing a first bitmap associated with the first database table on the first storage node to a second bitmap associated with the first database table on the second storage node, wherein comparing the first and second bitmaps comprises performing at least one of: (i) an AND operation, and (ii) an OR operation on the first and second bitmaps; and

determining that a result of the comparison of the bitmaps exceeds a predefined threshold.

14. The computer program product of claim 13 , wherein the second subset of the first database table is a copy of the first subset of the first database table, wherein the first and second storage nodes are different storage nodes located on different systems, wherein an indication of the first access is stored in the first bitmap subsequent to the first access, wherein an indication of the second access is stored in the second bitmap subsequent to the second access.

15. The computer program product of claim 13 , wherein determining the first database table is being improperly accessed further comprises:

comparing the result of the first and second bitmaps to a third bitmap, wherein the third bitmap comprises reflects accesses to the first database table on the plurality of storage nodes by trusted applications; and

determining that the comparison of the result of the comparison of the first and second bitmaps to the third bitmap exceeds a predefined threshold.

16. The computer program product of claim 13 , wherein the first and second bitmaps comprise three-dimensional bitmaps, wherein a first dimension of the first and second bitmaps is configured to store an indication of an access to each of a plurality of rows of the first database table, wherein a second dimension of the first and second bitmaps is configured to store an indication of an access to each of a plurality of columns of the first database table, and wherein a third dimension of the first and second bitmaps is configured to store an indication of a user accessing the first database table.

17. The computer program product of claim 13 , wherein the first database table on the first storage node is a modified version of the first database table on the second storage node, wherein the operation further comprises:

defining an association between the first database table on the first storage node and the first database table on the second storage node; and

subsequent to identifying the first and second accesses and prior to performing the predefined operation, determining that the association between the first database table on the first storage node and the first database table on the second storage node exists.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2022
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 061706/0202 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2016
From: BARSNESS, ERIC L.; BEUCH, DANIEL E.; MURAS, BRIAN R.; SANTOSUOSSO, JOHN M.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038662/0378 →
Continuity (1)
Related Publication 20170339150A1 · Nov 23, 2017