Enforcing access control in trigger-action programming using taint analysis
First Claim
Patent Images
1. A computer-implemented method comprising:
- marking, by one or more hardware processors, a set of data fields associated with a first trigger in a first trigger-action pair with a taint, wherein a trigger event triggers an action event in a trigger-action pair, and wherein the taint is a tag indicating that the first trigger has been identified as being susceptible to an illicit attack by a third party and that the first trigger is capable of influencing a second trigger-action pair;
marking, by one or more hardware processors, a first action associated with the first trigger-action pair with the taint, wherein the first action is capable of triggering a second trigger associated with the second trigger-action pair;
detecting, by one or more hardware processors, the second trigger associated with the second trigger-action pair;
propagating, by one or more hardware processors, the taint from the first trigger-action pair to the second trigger;
preventing, by one or more hardware processors, a second action associated with the second trigger-action pair in response to detecting the taint in the second trigger;
checking, by one or more hardware processors, whether the first trigger-action pair is located in a taint map by searching for a first trigger ID and associated data fields in the taint map; and
in response to the first trigger-action pair being located in the taint map, decrementing, by one or more hardware processors, a freshness counter, wherein the freshness counter denotes how trigger-action pairs are expected to be invoked when an action occurs due to a chaining effect from linkage between trigger-action pairs, and wherein decrementing the freshness counter indicates a decrease in a possibility of the first action triggering the second trigger.
1 Assignment
0 Petitions
Accused Products
Abstract
One or more processors mark a set of data fields associated with a first trigger in a first trigger-action pair with a taint, where a trigger event triggers an action event in a trigger-action pair. One or more processors mark a first action associated with the first trigger-action pair with the taint, and detect a second trigger associated with a second trigger-action pair. One or more processors then propagate the taint from the first trigger-action pair to the second trigger, and prevent a second action associated with the second trigger-action pair in response to detecting the taint in the second trigger.
20 Citations
17 Claims
-
1. A computer-implemented method comprising:
-
marking, by one or more hardware processors, a set of data fields associated with a first trigger in a first trigger-action pair with a taint, wherein a trigger event triggers an action event in a trigger-action pair, and wherein the taint is a tag indicating that the first trigger has been identified as being susceptible to an illicit attack by a third party and that the first trigger is capable of influencing a second trigger-action pair; marking, by one or more hardware processors, a first action associated with the first trigger-action pair with the taint, wherein the first action is capable of triggering a second trigger associated with the second trigger-action pair; detecting, by one or more hardware processors, the second trigger associated with the second trigger-action pair; propagating, by one or more hardware processors, the taint from the first trigger-action pair to the second trigger; preventing, by one or more hardware processors, a second action associated with the second trigger-action pair in response to detecting the taint in the second trigger; checking, by one or more hardware processors, whether the first trigger-action pair is located in a taint map by searching for a first trigger ID and associated data fields in the taint map; and in response to the first trigger-action pair being located in the taint map, decrementing, by one or more hardware processors, a freshness counter, wherein the freshness counter denotes how trigger-action pairs are expected to be invoked when an action occurs due to a chaining effect from linkage between trigger-action pairs, and wherein decrementing the freshness counter indicates a decrease in a possibility of the first action triggering the second trigger. - View Dependent Claims (2, 3, 4, 5, 14, 15, 16)
-
-
6. A computer program product for enforcing access control in trigger-action programming using taint analysis, the computer program product comprising a computer readable storage device having program instructions embodied therewith, the program instructions readable and executable by a computer to cause the computer to:
-
mark a set of data fields associated with a first trigger in a first trigger-action pair with a taint, wherein a trigger event triggers an action event in a trigger-action pair, and wherein the taint is a tag indicating that the first trigger has been identified as being susceptible to an illicit attack by a third party and that the first trigger is capable of influencing a second trigger-action pair; mark a first action associated with the first trigger-action pair with the taint, wherein the first action is capable of triggering a second trigger associated with the second trigger-action pair; detect the second trigger associated with the second trigger-action pair; propagate the taint from the first trigger-action pair to the second trigger; prevent a second action associated with the second trigger-action pair in response to detecting the taint in the second trigger; check whether the first trigger-action pair is located in a taint map by searching for a first trigger ID and associated data fields in the taint map; and in response to the first trigger-action pair being located in the taint map, decrement a freshness counter, wherein the freshness counter denotes how trigger-action pairs are expected to be invoked when an action occurs due to a chaining effect from linkage between trigger-action pairs. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A computer system comprising:
-
one or more hardware processors; one or more computer readable memories, operably coupled to the one or more hardware processors, wherein the one or more computer readable memories store program instructions for execution by at least one of the one or more hardware processors, the stored program instructions comprising; program instructions to mark a set of data fields associated with a first trigger in a first trigger-action pair with a taint, wherein a trigger event triggers an action event in a trigger-action pair, and wherein the taint is a tag indicating that the first trigger has been identified as being susceptible to an illicit attack by a third party and that the first trigger is capable of influencing a second trigger-action pair; program instructions to mark a first action associated with the first trigger-action pair with the taint, wherein the first action is capable of triggering a second trigger associated with the second trigger-action pair; program instructions to detect the second trigger associated with the second trigger-action pair; program instructions to propagate the taint from the first trigger-action pair to the second trigger; program instructions to prevent a second action associated with the second trigger-action pair in response to detecting the taint in the second trigger; program instructions to check whether the first trigger-action pair is located in a taint map by searching for a first trigger ID and associated data fields in the taint map; and program instructions to, in response to the first trigger-action pair being located in the taint map, decrement a freshness counter, wherein the freshness counter denotes how trigger-action pairs are expected to be invoked when an action occurs due to a chaining effect from linkage between trigger-action pairs. - View Dependent Claims (13, 17)
-
Specification