Securing Sensitive Data Executed By Program Scripts In A Computing Device
20220366070 ยท 2022-11-17
Inventors
Cpc classification
G06F21/6227
PHYSICS
G06F21/604
PHYSICS
G06F21/6281
PHYSICS
International classification
Abstract
The present invention relates to the security of sensitive data executed by program files in a computing device. A first file comprising of a sequence of instructions that can be configured onto the memory and executed by a processor is stored in a storage device of the device. A suitable program comprising a sequence of instructions is configured on memory and coupled to an encrypted credential store only accessible to the program instance being executed by a processor. A encrypted data store coupled to above said program is provided on the device's storage device. The successful execution of said first file requires access to sensitive data such as but not limited to passwords, API keys or other sensitive parameters, which are provided at run-time by the program coupled to the encrypted credential store.
Claims
1. A computing device comprising of: a first file, such as but not limited to a program script, stored in a storage device comprising of a sequence of instructions that can be configured onto the memory and executed by a processor, wherein: the successful execution of said script's sequence of instructions requires access to sensitive data such as but not limited to passwords, API keys or other sensitive parameters, and; said sensitive data is provided at script run-time by a suitably provided program configured to secure sensitive data required for the successful execution of said script's sequence of instructions; a suitable program comprising a sequence of instructions configured on memory and coupled to an encrypted credential store only accessible to the program instance being executed by a processor, wherein: the said program is capable of accessing sensitive data in the encrypted data store without revealing the access or decryption keys, and; said program is capable of of storing sensitive data in the encrypted data store inaccessible to any external programs or processes; an encrypted data store coupled to above said suitable program, and comprising of sensitive data only accessible to the said program and no external programs or processes; a memory; a processor, and; a storage device.
2. The computing device as in claim 1, wherein said suitable program is capable of detecting the execution of provided first file, by the processor and to provide access to sensitive data such as access keys to said script at run-time.
3. The computing device as in claim 1, wherein said suitable program is capable of detecting the execution of provided first file by the processor and to remove access to sensitive data such as access keys to said script wherein said script is not being executed.
4. The computing device as in claim 1, wherein said suitable program is capable of causing the execution of provided first file such as a program script by the processor and to provide access to sensitive data such as access keys to said script at run-time.
5. The computing device as in claim 2, wherein said suitable program is capable of creating a temporary file on the storage device containing sensitive data to provide access to sensitive data such as access keys wherein execution of provided first file by the processor is detected.
6. The computing device as in claim 5, wherein said suitable program is capable of removing said temporary file created on the storage device containing sensitive data for providing access to sensitive data such as access keys wherein execution of provided first file by the processor is stopped.
7. The computing device as in claim 1, wherein said suitable program is capable of providing access to sensitive data such as access keys to said script wherein said script is being executed in certain conditions only, including but not limited to time, date, or any such conditions detectable by said program for example users logged into the device.
8. The computing device as in claim 1, wherein said sensitive data in said encrypted data store is tracked by a publicly available unique identifier that is not related to stored credentials.
9. The computing device as in claim 1, wherein said program is capable of allowing a user access to it, and by extension the encrypted data store without revealing the contents of the store to any other external programs and processes.
10. A method of secure execution of sensitive data executed by a file such as program script, the method comprising of: storing a first file such as a program script in a storage device, the file comprising of a sequence of instructions that can be configured onto the memory and executed by a processor, wherein: the successful execution of said file's sequence of instructions requires access to sensitive data such as but not limited to passwords, API keys or other sensitive parameters, and; said sensitive data is provided at run-time by a suitably provided program configured to secure sensitive data required for the successful execution of said file's sequence of instructions; executing a suitable program comprising a sequence of instructions configured on memory and coupled to an encrypted credential store only accessible to the program and its process, wherein the execution of said program by the processor enables accessing sensitive data in the encrypted data store by the first file such as a program script at run-time without revealing the access or decryption keys to the encrypted data store.
11. The method as in claim 10, wherein said suitable program is capable of allowing a user access to it, and by extension the encrypted data store without revealing the contents of the store to any other external programs and processes.
12. The method as in claim 10, wherein said program is capable of storing sensitive data in the encrypted data store inaccessible to any external programs or processes.
13. The method as in claim 10, wherein said program is capable of determining the execution of said first file such as a program script stored in storage device.
14. A method performed by a suitable program configured on memory and executed by a processor, the method comprising of: receiving sensitive data such as API keys, access credentials or passwords; storing received sensitive data in an encrypted data store; determining the execution of a first file, such as a program script, stored on device that requires access to said stored sensitive data; receiving a request from said first file stored on device for said sensitive data, and; providing access to said sensitive data during said first file run-time.
15. The method as in claim 14, wherein said stored sensitive data is identifiable by a unique identifier.
16. The method as in claim 15, wherein said file requests said program access to said sensitive data using said sensitive data unique identifier.
17. The method as in claim 14, further comprising receiving a conditional mechanism wherein access to said sensitive data is limited to only certain conditions including but not limited to the date, time or any such conditions determinable by said suitable program.
18. The method as in claim 17, further comprising sending an alert if conditions for access are breached by a stored first file such as a program script.
19. A method of providing secure execution of sensitive data executed by a file such program script, the method comprising of: providing a suitable program configured on the memory and coupled to an encrypted data store on the memory of a computing device, such that data in the data store is not accessible to external programs and processes; providing of credentials or other sensitive data to the program for storage in the encrypted data store, each credential tracked by a unique identifier; providing of an executable file on the storage device configurable on memory with an executable sequence of instructions to be performed by the processor, and; providing to the executable file the access to sensitive data at run-time by the suitable program coupled to encrypted data store.
Description
BRIEF DESCRIPTION OF FIGURES
[0020] The invention is further described with respect to the embodiment as drawn in the accompanying figures:
[0021]
[0022]
[0023]
[0024]
DETAILED DESCRIPTION OF THE INVENTION
[0025] For purposes of this disclosure, file and script could be used interchangeably
[0026] In a first embodiment according to
[0027] Typically, such sensitive data is provided to the file or script in either plain text, or as a hidden file in what is commonly known as the environment variables. However, even the hidden file would be accessible by an actor logged into the computing device. As such, said sensitive data required for successful execution of the script by the processor is provided at script run-time by a suitably provided program configured to provide access to sensitive data required for the successful execution of said script's sequence of instructions. In its essence, a suitable program that provides access to sensitive data is any such program comprising a sequence of instructions configured on memory and coupled to an encrypted credential store 40 only accessible to the program instance being executed by the processor. The program is capable of accessing sensitive data in the encrypted data store without revealing the access or decryption keys, and is also capable of of storing sensitive data in the encrypted data store inaccessible to any external programs or processes. In its essence, the program is needed with self-encrypted data whereby the key to access the encrypted credential store 40 must not be visible from outside, therefore the key must e.g be compiled inside the program and be protected against decompilation or other methods of analysis. Alternatively, the access key could be protected using any such suitable method, such as a key that is stored in a filesystem for which only the program has access to. It is not preferable that it is protected with a password with which the program and its data can be access from outside.
[0028] Further still, the suitable program could be made capable of detecting the execution of the provided first file such as a program script 30 by the processor and to provide access to sensitive data such as access keys or password to said script at run-time. For instance, by detecting the running processes, the program could subsequently avail access to the sensitive data to the process running the first file such as a program script. It could also be configured to remove access to the sensitive data such as access keys to said script wherein said script is not being executed. The program could further be configured capable of causing the execution of provided first file such as a program script by the processor and to provide access to sensitive data such as access keys to said script at run-time. Notably, the access could be a set of parameters passed to the first file such as a program script during its run-time, or a temporary file created by the program on the storage device containing sensitive to provide access to sensitive data such as access keys. In the case where a file is created, the program is capable of removing said temporary file created on the storage device containing sensitive data to remove access to sensitive data such as access keys where the execution of provided first file such as a program script by the processor is stopped.
[0029] The provision of access to sensitive data by the suitable program 20, may further depend upon certain conditions such as time, date, or any such conditions detectable by said program for example users logged into the device. Moreover, the sensitive data in the encrypted data store 40 could be tracked by a publicly available unique identifier, public in the context of the processing environment, that is not related to stored credentials. For the purposes of creating, removing and altering the contents of the encrypted data store 40, a suitable mechanism of accessing the program is provided. The program is capable of allowing a user access to it, and by extension the encrypted data store without revealing the contents of the store to any other external programs and processes, external in the context of the processing environment of the device.
[0030] In a second embodiment according to
[0031] In a further embodiment according to
[0032] In the final embodiment according
INDUSTRIAL APPLICATION
[0033] The current invention technology is applicable in the security industry.