IP Library Granted Patent US 11,245,679
Granted Patent B1
US 11,245,679 · App. 15/813,482 · Granted Feb 8, 2022

Securing external access to runtime services in appliances

Inventors: Zhi Su (Beijing, CN); Li Zhen You (Beijing, CN); Xiaohong Liu (Beijing, CN)
Assignee: Veritas Technologies LLC
H04L63/068G06F11/362G06K19/06037H04L63/083
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 11,245,679
App. No.
15/813,482
Granted
Feb 8, 2022
Kind
B1
Abstract

Disclosed herein are methods, systems, and processes to secure external access to runtime systems in appliances. A request to register a security token configured to permit access to a computing system is received at the computing system. An authorization response authenticating the security token is sent. Another request to access the computing system based on the authenticated security token is received, and access is permitted to the computing system.

Claims (97)

1. A computer-implemented method comprising:

generating a security token at a client controlled computing device, wherein

the security token is generated and sent to a support computing device to authorize limited access to a debug mode of an appliance that is providing business services to the client controlled computing device,

the security token is configured to limit access to the debug mode using debug mode login credentials, and

the security token is configured to control types of commands that are available through a command line interface shell (CLISH) in the debug mode of the appliance;

receiving a first request to register the security token from the client controlled computing device at the appliance, wherein

the appliance comprises software configured to perform one or more internal computing services, a graphical user interface (GUI), and the CLISH, and the security token is received from the client controlled computing device at the GUI,

the appliance is configured to prevent access to change the one or more internal computing services during a runtime mode of operation of the appliance,

the appliance is configured with the debug mode, and

the debug mode is configured to be accessed via the CLISH, wherein the CLISH is configured as a restrictive shell to restrict direct access to low-level functions of the appliance while in the debug mode;

receiving a second request to register the security token from the support computing device that is different from the client controlled computing device and that provides technical support to the appliance without receiving business services therefrom, wherein

the second request to register the security token is received from the support computing device at the GUI of the appliance;

in response to receiving the second request to register the security token from the support computing device at the GUI of the appliance,

determining, by the appliance, that the security token authorizes access to the debug mode,

sending an authorization response authenticating the security token to the support computing device,

receiving login credentials and token authorization information at the CLISH from the support computing device, and

authorizing the support computing device to access the debug mode if the token authorization information indicates that the support computing device is authorized to access the debug mode of the appliance;

receiving command line commands at the CLISH from the support computing device to perform one or more operations in the debug mode of the appliance, wherein

the one or more operations are configured to be performed in response to the command line commands received from the support computing device at the CLISH, and

commands available through the CLISH in the debug mode are limited, at least in part, to the types of commands authorized by the security token; and

allowing multiple, separate commands to be received at the CLISH from the support computing device and executed during the debug mode so long as the security token remains authorized.

2. The computer-implemented method of claim 1 , wherein

the security token comprises a Quick Response (QR) code, and

the authorization response authenticating the security token is sent if the security token matches the QR code.

3. The computer-implemented method of claim 1 , further comprising:

determining that the access to the debug mode of the appliance has expired as determined by authorizations associated with the security token; and

invalidating the security token associated with the second request when the access to the debug mode of the appliance has expired as determined by authorizations associated with by security token.

4. The computer-implemented method of claim 1 , further comprising:

permitting debugging of one or more input commands and/or one or more output commands using the CLISH, without entering an operating system of the appliance in a way that would require elevation of the security token to a root privilege.

5. The computer-implemented method of claim 4 , wherein

preventing elevation of the security token to the root privilege does not prevent monitoring of a real-time output of the one or more output commands, and

the real-time output occurs during a runtime state of the appliance.

6. A non-transitory computer readable storage medium comprising program instructions executable to perform a method comprising:

generating a security token at a client controlled computing device, wherein

the security token is generated and sent to a support computing device to authorize limited access to a debug mode of an appliance that is providing business services to the client controlled computing device,

the security token is configured to limit access to the debug mode using debug mode login credentials, and

the security token is configured to control types of commands that are available through a command line interface shell (CLISH) in the debug mode of the appliance;

receiving a first request to register the security token from the client controlled computing device at the appliance, wherein

the appliance comprises software configured to perform one or more internal computing services while in a runtime mode of operation of the appliance, a graphical user interface (GUI), and the CLISH, and the security token is received from the client controlled computing device at the GUI,

the appliance is configured to prevent access to change the one or more internal computing services during the runtime mode of operation of the appliance,

the appliance is configured with the debug mode, and

the debug mode is configured to be accessed via the CLISH, wherein the CLISH is configured as a restrictive shell to restrict direct access to low-level functions of the appliance while in the debug mode;

receiving a second request to register the security token from the support computing device that is different from the client controlled computing device and that provides technical support to the appliance without receiving business services therefrom, wherein

the second request to register the security token is received from the support computing device at the GUI of the appliance;

in response to receiving the second request to register the security token from the support computing device at the GUI of the appliance,

determining, by the appliance, that the security token authorizes access to the debug mode,

sending an authorization response authenticating the security token to the support computing device,

receiving login credentials and token authorization information at the CLISH from the support computing device, and

authorizing the support computing device to access the debug mode if the token authorization information indicates that the support computing device is authorized to access the debug mode of the appliance;

receiving command line commands at the CLISH from the support computing device to perform one or more operations in the debug mode of the appliance, wherein

the one or more operations are configured to be performed in response to the command line commands received from the support computing device at the CLISH, and

commands available through the CLISH in the debug mode are limited, at least in part, to the types of commands authorized by the security token; and

allowing multiple, separate commands to be received at the CLISH from the support computing device and executed during the debug mode so long as the security token remains authorized.

7. The non-transitory computer readable storage medium of claim 6 , wherein

the security token comprises a Quick Response (QR) code, and

the authorization response authenticating the security token is sent if the security token matches the QR code.

8. The non-transitory computer readable storage medium of claim 6 , wherein the method further comprises:

determining that the access to the debug mode of the appliance has expired; and

invalidating the security token associated with the second request.

9. The non-transitory computer readable storage medium of claim 6 , wherein the method further comprises:

permitting debugging of one or more input commands and/or one or more output commands using the CLISH, without entering an operating system of the appliance in a way that would require elevation of the security token to a root privilege.

10. The non-transitory computer readable storage medium of claim 9 , wherein

preventing elevation of the security token to the root privilege does not prevent monitoring of a real-time output of the one or more output commands; and

the real-time output occurs during a runtime state of the appliance.

11. A system comprising:

a client controlled computing device;

a support computing device;

an appliance;

wherein the client controlled computing device, the support computing device, and the appliance are configured with instructions executable by one or more processors to cooperatively perform a method comprising:

generating a security token at the client controlled computing device, wherein

the security token is generated and sent to the support computing device to authorize limited access to a debug mode of the appliance that is providing business services to the client controlled computing device,

the security token is configured to limit access to the debug mode using debug mode login credentials, and

the security token is configured to control types of commands that are available through a command line interface shell (CLISH) in the debug mode of the appliance;

receiving a first request to register the security token from the client controlled computing device at the appliance, wherein

the appliance comprises software configured to perform one or more internal computing services, a graphical user interface (GUI), and the CLISH, and the security token is received from the client controlled computing device at the GUI,

the appliance is configured to prevent access to change the one or more internal computing services during a runtime mode of the appliance,

the appliance is configured with the debug mode, and

the debug mode is configured to be accessed via the CLISH, wherein the CLISH is configured as a restrictive shell to restrict direct access to low-level functions of the appliance while in the debug mode;

receiving a second request to register the security token from the support computing device that is different from the client controlled computing device and that provides technical support to the appliance without receiving business services therefrom, wherein

the second request to register the security token is received from the support computing device at the GUI of the appliance;

in response to receiving the second request to register the security token from the support computing device at the GUI of the appliance,

determining, by the appliance, that the security token authorizes access to the debug mode,

sending an authorization response authenticating the security token to the support computing device,

receiving login credentials and token authorization information at the CLISH from the support computing device, and

authorizing the support computing device to access the debug mode if the token authorization information indicates that the support computing device is authorized to access the debug mode of the appliance;

receiving command line commands at the CLISH from the support computing device to perform one or more operations in the debug mode of the appliance, wherein

the one or more operations are configured to be performed in response to the command line commands received from the support computing device at the CLISH, and

commands available through the CLISH in the debug mode are limited, at least in part, to the types of commands authorized by the security token; and

allowing multiple, separate commands to be received at the CLISH from the support computing device and executed during the debug mode so long as the security token remains authorized.

12. The system of claim 11 , wherein

the security token comprises a Quick Response (QR) code, and

the authorization response authenticating the security token is sent if the security token matches the QR code.

13. The system of claim 11 , wherein the method further comprising:

permitting debugging of one or more input commands and/or one or more output commands using the CLISH, without entering an operating system of the appliance in a way that would require elevation of the security token to a root privilege.

14. The system of claim 13 , wherein

preventing elevation of the security token to the root privilege does not prevent monitoring of a real-time output of the one or more output commands; and

the real-time output occurs during a runtime state of the appliance.

Assignments (11)
AMENDMENT NO. 1 TO PATENT SECURITY AGREEMENT Recorded Apr 8, 2025
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 070779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2025
From: VERITAS TECHNOLOGIES LLC
To: COHESITY, INC.
Reel/Frame 070335/0013 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069697/0238 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
SECURITY INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK. N.A.
Reel/Frame 069890/0001 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS AT R/F 052426/0001 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 054535/0565 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Apr 16, 2020
From: VERITAS TECHNOLOGIES, LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 052426/0001 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Mar 18, 2020
From: VERITAS TECHNOLOGIES LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 052189/0311 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2018
From: SU, ZHI; YOU, LI ZHEN; LIU, XIAOHONG
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 044613/0153 →
Cited By (3)
US 12,250,207 US 12,368,590 US 12,621,291