发明名称 Systems, methods, and media for recovering an application from a fault or attack
摘要 Systems, methods, and media for recovering an application from a fault or an attack are disclosed herein. In some embodiments, a method is provided for enabling a software application to recover from a fault condition. The method includes specifying constrained data items and assigning a set of repair procedures to the constrained data items. The method further includes detecting a fault condition on the constrained data items during execution of the software application, which triggers at least one repair procedure. The triggered repair procedures are executed and the execution of the software application is restored. In some embodiments, the restoring comprises providing memory rollback to a point of execution of the software application before the fault condition was detected.
申请公布号 US8924782(B2) 申请公布日期 2014.12.30
申请号 US200812523989 申请日期 2008.01.28
申请人 The Trustees of Columbia University in the City of New York 发明人 Locasto Michael E.;Keromytis Angelos D.;Stavrou Angelos;Ciocarlie Gabriela F.
分类号 G06F11/00;G06F11/36 主分类号 G06F11/00
代理机构 Byrne Poh LLP 代理人 Byrne Poh LLP
主权项 1. A method for enabling a software application to recover from a fault condition, the method comprising: specifying, using at least one hardware processor, memory locations within said software application; assigning, using at least one hardware processor, a set of repair procedures to said memory locations, wherein a first repair procedure is assigned to a first memory location and a second repair procedure is assigned to a second memory location, wherein the first repair procedure corresponds to a first value, wherein the second repair procedure corresponds to a second value, and wherein the first memory location and the second memory location are different memory locations; detecting, using at least one hardware processor, a fault condition on said memory locations during execution of said software application, said fault condition triggering at least one of the assigned first repair procedure and the assigned second repair procedure of said set of repair procedures; maintaining, using at least one hardware processor, a memory log of changes to memory during the execution of the software application; and executing, using at least one hardware processor, said triggered repair procedure, wherein, upon the fault condition triggering the first repair procedure, the execution comprises identifying a first address of the memory associated with the first memory location, assigning the first value to the first address of the memory associated with the first memory location, and restoring the execution of the software application based on the memory log, and wherein, upon the fault condition triggering the second repair procedure, the execution comprises identifying a second address of the memory associated with the second memory location, assigning the second value to the second address of the memory associated with the second memory location, and restoring the execution of the software application based on the memory log.
地址 New York NY US