Back to results
US 9,286,470 B2Granted
Protection of a volatile memory against viruses by modification of the content of an instruction
AssigneeSTMicroelectronics (Rousset) SAS
InventorYannick Teglia
Life of this patent
Estimating the term…
Abstract
A method for protecting a volatile memory against a virus, wherein: rights of writing, reading, or execution are assigned to certain areas of the memory; and a first list of opcodes for which the access to the areas is authorized or forbidden is associated with each of these areas.
Claims14
A method, comprising:
- protecting a volatile memory against a virus, by,
- assigning rights of writing, reading, or execution to at least one area of the volatile memory, the at least one area being used for at least one program;
- associating with the at least one area used for the at least one program a first list of opcodes for which access to the at least one area is authorized or not authorized, the first list of opcodes being selected based on the at least one program for which the at least one memory area is used;
- in response to an attempt to access the at least one area of the volatile memory by an opcode of an instruction, determining, using at least one processor, whether the opcode of the instruction is indicated in the first list of opcodes as an opcode for which access to the at least one area of the volatile memory is authorized;
- and
- performing, using the at least one processor, an action if it is determined that the first list of opcodes indicates that the opcode of the instruction is not authorized to access the at least one area of the volatile memory, wherein the first list of opcodes is stored in one of:
- the same address as the at least one area;
- and
- a table separate from the at least one area.
6 more elements
An electronic circuit comprising:
- a processing unit;
- and
- memory storing computer-executable instructions that, when executed by the processing unit, perform a method for protecting a volatile memory against a virus, the method comprising:
- associating with at least one area being used for at least one program a first list of opcodes for which access to the at least one area is authorized or not authorized, the first list of opcodes being selected based on the at least one program for which the at least one memory area is used;
- in response to an attempt to access the at least one area of the volatile memory by an opcode of an instruction, determining whether the opcode of the instruction is indicated in the first list of opcodes as an opcode for which access to the at least one area of the volatile memory is authorized;
- and
- allowing the opcode of the instruction to access the at least one area of the volatile memory if it is determined that the first list of opcodes indicates that the opcode of the instruction is authorized to access the at least one area of the volatile memory, wherein the first list of opcodes is stored in one of:
- the same address as the at least one area;
- and
- memory separate from the at least one area.
7 more elements
A system, comprising:
- a processing unit;
- and
- volatile memory comprising at least one area being used for at least one program, wherein:
- the at least one area being used for the at least one program is associated with a first plurality of opcodes which are authorized or not authorized to access the at least one area, the first plurality of opcodes being selected based on the at least one program for which the at least one memory area is used;
- and
- the processing unit is configured to:
- in response to an attempt to access the at least one area of the volatile memory by an opcode of an instruction, determine whether the opcode of the instruction is indicated in the first list of opcodes as an opcode for which access to the at least one area of the volatile memory is authorized;
- and
- allow the opcode of the instruction to access the at least one area of the volatile memory if it is determined that the first list of opcodes indicates that the opcode of the instruction is authorized to access the at least one area of the volatile memory, wherein the first list of opcodes is stored in one of:
- the same address as the at least one area;
- and
- storage separate from the at least one area.
9 more elements
Dependencies are inferred from the claim text.