IP Library Granted Patent US 10,680,894
Granted Patent B2
US 10,680,894 · App. 16/242,406 · Granted Jun 9, 2020

Detecting software misconfiguration at a remote machine

Inventors: Jason Knudsen (Sunnyvale, CA); Christopher Brockington-Hill (London, GB); Jacek Lach (London, GB); Kawai Washburn (San Carlos, CA)
Assignee: Palantir Technologies Inc.
H04L41/0873H04L41/0813H04L41/22
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,680,894
App. No.
16/242,406
Granted
Jun 9, 2020
Kind
B2
Abstract

Aspects of the present disclosure relate to detecting software misconfiguration at a remote machine. A control server stores, in a data repository, a plurality of antipatterns, each antipattern relating to a misconfiguration of a remote computer system. The control server accesses data of the remote computer system. The control server runs the plurality of antipatterns on the data of the remote computer system to determine one or more misconfigurations of the remote computer system. The control server provides, as a digital transmission, an output representing the determined one or more misconfigurations of the remote computer system.

Claims (34)

1. A system comprising:

one or more processors; and

a memory comprising instructions which, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

accessing a plurality of antipatterns, each antipattern relating to a possible misconfiguration of a remote computer system, each antipattern including software that searches the remote compute system for a misconfiguration and returns an output representing the misconfiguration discovered at the remote computer system;

running the plurality of antipatterns on the data of the remote computer system to determine one or more misconfigurations of the remote computer system; and

providing, as a digital transmission to at least a data repository and an administrator client device, an additional output representing the determined one or more misconfigurations of the remote computer system, wherein the additional output representing the determined one or more misconfigurations of the remote computer system is stored in the data repository, and wherein the additional output causes display, at the administrator client device, of an antipattern summary interface, the antipattern summary interface indicating a first number of hosts to which a given antipattern from the plurality of antipatterns is applicable and a second number of hosts impacted by the determined one or more misconfigurations.

2. The system of claim 1 , wherein the first number of host include the remote computer system.

3. The system of claim 1 , wherein the plurality of antipatterns are accessed from a data storage unit different from the data repository.

4. The system of claim 1 , wherein the data of the remote computer system comprises one or more of: configuration files, log files, and system kernel settings.

5. The system of claim 1 , wherein each antipattern maps the data of the remote computer system to a numeric status code, and wherein the additional output includes the numeric status codes.

6. The system of claim 1 , wherein each antipattern comprises Python code to detect the one or more misconfigurations of the remote computer system.

7. The system of claim 6 , wherein the Python code comprises operating system-level commands passed via a Python subprocess module.

8. The system of claim 1 , wherein the additional output comprises a notification to a user of the remote computer system.

9. The system of claim 1 , the operations further comprising:

receiving, from a user of the remote computer system, a new antipattern; and

storing the new antipattern in the data repository.

10. The system of claim 1 , the operations further comprising:

remediating the one or more antipatterns.

11. A non-transitory machine-readable medium comprising instructions which, when executed by one or more processors of a machine, cause the one or more processors to perform operations comprising:

accessing a plurality of antipatterns, each antipattern relating to a possible misconfiguration of a remote computer system, each antipattern including software that searches the remote compute system for a misconfiguration and returns an output representing the misconfiguration discovered at the remote computer system;

running the plurality of antipatterns on the data of the remote computer system to determine one or more misconfigurations of the remote computer system; and

providing, as a digital transmission to at least a data repository and an administrator client device, an additional output representing the determined one or more misconfigurations of the remote computer system, wherein the additional output representing the determined one or more misconfigurations of the remote computer system is stored in the data repository, and wherein the additional output causes display, at the administrator client device, of an antipattern summary interface, the antipattern summary interface indicating a first number of hosts to which a given antipattern from the plurality of antipatterns is applicable and a second number of hosts impacted by the determined one or more misconfigurations.

12. The machine-readable medium of claim 11 , wherein the first number of host include the remote computer system.

13. The machine-readable medium of claim 11 , wherein the plurality of antipatterns are accessed from a data storage unit different from the data repository.

14. The machine-readable medium of claim 11 , wherein the data of the remote computer system comprises one or more of: configuration files, log files, and system kernel settings.

15. The machine-readable medium of claim 11 , wherein each antipattern maps the data of the remote computer system to a numeric status code, and wherein the additional output includes the numeric status codes.

16. The machine-readable medium of claim 11 , wherein each antipattern comprises Python code to detect the one or more misconfigurations of the remote computer system.

17. The machine-readable medium of claim 16 , wherein the Python code comprises operating system-level commands passed via a Python subprocess module.

18. A method comprising:

accessing a plurality of antipatterns, each antipattern relating to a possible misconfiguration of a remote computer system, each antipattern including software that searches the remote compute system for a misconfiguration and returns an output representing the misconfiguration discovered at the remote computer system;

running the plurality of antipatterns on the data of the remote computer system to determine one or more misconfigurations of the remote computer system; and

providing, as a digital transmission to at least a data repository and an administrator client device, an additional output representing the determined one or more misconfigurations of the remote computer system, wherein the additional output representing the determined one or more misconfigurations of the remote computer system is stored in the data repository, and wherein the additional output causes display, at the administrator client device, of an antipattern summary interface, the antipattern summary interface indicating a first number of hosts to which a given antipattern from the plurality of antipatterns is applicable and a second number of hosts impacted by the determined one or more misconfigurations.

19. The method of claim 18 , wherein the first number of host include the remote computer system.

20. The method of claim 18 , wherein the plurality of antipatterns are accessed from a data storage unit different from the data repository.

Assignments (8)
ASSIGNMENT OF INTELLECTUAL PROPERTY SECURITY AGREEMENTS Recorded Jul 3, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0640 →
SECURITY INTEREST Recorded Jul 3, 2022
From: PALANTIR TECHNOLOGIES INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0506 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ERRONEOUSLY LISTED PATENT BY REMOVING APPLICATION NO. 16/832267 FROM THE RELEASE OF SECURITY INTEREST PREVIOUSLY RECORDED ON REEL 052856 FRAME 0382. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 26, 2021
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 057335/0753 →
SECURITY INTEREST Recorded Jun 4, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 052856/0817 →
RELEASE OF SECURITY INTEREST Recorded Jun 4, 2020
From: ROYAL BANK OF CANADA
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 052856/0382 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS ADMINISTRATIVE AGENT
Reel/Frame 051713/0149 →
SECURITY INTEREST Recorded Jan 27, 2020
From: PALANTIR TECHNOLOGIES INC.
To: ROYAL BANK OF CANADA, AS ADMINISTRATIVE AGENT
Reel/Frame 051709/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2019
From: KNUDSEN, JASON; BROCKINGTON-HILL, CHRISTOPHER; LACH, JACEK; WASHBURN, KAWAI
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 048246/0925 →