×

Using a fine-grained address space layout randomization to mitigate potential security exploits

  • US 10,311,228 B2
  • Filed: 09/30/2014
  • Issued: 06/04/2019
  • Est. Priority Date: 09/30/2014
  • Status: Active Grant
First Claim
Patent Images

1. A non-transitory machine-readable medium storing instructions which, when executed by one or more processors of a device, cause the device to perform operations comprising:

  • selecting a region in a first address space in memory of the device, the region storing instructions for execution by one or more processors of the device;

    dividing the region into multiple clumps of memory, each clump including a plurality of memory pages including at least a start memory page and an end memory page;

    mapping each clump from an address in the first address space to a random address in a second address space by referencing a shuffled clump map;

    determining whether the end memory page of the each clump includes instruction codes for execution;

    if the end memory page includes instruction codes, additionally mapping a start memory page of a subsequent clump to an address contiguous with the end memory page of the each clump;

    loading the each clump into the random address in the second address space of the device for a shuffled virtual memory address space corresponding to the shuffled clump map; and

    identifying the region storing the instructions for execution based on the shuffled clump map.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×