Minimizing sensitive data exposure caused by unauthorized edge system displacement
The issue of vulnerability and exposure of sensitive data in edge systems is solved by regularly tracking the geographic location of edge systems and performing violations of isolation when permission thresholds are exceeded, and security is improved.
Patent Information
- Application Number
- CN202410906648.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-07-14
- Filing Date
- 2024-07-08
- Publication Date
- 2025-01-14
Smart Images

Figure CN119316175A_ABST
Abstract
Description
Background Art
[0001] Edge systems often physically reside and operate outside of local infrastructure boundaries and are generally susceptible to, and therefore exposed to, a higher risk of attack, theft, and / or unauthorized access to sensitive data maintained on or by the edge systems. Summary of the invention
[0002] In general, in one aspect, embodiments described herein are directed to a method for securing an edge system. The method includes: making a determination that an edge system is armed; based on the determination: detecting a geographic location difference between an edge system geographic location and a locked edge system geographic location; making a second determination that the geographic location difference is outside of an permitted threshold; and based on the second determination, performing a breached-quarantine action on the edge system.
[0003] In general, in one aspect, embodiments described herein relate to a non-transitory computer-readable medium. The non-transitory computer-readable medium includes computer-readable program code that, when executed by a computer processor, enables the computer processor to perform a method for protecting an edge system. The method includes: making a determination that an edge system is armed; based on the determination: detecting a geographic location difference between an edge system geographic location and a locked edge system geographic location; making a second determination that the geographic location difference is outside of an allowed threshold; and based on the second determination, performing an isolation violation action on the edge system.
[0004] In general, in one aspect, embodiments described herein relate to an edge system. The edge system includes: a computer processor configured at least to perform a method for protecting an edge system. The method includes: making a determination that the edge system is armed; based on the determination: detecting a geographic location difference between an edge system geographic location and a locked edge system geographic location; making a second determination that the geographic location difference is outside of an allowed threshold; and based on the second determination, performing an isolation violation action on the edge system.
[0005] Other aspects of the invention will become apparent from the following description and accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0006] Certain embodiments described herein will be described with reference to the accompanying drawings. However, the drawings only illustrate certain aspects or implementations of the embodiments by way of example and are not meant to limit the scope of the claims.
[0007] Figure 1A A system according to one or more embodiments described herein is shown.
[0008] Figure 1B An edge system according to one or more embodiments described herein is shown.
[0009] Figure 2A and Figure 2B A flow chart describing a method for minimizing exposure of sensitive data caused by unauthorized edge system displacement according to one or more embodiments described herein is shown.
[0010] Figure 3 A computing system is shown in accordance with one or more embodiments described herein. Implementation
[0012] Specific embodiments will now be described with reference to the accompanying drawings.
[0013] In the following description, numerous details are set forth as examples of the embodiments described herein. Those skilled in the art (who may also benefit from this detailed description) will appreciate that one or more of the embodiments described herein may be practiced without these specific details, and that numerous changes or modifications may be possible without departing from the scope of the embodiments described herein. Certain details known to those of ordinary skill in the art may be omitted to avoid obscuring the description.
[0014] In the following description of the drawings, any component described with respect to a drawing may be equivalent to one or more similarly named components described with respect to any other drawing in the various embodiments described herein. For the sake of brevity, the description of these components may not be repeated with respect to each drawing. Therefore, each embodiment of the components of each drawing is incorporated by reference and is assumed to be optionally present in each other drawing with one or more similarly named components. In addition, according to the various embodiments described herein, any description of the components of the drawings should be interpreted as an optional embodiment, which can be implemented in addition to, in conjunction with, or in place of the embodiment described with respect to the corresponding similarly named components in any other drawing.
[0015] Throughout the application, ordinal numbers (e.g., first, second, third, etc.) may be used as adjectives for elements (i.e., any noun in the application). Unless explicitly disclosed, such as by using the terms "before," "after," "single," and other such terms, the use of ordinal numbers does not imply or create any particular order of elements, nor does it limit any element to only one element. Instead, the use of ordinal numbers is to distinguish elements. For example, a first element is different from a second element, and a first element may encompass more than one element and be after (or before) a second element in the ordering of the elements.
[0016] Throughout the application, the elements of the drawings may be labeled A to N. As used herein, the aforementioned labels mean that the element may include any number of items and do not require that the element include the same number of elements as any other item labeled A to N. For example, a data structure may include a first element labeled A and a second element labeled N. This labeling convention means that the data structure may include any number of elements. The second data structure, also labeled A to N, may also include any number of elements. The number of elements of the first data structure and the number of elements of the second data structure may be the same or different.
[0017] As used herein, the phrase operatively connected or operatively connected means that there is a direct or indirect connection between elements / components / devices that allows the elements to interact in some manner. For example, the phrase "operatively connected" can refer to any direct connection (e.g., a wired connection directly between two devices or components) or indirect connection (e.g., a wired and / or wireless connection between any number of devices or components connecting operatively connected devices). Thus, any path through which information can propagate can be considered an operative connection.
[0018] In general, embodiments described herein relate to minimizing sensitive data exposure caused by unauthorized displacement of edge systems. Edge systems often physically reside and operate outside of local infrastructure boundaries and are often susceptible to and therefore exposed to a higher risk of attack, theft, and / or unauthorized access to sensitive data maintained on or by the edge systems. This often occurs because the locations where the edge systems are often deployed can represent unmanned and / or unprotected environments.
[0019] Thus, the embodiments described herein implement solutions for mitigating the above-mentioned risks, and are therefore intended to reduce the exposure of sensitive data when any edge system is moved / displaced without authorization. Specifically, the solution proposes to regularly track the geographic location (e.g., Global Positioning System (GPS) latitude and longitude coordinates) of the edge system, and compare the tracked geographic location with an established isolation zone (e.g., defined using a locked geographic location and permitted thresholds) within which the movement / displacement of the edge system is authorized. If the tracked geographic location is outside the established isolation zone, then the solution further proposes to prevent any malicious actor from accessing any sensitive data stored on the edge system by triggering one or more isolation violation actions. Examples of the actions may include, but are not limited to: overwriting (e.g., zeroing, randomizing, etc.), and thus effectively erasing the entire sensitive data; in relation to self-encrypting edge system storage - modifying or deleting encryption keys, thereby rendering the entire encrypted sensitive data indecipherable and therefore unrecoverable; and sounding an audible alarm, thereby drawing attention to the unauthorized movement / displacement of the edge system.
[0020] Figure 1A A system according to one or more embodiments described herein is shown. The system (100) may include a control plane (102) and one or more edge systems (104A to 104N). Each of these system (100) components is described below.
[0021] In one or more embodiments described herein, the control plane (102) may represent any edge system management platform. To this extent, the control plane (102) may include the following functionality: dynamically configure an allowed threshold for any given edge system (104A to 104N), the allowed threshold being the maximum distance from the locked edge system geographic location that the given edge system (104A to 104N) may be allowed to move or displace when the given edge system (104A to 104N) is armed; dynamically configure a periodic check timer for any given edge system (104A to 104N), the periodic check timer being a time device configured to measure a preset time interval, wherein the preset time interval may correspond to the periodicity at which a new current edge system geographic location of the given edge system (104A to 104N) may be obtained; arm any given edge system (104A to 104N) by submitting an isolation arming command to it; and disarm any edge system (104A to 104N) by submitting an isolation disarming command to it. However, one of ordinary skill will appreciate that the control plane (102) may perform other functions without departing from the scope of the embodiments described herein.
[0022] In one or more embodiments described herein, the control plane (102) may be implemented by an enterprise information technology (IT) infrastructure (or at least a portion thereof). The enterprise IT infrastructure (or at least a portion thereof) may include a local infrastructure, a cloud computing infrastructure, or a hybrid infrastructure thereof. Thus, the control plane (102) may be implemented using one or more network servers (not shown), each of which may represent a physical or virtual network server. Additionally or alternatively, the control plane (102) may be implemented using the same techniques described below with respect to Figure 3 One or more computing systems similar to the exemplary computing systems depicted and described implement the control plane (102).
[0023] In one or more embodiments described herein, any edge system (104A to 104N) may represent one or more physical devices that can collectively receive, generate, process, store, and / or transmit data. The physical devices may be portable, removable, or otherwise capable of being carried or moved. Any edge system (104A to 104N) may include additional functionality to minimize exposure of sensitive data resulting from any unauthorized displacement of the edge system - described below with respect to Figure 2A and Figure 2B The method depicted and described. However, it should be understood by a person of ordinary skill that any edge system (104A to 104N) can perform other functions without departing from the scope of the embodiments described herein. Examples of any edge system (104A to 104N) may include, but are not limited to, laptop computers, tablet computers, smart phones, Internet of Things (IoT) devices (e.g., smart electronic devices or appliances), network devices (e.g., switches, routers, gateways, access points, etc.), wearable electronic devices, mobile data centers (containers), point of sale (PoS) terminals (e.g., mobile credit card readers, self-service payment kiosks, payment terminals or cash registers, etc.), and point of care (PoC) terminals (e.g., patient healthcare information computers). The following description with respect to Figure 1B Any edge systems (104A to 104N) are depicted and described in greater detail.
[0024] In one or more embodiments described herein, the above-mentioned system (100) components (or subcomponents thereof) may communicate with each other via a network (not shown) (e.g., a local area network (LAN), a wide area network (WAN) such as the Internet, a mobile network, any other network type, or a combination thereof). The network may be implemented using any combination of wired and / or wireless connections. In addition, the network may include various interconnected network-enabled subcomponents (or systems) (e.g., switches, routers, gateways, etc.) that may facilitate communication between the above-mentioned system (100) components (or subcomponents thereof). In addition, when communicating with each other, the above-mentioned system (100) components (or subcomponents thereof) may employ any combination of wired and / or wireless communication protocols.
[0025] Although Figure 1A Configurations of components and / or subcomponents are shown, but other system (100) configurations may be used without departing from the scope of the embodiments described herein.
[0026] Figure 1B An edge system according to one or more embodiments described herein is shown. The edge system (104) may include an isolation manager (110), a geolocation tracker (116), and an edge system storage (118). Each of these edge system (104) components is described below.
[0027] In one or more embodiments described herein, the isolation manager (110) may refer to instruction processing hardware (e.g., any number of integrated circuits for processing computer-readable instructions), a computer program executed on underlying hardware of the edge system (104), or a combination thereof, which is configured at least to orchestrate the minimization of sensitive data exposure resulting from unauthorized displacement of the edge system (104). To this extent, the isolation manager (110) may include instructions for executing the following with respect to Figure 2A and Figure 2B Functionality of the methods depicted and described. However, one of ordinary skill will appreciate that the isolation manager (110) may perform other functions without departing from the scope of the embodiments described herein.
[0028] In one or more embodiments described herein, the isolation manager (110) may include and manage a secure enclave (112). The secure enclave (112) may refer to a protected area of non-volatile memory that is accessible only by the isolation manager (110). Thus, the secure enclave (112) may appear as a black box that is inaccessible to any other component and / or process of / on the edge system (104). In addition, the isolation manager (110) may use the secure enclave (112) to store a locked (edge) system geographic location (114). The locked (edge) system geographic location (114) may refer to an expected or desired real-world geographic location (e.g., Global Positioning System (GPS) latitude and longitude coordinates) of the edge system (104) and that the edge system (104) has been deployed to serve.
[0029] In one or more embodiments described herein, a geolocation tracker (116) may refer to dedicated hardware (e.g., a GPS receiver, including, but not limited to, an omnidirectional antenna and a radio processor) configured at least to collect signals from GPS satellites and convert them into position, velocity, and time measurements. Position measurements of the edge system (104) available at any given point in time (e.g., expressed in GPS latitude and longitude coordinates) may also be referred to herein as the (edge) system geolocation. The geolocation tracker (116) may include additional functionality: receiving instructions or requests from the isolation manager (110) related to determining the current (edge) system geolocation; calculating the current (edge) system geolocation using trilateration and signals broadcast by GPS satellites; and providing the current (edge) system geolocation to the isolation manager (110) in response to the received instructions / requests. However, a person of ordinary skill will appreciate that the geolocation tracker (116) may perform other functions without departing from the scope of the embodiments described herein.
[0030] In one or more embodiments described herein, the geolocation tracker (116) may additionally or alternatively include other specialized hardware (e.g., a wireless network adapter, interface, or radio) configured to at least determine the (edge) system's geographic location via other means. Such other means may include, but are not limited to: translating the network address (e.g., Internet Protocol (IP) address) of the edge system (104) to its approximate physical location; and / or scanning nearby Wi-Fi access points for comparison with a known list of access points and their locations in order to triangulate the approximate physical location of the edge system (104).
[0031] In one or more embodiments described herein, edge system storage (118) may refer to one or more physical storage devices (not shown) and may therefore be implemented using one or more physical storage devices. Each physical storage device may include a non-transitory computer-readable storage medium on which various forms of data (including sensitive data (120) (described below)) may be stored, in whole or in part and temporarily or permanently, depending on the purpose of the edge system (104). Examples of non-transitory computer-readable storage media may include, but are not limited to: optical storage (e.g., compact disks (CDs) and digital versatile disks (DVDs)), magnetic storage (e.g., magnetic tapes, floppy disks, and hard disk drives (HDDs)), and solid-state storage (e.g., solid-state drives (SDDs), thumb drives, and secure digital (SD) cards).
[0032] In one or more embodiments described herein, the edge system storage (118) may be self-encrypting. As a self-encrypting storage, the edge system storage (118) may include the following functions: encrypting data (e.g., sensitive data (120)) when the data is written to a physical storage device that implements the edge system storage (118), and decrypting any encrypted data read from the physical storage device. In addition, as a self-encrypting storage, the edge system storage (118) may maintain encryption keys therein, which can therefore be used to encrypt data and decrypt encrypted data. The encryption keys may be generated in a factory environment where the edge system storage (118) may have been manufactured. In one or more other embodiments described herein, the edge system storage (118) may not be self-encrypting.
[0033] In one or more embodiments described herein, the edge system storage (118) may store sensitive data (120). Sensitive data (120) may refer to private information belonging to an individual, multiple individuals, or an organization that must / should be protected from unwarranted access and / or disclosure. Examples of sensitive data (120) may include, but are not limited to: patient protected health information (PHI) (e.g., demographic information, identity information, medical history, test and lab results, health status, insurance information, etc.); customer payment information (e.g., credit and / or debit card information, bank routing and account numbers, digital wallet credentials, etc.); employee information (e.g., social security number, date and / or place of birth, telephone number, residential address, password, gender, race, nationality, etc.); user credential information (e.g., username, password, personal identification number (PIN), biometric data, etc.); and trade, proprietary, and government information (e.g., intellectual property, military secrets, business intelligence data, etc.).
[0034] Although Figure 1B Configurations of components and / or subcomponents are shown, but other edge system (104) configurations may be used without departing from the scope of the embodiments described herein.
[0035] Figure 2A and Figure 2B A flowchart is shown describing a method for minimizing exposure of sensitive data caused by unauthorized edge system displacement according to one or more embodiments described herein. The various steps outlined below can be performed by any edge system (or more specifically, its isolation manager) (see, e.g. Figure 1A and Figure 1B ) to be performed. In addition, although the various steps in the flowchart are presented and described sequentially, it will be appreciated by those of ordinary skill that some or all of the steps may be performed in a different order, may be combined or omitted, and some or all of the steps may be performed in parallel.
[0036] In one or more embodiments described herein, the methods described hereinafter may be initiated and thus performed during each boot (or initialization) routine experienced by the edge system following an event requiring a power cycle (e.g., maintenance, upgrade, natural disaster, power outage, etc.). Thus, the methods may reside in (or may be integrated into) the boot path of the edge system.
[0037] Steering Figure 2A, in step 200, a determination is made as to whether the edge system is armed. In one or more embodiments described herein, the determination may, for example, entail checking data (e.g., a bit flag) in a memory dedicated to storing the armed state of the edge system (described below). Thus, in one or more embodiments described herein, if it is determined that the edge system is armed, then the method proceeds to step 202. On the other hand, in one or more other embodiments described herein, if it is alternatively determined that the edge system is not armed, then the method alternatively proceeds to step 220 (see, e.g., Figure 2B ).
[0038] In one or more embodiments described herein, the above-mentioned armed state of the edge system may reflect its isolation state of restricting or permitting its movement (or displacement). Therefore, the armed state may be expressed by a binary (or two-state) value, such as a first state (i.e., armed state) indicating that the movement / displacement of the edge system is restricted (e.g., after being deployed to any intended deployment location); or a second state (i.e., unarmed state) indicating that the movement / displacement of the edge system is permitted (e.g., before or between deployment to any intended deployment location, during a maintenance or reconfiguration window, etc.). In addition, the armed state may be expressed by a control plane (see, e.g., Figure 1A ), and more specifically, configuring any of the isolation states on, or applying them to, an edge system by submitting an isolation arming or isolation disarming command.
[0039] In step 202, after determining (made in step 200) that the edge system is armed, the edge system geographic location is obtained. In one or more embodiments described herein, the edge system geographic location can include the current real-world geographic location of the edge system (e.g., Global Positioning System (GPS) latitude and longitude coordinates).
[0040] In step 204, a geolocation difference is detected. In one or more embodiments described herein, a geolocation difference may refer to a distance measurement calculated between two sets of GPS latitude and longitude coordinates. The two sets may include an edge system geolocation (obtained in step 202) and a locked edge system geolocation. The latter may refer to an expected or desired real-world geolocation (e.g., GPS latitude and longitude coordinates) (or an expected / expected deployment location) of the edge system, which may be stored in a secure location (see, e.g., Figure 1B ). In addition, the geographic location difference may be calculated using any existing algorithm for determining the distance between two sets of GPS coordinates, such as, for example, the Haversine distance formula.
[0041] In one or more other embodiments described herein, a pair of approximate physical locations (obtained by means other than GPS - see e.g. Figure 1B ) or the geographic location difference between the approximate physical location (obtained by the other means) and a set of GPS latitude and longitude coordinates. Any approximate physical location obtained by the other means can be obtained at a time point when GPS is not available. On the other hand, GPS can be used when the edge system is disconnected from any public or private network.
[0042] In step 206, a determination is made as to whether the geographic location difference (detected in step 204) is within or within an allowed threshold. The allowed threshold may refer to the maximum distance from the locked edge system geographic location that the edge system may be allowed to move or displace when the edge system is armed. The allowed threshold may be determined by the control plane (see, e.g., Figure 1A ) and its distance value can depend on various factors, including but not limited to the environment of the intended / expected deployment location (e.g., the area of a room, building, block, etc. in which the edge system can be deployed), and any errors in the geolocation difference calculations (e.g., due to reliance on measurements relative to a perfect sphere used in the haversine distance formula, and the Earth is not a perfect sphere).
[0043] Therefore, in one or more embodiments described herein, if it is determined that the geographic location difference is outside the permitted threshold (i.e., the movement / displacement of the edge system is not authorized), then the method proceeds to step 208. On the other hand, in one or more other embodiments described herein, if it is alternatively determined that the geographic location difference is within / within the permitted threshold (i.e., the movement / displacement of the edge system is authorized), then the method alternatively proceeds to step 210.
[0044] In step 208, after determining (made in step 206) that the geographic location difference (detected in step 204) is outside the permitted threshold, at least one isolation violation action is performed. In one or more embodiments described herein, any isolation violation action, when performed, may at least be directed to minimizing the loss of sensitive data (see, e.g., Figure 1B ) exposure. Examples of at least one isolation violation action may include, but are not limited to: overwriting (e.g., zeroing, randomizing, etc.), and thereby effectively erasing the entire sensitive data; in relation to self-encrypting edge system storage - modifying or deleting encryption keys, thereby rendering the entire encrypted sensitive data indecipherable and therefore unrecoverable; and sounding an audible alarm, thereby drawing attention to the unauthorized movement / displacement of the edge system.
[0045] In one or more embodiments described herein, in addition to minimizing the risk of sensitive data exposure, any isolation violation actions may further hinder any future considerations of stealing (or otherwise illegally obtaining) other deployed edge systems by malicious actors with malicious objectives (e.g., sensitive data theft, edge system repurposing, etc.).
[0046] In step 210, after alternately determining (made in step 206) that the geographic location difference (detected in step 204) is within / within the permitted threshold, the quarantine manager remains in a standby state until a quarantine-related event occurs. Examples of quarantine-related events may include, but are not limited to: a periodic check timer that passes; a quarantine disarm command that is received; and a quarantine arm command that is received.
[0047] In one or more embodiments described herein, a periodic check timer may refer to a time device (e.g., a hardware and / or software implemented clock) configured to measure a preset time interval, wherein the preset time interval may correspond to a periodicity at which a new current edge system geographic location of the edge system may be obtained. Figure 1A ) to dynamically configure the preset time interval. Therefore, any isolation-related event in the form of a periodic check timer can refer to the completion of the preset time interval.
[0048] In one or more embodiments described herein, an isolation disarm command may refer to a computer-readable program instruction for disarming an edge system. Disarming an edge system may require setting its isolation state to a state (i.e., an unarmed state) indicating that movement / displacement of the edge system is permitted (e.g., before or between deployments to any intended deployment locations, during maintenance or reconfiguration windows, etc.). In addition, an isolation disarm command may be provided by / from a control plane (see, e.g., Figure 1A ) is submitted to the edge system. Therefore, any isolation-related event in the form of a received isolation disarm command can refer to the receipt of an instruction to authorize the movement / displacement of the edge system.
[0049] In one or more embodiments described herein, an isolation arming command may refer to a computer-readable program instruction for arming an edge system. Arming an edge system may require setting its isolation state to a state (i.e., an armed state) indicating that the movement / displacement of the edge system is restricted (e.g., after deployment to any intended deployment location). In addition, an isolation arming command may be provided by / from a control plane (see, e.g., Figure 1A ) is submitted to the edge system. Therefore, any isolation-related event in the form of a received isolation arming command can refer to the receipt of an instruction to move / displace an unauthorized edge system.
[0050] In step 212, a determination is made as to whether an isolation-related event in the form of a periodic check timer has occurred (as described above, see, e.g., step 210). In one or more embodiments described herein, if it is determined that an isolation-related event has occurred (in the form of a periodic check timer having passed), then the method proceeds to step 232 (see, e.g., Figure 2B ). On the other hand, in one or more other embodiments described herein, if it is alternatively determined that an isolation-related event has not occurred or has occurred (in the form other than the passage of a periodic check timer), then the method alternatively proceeds to step 202 (described above), where another edge system geographic location can be obtained.
[0051] Steering Figure 2B , in step 220, after alternately determining (made in step 200) that the edge system is not armed, the isolation manager remains in a standby state until an isolation-related event (as described above, see, for example, step 210) occurs.
[0052] In step 222, a determination is made as to whether an isolation-related event in the form of a received isolation arming command (as described above, see, e.g., step 210) has occurred. In one or more embodiments described herein, if it is determined that an isolation-related event has occurred (in the form of a received isolation arming command), then the method proceeds to step 224. On the other hand, in one or more other embodiments described herein, if it is alternatively determined that an isolation-related event has not occurred or that an isolation-related event has occurred (in the form of something other than the passage of a periodic check timer), then the method alternatively proceeds to step 228.
[0053] In step 224, after determining (made in step 222) that an isolation-related event (in the form of a received isolation arming command) has occurred, the edge system geographic location is obtained. In one or more embodiments described herein, the edge system geographic location may include the current real-world geographic location of the edge system (e.g., Global Positioning System (GPS) latitude and longitude coordinates).
[0054] In step 226, the edge system geographic location (obtained in step 224) is stored in a secure location (see e.g. Figure 1B In one or more embodiments described herein, a secure zone may refer to a protected area of non-volatile memory that is accessible only by an isolation manager.
[0055] Thereafter, the method proceeds to step 210 (as described above), where the quarantine manager remains in a standby state until a quarantine-related event (as described above, see, eg, step 210) occurs.
[0056] In step 228, after alternately determining (made in step 222) that no isolation-related event has occurred or that an isolation-related event has occurred (in the form of other than a received isolation arming command), the isolation manager remains in a standby state until an isolation-related event (as described above, see, for example, step 210) occurs.
[0057] In step 230, a determination is made as to whether an isolation-related event in the form of a periodic check timer has passed (as described above, see, for example, step 210) has occurred. In one or more embodiments described herein, if it is determined that an isolation-related event has occurred (in the form of a periodic check timer passing), then the method proceeds to step 202 (as described above), where another edge system geographic location can be obtained. On the other hand, in one or more other embodiments described herein, if it is alternatively determined that an isolation-related event has not occurred or that an isolation-related event has occurred (in the form other than a periodic check timer passing), then the method alternatively proceeds to step 232.
[0058] In step 232, after determining (made in step 230) that an isolation-related event has occurred (in the form of the passage of a periodic check timer), or after alternately determining (made in step 212) that an isolation-related event has not occurred or has occurred (in the form of something other than the passage of a periodic check timer), a determination is made as to whether an isolation-related event (in the form of a received isolation-disarm command) (as described above, see, e.g., step 210) has occurred. In one or more embodiments described herein, if it is determined that an isolation-related event (in the form of a received isolation-disarm command) has occurred, then the method proceeds to step 234. On the other hand, in one or more other embodiments described herein, if it is alternatively determined that an isolation-related event has not occurred or has occurred (in the form of something other than a received isolation-disarm command), then the method alternatively proceeds to step 210 (as described above), wherein the isolation manager remains in a standby state until an isolation-related event occurs.
[0059] In step 234, after determining (made in step 232) that an isolation-related event has occurred (in the form of a received isolation disarm command), the security zone (see, e.g., Figure 1B ) in the locked (edge) system geolocation is thus cleared.
[0060] Thereafter, the method proceeds to step 220 (as described above), where the quarantine manager remains in a standby state until a quarantine-related event (as described above, see, for example, step 210) occurs.
[0061] Figure 3A computing system according to one or more embodiments described herein is shown. The computing system (300) may include one or more computer processors (302), non-permanent storage (304) (e.g., volatile memory, such as random access memory (RAM), cache memory), permanent storage (306) (e.g., hard disk, optical drive (such as compact disk (CD) drive or digital versatile disk (DVD) drive), flash memory, etc.), communication interface (312) (e.g., Bluetooth interface, infrared interface, network interface, optical interface, etc.), input device (310), output device (308) and numerous other elements (not shown) and functions. Each of these components is described below.
[0062] In one or more embodiments described herein, the computer processor (302) may be an integrated circuit for processing instructions. For example, the computer processor may be one or more cores or microcores of a central processing unit (CPU) and / or a graphics processing unit (GPU). The computing system (300) may also include one or more input devices (310), such as a touch screen, a keyboard, a mouse, a microphone, a touchpad, an electronic pen, or any other type of input device. In addition, the communication interface (312) may include an integrated circuit for connecting the computing system (300) to a network (not shown) (e.g., a local area network (LAN), a wide area network (WAN) such as the Internet, a mobile network, or any other type of network) and / or another device (such as another computing device).
[0063] In one or more embodiments described herein, the computing system (300) may include one or more output devices (308), such as a screen (e.g., a liquid crystal display (LCD), a plasma display, a touch screen, a cathode ray tube (CRT) monitor, a projector, or other display device), a printer, external storage, or any other output device. One or more of the output devices may be the same as or different from the input devices. One or more input devices and output devices may be connected locally or remotely to one or more computer processors (302), non-persistent storage (304), and permanent storage (306). There are many different types of computing systems, and one or more of the previously mentioned input devices and output devices may take other forms.
[0064] Software instructions in the form of computer-readable program code to perform the embodiments described herein may be stored in whole or in part, temporarily or permanently on a non-transitory computer-readable medium such as a CD, DVD, storage device, floppy disk, tape, flash memory, physical memory, or any other computer-readable storage medium. Specifically, the software instructions may correspond to a computer-readable program code that, when executed by a processor, is configured to perform one or more embodiments described herein.
[0065] Although the present technology has been described with respect to a limited number of embodiments, those skilled in the art having benefit of this disclosure will appreciate that other embodiments may be conceived without departing from the scope of the embodiments described herein. Accordingly, the scope of the embodiments described herein should be limited solely by the appended claims.
Claims
1. A method for protecting an edge system, the method comprising: Making a determination that the edge system is armed; Based on the determination: detecting a geographic location difference between an edge system geographic location and a locked edge system geographic location; making a second determination that the geographic location difference is outside of an permitted threshold; as well as Based on the second determination, an isolation violation action is performed on the edge system. 2 . The method of claim 1 , wherein the isolation violation action on the edge system comprises erasing sensitive data stored on the edge system. 3 . The method of claim 1 , wherein the isolation violation action on the edge system comprises erasing an encryption key used to decrypt encrypted sensitive data stored on the edge system.
4. The method of claim 1, wherein the edge system geographic location represents a current geographic location of the edge system. 5 . The method of claim 1 , wherein the locked edge system geographic location represents an expected geographic location of the edge system and where the edge system has been deployed.
6. The method according to claim 1, further comprising: Prior to making the determination that the edge system is armed: making a second determination that the edge system is not armed; Based on the second determination: Wait until receiving the isolation arming command; After receiving the isolation deployment command, obtaining the geographic location of the second edge system; as well as The second edge system geographic location is stored within a secure zone to obtain the locked edge system geographic location.
7. The method according to claim 1, further comprising: Prior to detecting the geographic location difference between the edge system geographic location and the locked edge system geographic location: detecting a second geographic location difference between a second edge system geographic location and the locked edge system geographic location; making a third determination that the second geographic location difference is within the permitted threshold; Based on the third determination: Wait until the periodic check timer has elapsed; as well as The edge system geographic location is obtained after the periodic check timer has elapsed.
8. A non-transitory computer readable medium comprising a computer readable program code which, when executed by a computer processor, enables the computer processor to perform a method for protecting an edge system, the method comprising: Making a determination that the edge system is armed; Based on the determination: detecting a geographic location difference between an edge system geographic location and a locked edge system geographic location; making a second determination that the geographic location difference is outside of an permitted threshold; as well as Based on the second determination, an isolation violation action is performed on the edge system.
9. The non-transitory computer-readable medium of claim 8, wherein the isolation violation action on the edge system comprises erasing sensitive data stored on the edge system.
10. The non-transitory computer-readable medium of claim 8, wherein the isolation violation action on the edge system comprises erasing an encryption key used to decrypt encrypted sensitive data stored on the edge system.
11. The non-transitory computer-readable medium of claim 8, wherein the edge system geographic location represents a current geographic location of the edge system.
12. The non-transitory computer-readable medium of claim 8, wherein the locked edge system geographic location represents an intended geographic location of the edge system and where the edge system has been deployed.
13. The non-transitory computer readable medium of claim 8, the method further comprising: Prior to making the determination that the edge system is armed: making a second determination that the edge system is not armed; Based on the second determination: Wait until receiving the isolation arming command; After receiving the isolation deployment command, obtaining the geographic location of the second edge system; as well as The second edge system geographic location is stored within a secure zone to obtain the locked edge system geographic location.
14. The non-transitory computer readable medium of claim 8, the method further comprising: Prior to detecting the geographic location difference between the edge system geographic location and the locked edge system geographic location: detecting a second geographic location difference between a second edge system geographic location and the locked edge system geographic location; making a third determination that the second geographic location difference is within the permitted threshold; Based on the third determination: Wait until the periodic check timer has elapsed; as well as The edge system geographic location is obtained after the periodic check timer has elapsed.
15. An edge system, comprising: A computer processor configured at least to execute a method for protecting an edge system, the method comprising: making a determination that the edge system is armed; Based on the determination: detecting a geographic location difference between an edge system geographic location and a locked edge system geographic location; making a second determination that the geographic location difference is outside an permitted threshold; and Based on the second determination, an isolation violation action is performed on the edge system.
16. The edge system of claim 15, further comprising: a non-volatile memory operatively connected to said computer processor; as well as A safety zone is defined by a protected area of the non-volatile memory and is configured to store the locked edge system geographic location.
17. The edge system of claim 15, further comprising: A memory bank is operatively connected to the computer processor and configured to store at least sensitive data.
18. The edge system of claim 17, wherein the isolation violation action on the edge system comprises erasing the sensitive data.
19. The edge system of claim 17, wherein the storage volume is self-encrypting and is further configured to store encrypted sensitive data.
20. The edge system of claim 19, wherein the isolation violation action on the edge system comprises erasing an encryption key used to decrypt the encrypted sensitive data.