Abstract:
In embodiments of the present invention improved capabilities are described for behavioral-based threat detection. An executing computer process is monitored for an indication of malicious behavior, wherein the indication of the malicious behavior is a result of comparing an operation with a predetermined behavior, referred to as a gene. A plurality of malicious behavior indications observed for the executing process are compared to a predetermined collection of malicious behaviors, referred to as a phenotype, which comprises a grouping of specific genes that are typically present in a type of malicious code. Upon matching the malicious behavior indications with a phenotype, an action may be caused, where the action is based on a prediction that the executing computer process is the type of malicious code as indicated by the phenotype. Related user interfaces, applications, and computer program products are disclosed.
Abstract:
A system for efficiently verifying compliance with a memory consistency model includes a test module and an analysis module. The test module may coordinate an execution of a multithreaded test program on a test platform. If the test platform provides an indication of the order in which writes from multiple processing elements are performed at shared memory locations, the analysis module may use a first set of rules to verify that the results of the execution correspond to a valid ordering of events according to a memory consistency model. If the test platform does not provide an indication of write ordering, the analysis module may use a second set of rules to verify compliance with the memory consistency model. Further, a backtracking search may be performed to find a valid ordering if such ordering exists or show that none exists and, hence, confirm whether or not the results comply with the given memory consistency model.
Abstract:
Mechanisms for executing a transaction such that it may be undone after being committed. The mechanism maintains a mapping between each of a number of groups of one or more direct methods with a corresponding group of one or more inversion methods, that, when executed, causes the computing system to at least partially undo the effects of the execution of the corresponding group of direct methods. Upon beginning a transaction, the computing system runs a one or more groups of one or more direct methods that are part of the transaction. The mapping is then used to identify the corresponding group(s) of inversion methods. The identities of each corresponding group of inversion methods are then saved to a compensation record. The transaction is then committed, and the compensation record is saved to a persistent media along with a transaction identifier.
Abstract:
A verification support device that supports verification of a changed state by using changed state data and relating data. The verification support device includes a state with an abnormal condition generating unit adds the abnormal condition to the changed state thereby generating a changes state with an abnormal condition. The verification device also includes an abnormal condition inspection unit that inspects whether the abnormal data may reach the changed state based on the generated changed state with the abnormal condition and the relating data.
Abstract:
A data processing apparatus and method for generating trace elements is provided. The data processing apparatus comprises a device for performing a sequence of operations including memory operations on data values having associated data addresses. For at least some of the memory operations the data address is determined relative to an architectural state value of an item of architectural state of the device. Trace logic is provided for receiving indications of the sequence of operations being performed by the device, and for generating from the indications a stream of trace elements. When for a memory operation the data address is determined to have been determined relative to an architectural state value of the item of the architectural state, the trace logic is operable dependent on that item of architectural state to omit at least one of a data address indication and a data value indication from the stream of trace elements generated in respect of that memory operation. A trace analysing apparatus can then be provided to reconstruct such omitted information based on a tracked architectural state value of the relevant item of architectural state.
Abstract:
Mechanisms for enforcing a message exchange pattern. When two computing systems communicate in order to accomplish a particular task, they engage in a particular message exchange pattern. Given certain progress through the message exchange pattern, the message exchange pattern may restrict which computing system may send what kind of messages. Each computing system tracks progress through the message exchange pattern by, for example, using a state transition tree in which each node represents a state of the message exchange pattern, and in which transmission or receipt of certain messages may cause state transitions. A computing system then only transmits messages if appropriate given the current tracked progress through the message exchange pattern.
Abstract:
Embodiments of the invention include an arbiter facility included in a test script. The arbiter facility includes properties defining a method for evaluating the status of a step or process, a method for evaluating verification point results and the steps to execute during execution of the test script. The arbiter facility operates to control the flow of the processes performed that form the test script. The control of the processes that are performed are based on explicit rules or conditions. The rules implemented by the arbiter facility can result in different processes within the test script being performed based on data processed by the arbiter facility. Moreover, aspects of the invention embodied by the arbiter facility implement rules which explicitly express, within the test case, the value (e.g., weight, importance, etc.) of individual operations. In the exemplary embodiment, the value of one or more individual operations are explicitly expressed by the rules (e.g., computations, calculations, determinations, etc.) that are imposed on the results returned to the arbiter facility by the various verification points within the test script. Accordingly and advantageously, analysis on the value of a verification point may be performed prior to implementing or executing a test script. This analysis may then be reflected in the rule implemented in the arbiter facility.
Abstract:
A processor generates a signature value indicating a sequence of executed instructions, and the signature value is compared to signature values calculated for two or more possible sequences of executed instructions to determine which instruction sequence was executed. The signature is generated via a signature generator during program execution, and is provided external to the processor via a signature message.
Abstract:
There are provided a medium storing a model creation program for creating a model for communicating with an object apparatus to be verified, a model creation apparatus and a model creation method. A medium storing a model creation program for causing a computer to create a model for communicating with an object apparatus to be verified so as to be readable to the computer, wherein the program causes the computer to execute an acquisition step that acquires a first finite state machine expressing the interface specification of the object apparatus to be verified as a finite state machine, a first addition step that adds an error state and a state transition to the error state to the first finite state machine to produce a second finite state machine and sets the transition conditions of the second transition machine according to the set error probability and a conversion step that converts the second finite state machine into a model for communicating with the object apparatus to be verified.
Abstract:
The aim of the present invention is to propose a method and a device with the aim of avoid the damage that the desynchronisation of the program counter could cause.This aim is achieved by means of a method to control the execution of a program by a microcontroller including at least a program memory and a processing unit, characterised in that it includes the following steps: separation of said program into at least two blocks each containing a plurality of instructions that can be executed by said microcontroller; integration into these blocks of at least one input control area (CTRL-E) containing input conditions, these input conditions including reference addresses corresponding to instructions from where the program is authorised to enter said input control area (CTRL-E); integration into these blocks of at least one output control area (CTRL-S) containing output conditions; at the time of the execution of the instructions of said program memorised in a given block, implementation of verification tests of the adequacy between the effective running of the program and the input and/or of output conditions; and implementation of countermeasures if the verification tests indicate an inadequacy between the effective running of the program and the input and/or output conditions.