SYSTEMS AND/OR METHODS FOR AUTOMATICALLY PROTECTING AGAINST MEMORY CORRUPTION VULNERABILITIES

A security-enhanced computing system comprises: processing resources including at least one memory and at least one physical hardware processor coupled thereto, wherein the processing resources are configured to execute a security-enhanced application program by at least: defining a plurality of gua...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: KENNEDY, Nathan Taylor, MELSKI, David Gordon, DEHAAS, Drew Christian
Format: Patent
Sprache:eng ; fre ; ger
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:A security-enhanced computing system comprises: processing resources including at least one memory and at least one physical hardware processor coupled thereto, wherein the processing resources are configured to execute a security-enhanced application program by at least: defining a plurality of guard regions in the memory in relation to data objects formed by the security-enhanced application program; inserting guards in the guard regions arranged in the memory, wherein the guards are structured to include at least first and second guard values, the guards being inserted in the guard regions and structured to facilitate at least first and second checks, the first check being performed in connection with the first guard value, the second check being performed in connection with the second guard value, the first check being less computationally intensive than the second check, the second check being structured to compensate for a false positive generated by application of the first check; determining whether an operation taken by the security-enhanced application program in connection with one of the guard regions arranged in the memory is disallowed by: identifying an address associated with the operation, performing the first check in connection with the identified address, the first check generating output indicating that either the operation is allowed or that further scrutiny is needed, and performing the second check conditioned on the output generated by the first check indicating that further scrutiny is needed, the second check indicating whether the operation is disallowed; and modifying the execution of the security-enhanced application program in response to a determination that the operation is determined to be disallowed, but otherwise permitting the execution of the security-enhanced application program.