IP Library Granted Patent US 7,805,419
Granted Patent B2
US 7,805,419 · App. 11/483,505 · Granted Sep 28, 2010

System for tracking and analyzing the integrity of an application

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 7,805,419
App. No.
11/483,505
Granted
Sep 28, 2010
Kind
B2
Abstract

The invention is a method for tracking and analyzing an application for modifications and changes. The method is used to ensure the integrity of the application remains intact. The application is inventoried upon setup. The application is then subsequently re-inventoried on a regular basis. Each new inventory is examined against the original inventory to determine if any changes have taken place. When a change is detected, the change is highlighted to be approved or examined to determine the specifics of the change in order that corrective action can be taken if deemed necessary.

Claims (49)

1. A method for detecting modifications in an application executing on a computer system comprising:

connecting to the application on the computer system;

inventorying the application in order to discover a baseline inventory of existing items in the application, wherein the baseline inventory of existing items in the application includes a set of stored procedures, the set of stored procedures including user-defined stored procedures and system stored procedures, the step of inventorying comprising the step of running commands or requests in order to enumerate the items in the application;

storing the baseline inventory to persistent storage;

collecting a second inventory list of items in the application by running commands or requests in order to enumerate a second set of items in the application;

comparing the second inventory list of items with the baseline inventory of the application to determine a set of differences between them by enumerating each item in the second inventory with items in the baseline inventory, determining if any item exists in the baseline inventory but not in the second inventory, determining if any item exists in the second inventory but not in the baseline inventory, determining if any item in both the baseline inventory and the second inventory has been changed;

reporting out the set of differences between the baseline inventory and the second inventory to enable a determination of whether unauthorized activity has occurred at the application level;

determining from the set of differences between the baseline inventory and the second inventory an instance of unauthorized activity; and

authorizing or rejecting the instance of unauthorized activity.

2. The method according to claim 1 , further comprising the steps of:

updating the baseline inventory with an item from the second inventory;

removing the item from the baseline inventory if it no longer exists in the second inventory;

adding the item to the baseline inventory if it is not in the baseline inventory and it exists in the second inventory.

3. The method according to claim 1 , further comprising the step of recording the set of differences in persistent storage.

4. The method according to claim 1 , wherein the item is a set of objects including tables, views, stored procedures and triggers.

5. The method according to claim 1 , wherein the item is a group of settings including configuration options, permission settings and system parameters.

6. The method according to claim 1 , wherein the item is a set of values including a string value, a numeric data value stored in a table and a binary data value stored in the table.

7. A method for detecting unauthorized modifications in a database application executing on a computer system comprising:

connecting to a database;

inventorying the database in order to discover a baseline inventory of existing items in the database, wherein the baseline inventory of existing items in the application includes a set of stored procedures, the set of stored procedures including user-defined stored procedures and system stored procedures, the step of inventorying comprising the step of running commands or requests in order to enumerate the items in the database;

storing the baseline inventory to persistent storage;

collecting a second inventory list of items in the database by running commands or requests in order to enumerate a second set of items in the database;

comparing the second inventory list of items with the baseline inventory of the database to determine a set of differences between them by enumerating each item in the second inventory with items in the baseline inventory, determining if an item exists in the baseline inventory but not in the second inventory, determining if an item exists in the second inventory but not in the baseline inventory, determining if an item in both the baseline inventory and the second inventory has been changed;

reporting out the set of differences between the baseline inventory and the second inventory to enable a determination of whether unauthorized activity has occurred at the application level;

determining from the set of differences between the baseline inventory and the second inventory an instance of unauthorized activity; and

authorizing or rejecting the instance of unauthorized activity.

8. The method according to claim 7 , further comprising the steps of:

updating the baseline inventory with an item from the second inventory;

removing the item from the baseline inventory if it no longer exists in the second inventory;

adding the item to the baseline inventory if it is not in the baseline inventory and it exists in the second inventory.

9. The method according to claim 7 , further comprising the step of recording the set of differences in persistent storage.

10. The method according to claim 7 , wherein the command is a SQL statement.

11. The method according to claim 7 , wherein collecting the list of items includes examining a data dictionary for the database.

12. The method according to claim 7 , wherein collecting the list of items includes calling functions within the database to enumerate a list of configuration settings or options.

13. A method for detecting unauthorized modifications in a web application executing on a server comprising:

connecting to the web application on the server;

inventorying the web application in order to discover a baseline inventory of existing items in the web application, wherein the baseline inventory of existing items in the application includes a set of stored procedures, the set of stored procedures including user-defined stored procedures and system stored procedures, the step of inventorying comprising the steps of crawling the web application and running commands in order to enumerate the items in the web application;

storing the baseline inventory to persistent storage;

collecting a second inventory list of items in the web application by crawling the web application and running commands in order to enumerate a second set of items in the web application;

comparing the second inventory list of items with the baseline inventory of the web application to determine a set of differences between them by enumerating each item in the second inventory with items in the baseline inventory, determining if an item exists in the baseline inventory but not in the second inventory, determining if an item exist in the second inventory but not in the baseline inventory, determining if an item in both the baseline inventory and the second inventory has been changed;

reporting out the set of differences between the baseline inventory and the second inventory to enable a determination of whether unauthorized activity has occurred;

determining from the set of differences between the baseline inventory and the second inventory an instance of unauthorized activity; and

authorizing or rejecting the instance of unauthorized activity.

14. The method according to claim 13 , further comprising the steps of:

updating the baseline inventory with an item from the second inventory;

removing the item from the baseline inventory if it no longer exists in the second inventory;

adding the item to the baseline inventory if it is not in the baseline inventory and it exists in the second inventory.

15. The method according to claim 13 , wherein the step of crawling the web application includes the step of actuating a web interface.

16. The method according to claim 13 , further comprising the step of recording the set of differences in persistent storage.

Assignments (13)
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 73649/0743 Recorded Apr 30, 2026
From: ANKURA TRUST COMPANY, LLC
To: TRUSTWAVE HOLDINGS, INC.; STROZ FRIEDBERG INC.; STROZ FRIEDBERG, LLC
Reel/Frame 075371/0363 →
SECURITY INTEREST Recorded Feb 18, 2026
From: TRUSTWAVE HOLDINGS, INC.; STROZ FRIEDBERG INC.; STROZ FRIEDBERG, LLC
To: AT&T ENTERPRISES, LLC
Reel/Frame 073824/0146 →
SECURITY INTEREST Recorded Jan 30, 2026
From: TRUSTWAVE HOLDINGS, INC.; STROZ FRIEDBERG INC.; STROZ FRIEDBERG, LLC
To: ANKURA TRUST COMPANY, LLC
Reel/Frame 073649/0743 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 071508/0540 Recorded Aug 18, 2025
From: LEVELBLUE, LLC
To: TRUSTWAVE HOLDINGS, INC.
Reel/Frame 072510/0679 →
SECURITY INTEREST Recorded Jun 24, 2025
From: TRUSTWAVE HOLDINGS, INC.
To: LEVELBLUE, LLC
Reel/Frame 071508/0540 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 070952/0452 Recorded Jun 24, 2025
From: STG V, L.P.; STG VI, L.P.
To: TRUSTWAVE HOLDINGS, INC.
Reel/Frame 071723/0263 →
SECURITY INTEREST Recorded Apr 25, 2025
From: TRUSTWAVE HOLDINGS, INC.
To: STG V, L.P.; STG VI, L.P.
Reel/Frame 070952/0452 →
SECURITY INTEREST Recorded Oct 22, 2024
From: TRUSTWAVE HOLDINGS, INC.
To: CYBEREASON INC.
Reel/Frame 068974/0691 →
SECURITY INTEREST Recorded Sep 12, 2024
From: TRUSTWAVE HOLDINGS, INC.
To: CYBEREASON INC.
Reel/Frame 068572/0937 →
SECURITY INTEREST Recorded Jan 8, 2024
From: TRUSTWAVE HOLDINGS, INC.
To: SINGTEL ENTERPRISE SECURITY (US), INC.
Reel/Frame 066050/0947 →
MERGER Recorded May 20, 2014
From: APPLICATION SECURITY, INC.
To: TRUSTWAVE HOLDINGS, INC.
Reel/Frame 032931/0141 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2014
From: NEWMAN, AARON CHARLES
To: APPLICATION SECURITY, INC.
Reel/Frame 032715/0269 →
SECURITY AGREEMENT Recorded Oct 28, 2013
From: APPLICATION SECURITY, INC.
To: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
Reel/Frame 031499/0332 →