The Experts below are selected from a list of 30 Experts worldwide ranked by ideXlab platform
Peng Liu - One of the best experts on this subject based on the ideXlab platform.
-
PLDI - Cruiser: concurrent heap buffer overflow Monitoring using lock-free data structures
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation - PLDI '11, 2011Co-Authors: Qiang Zeng, Peng LiuAbstract:Security enforcement inlined into user Threads often delays the protected programs; inlined resource reclamation may interrupt program execution and defer resource release. We propose software cruising, a novel technique that migrates security enforcement and resource reclamation from user Threads to a concurrent Monitor Thread. The technique leverages the increasingly popular multicore and multiprocessor architectures and uses lock-free data structures to achieve non-blocking and efficient synchronization between the Monitor and user Threads. As a case study, software cruising is applied to the heap buffer overflow problem. Previous mitigation and detection techniques for this problem suffer from high performance overhead, legacy code compatibility, semantics loyalty, or tedious manual program transformation. We present a concurrent heap buffer overflow detector, Cruiser, in which a concurrent Thread is added to the user program to Monitor heap integrity, and custom lock-free data structures and algorithms are designed to achieve high efficiency and scalability. The experiments show that our approach is practical: it imposes an average of 5% performance overhead on SPEC CPU2006, and the throughput slowdown on Apache is negligible on average.
Qiang Zeng - One of the best experts on this subject based on the ideXlab platform.
-
cruiser concurrent heap buffer overflow Monitoring using lock free data structures
Programming Language Design and Implementation, 2011Co-Authors: Qiang Zeng, Dinghao WuAbstract:Security enforcement inlined into user Threads often delays the protected programs; inlined resource reclamation may interrupt program execution and defer resource release. We propose software cruising, a novel technique that migrates security enforcement and resource reclamation from user Threads to a concurrent Monitor Thread. The technique leverages the increasingly popular multicore and multiprocessor architectures and uses lock-free data structures to achieve non-blocking and efficient synchronization between the Monitor and user Threads. As a case study, software cruising is applied to the heap buffer overflow problem. Previous mitigation and detection techniques for this problem suffer from high performance overhead, legacy code compatibility, semantics loyalty, or tedious manual program transformation. We present a concurrent heap buffer overflow detector, Cruiser, in which a concurrent Thread is added to the user program to Monitor heap integrity, and custom lock-free data structures and algorithms are designed to achieve high efficiency and scalability. The experiments show that our approach is practical: it imposes an average of 5% performance overhead on SPEC CPU2006, and the throughput slowdown on Apache is negligible on average.
-
PLDI - Cruiser: concurrent heap buffer overflow Monitoring using lock-free data structures
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation - PLDI '11, 2011Co-Authors: Qiang Zeng, Peng LiuAbstract:Security enforcement inlined into user Threads often delays the protected programs; inlined resource reclamation may interrupt program execution and defer resource release. We propose software cruising, a novel technique that migrates security enforcement and resource reclamation from user Threads to a concurrent Monitor Thread. The technique leverages the increasingly popular multicore and multiprocessor architectures and uses lock-free data structures to achieve non-blocking and efficient synchronization between the Monitor and user Threads. As a case study, software cruising is applied to the heap buffer overflow problem. Previous mitigation and detection techniques for this problem suffer from high performance overhead, legacy code compatibility, semantics loyalty, or tedious manual program transformation. We present a concurrent heap buffer overflow detector, Cruiser, in which a concurrent Thread is added to the user program to Monitor heap integrity, and custom lock-free data structures and algorithms are designed to achieve high efficiency and scalability. The experiments show that our approach is practical: it imposes an average of 5% performance overhead on SPEC CPU2006, and the throughput slowdown on Apache is negligible on average.
Periklis Akritidis - One of the best experts on this subject based on the ideXlab platform.
-
DIMVA - MemPatrol: Reliable Sideline Integrity Monitoring for High-Performance Systems
Detection of Intrusions and Malware and Vulnerability Assessment, 2017Co-Authors: Myoung Jin Nam, Wonhong Nam, Jin Young Choi, Periklis AkritidisAbstract:Integrity checking using inline reference Monitors to check individual memory accesses in C/C++ programs remains prohibitively expensive for the most performance-critical applications. To address this, we developed MemPatrol, a “sideline” integrity Monitor that allows us to minimize the amount of performance degradation at the expense of increased detection delay. Inspired by existing proposals, MemPatrol uses a dedicated Monitor Thread running in parallel with the other Threads of the protected application. Previous proposals, however, either rely on costly isolation mechanisms, or introduce a vulnerability window between the attack and its detection. During this vulnerability window, malicious code can cover up memory corruption, breaking the security guarantee of “eventual detection” that comes with strong isolation. Our key contributions are (i) a novel userspace-based isolation mechanism to address the vulnerability window, and (ii) to successfully reduce the overhead incurred by the application’s Threads to a level acceptable for a performance-critical application. We evaluate MemPatrol on a high-performance passive network Monitoring system, demonstrating its low overheads, as well as the operator’s control of the trade-off between performance degradation and detection delay.
-
MemPatrol: Reliable Sideline Integrity Monitoring for High-Performance Systems
Detection of Intrusions and Malware and Vulnerability Assessment, 2017Co-Authors: Myoung Jin Nam, Wonhong Nam, Jin Young Choi, Periklis AkritidisAbstract:Integrity checking using inline reference Monitors to check individual memory accesses in C/C++ programs remains prohibitively expensive for the most performance-critical applications. To address this, we developed MemPatrol, a “sideline” integrity Monitor that allows us to minimize the amount of performance degradation at the expense of increased detection delay. Inspired by existing proposals, MemPatrol uses a dedicated Monitor Thread running in parallel with the other Threads of the protected application. Previous proposals, however, either rely on costly isolation mechanisms, or introduce a vulnerability window between the attack and its detection. During this vulnerability window, malicious code can cover up memory corruption, breaking the security guarantee of “eventual detection” that comes with strong isolation. Our key contributions are (i) a novel userspace-based isolation mechanism to address the vulnerability window, and (ii) to successfully reduce the overhead incurred by the application’s Threads to a level acceptable for a performance-critical application. We evaluate MemPatrol on a high-performance passive network Monitoring system, demonstrating its low overheads, as well as the operator’s control of the trade-off between performance degradation and detection delay.
Dinghao Wu - One of the best experts on this subject based on the ideXlab platform.
-
cruiser concurrent heap buffer overflow Monitoring using lock free data structures
Programming Language Design and Implementation, 2011Co-Authors: Qiang Zeng, Dinghao WuAbstract:Security enforcement inlined into user Threads often delays the protected programs; inlined resource reclamation may interrupt program execution and defer resource release. We propose software cruising, a novel technique that migrates security enforcement and resource reclamation from user Threads to a concurrent Monitor Thread. The technique leverages the increasingly popular multicore and multiprocessor architectures and uses lock-free data structures to achieve non-blocking and efficient synchronization between the Monitor and user Threads. As a case study, software cruising is applied to the heap buffer overflow problem. Previous mitigation and detection techniques for this problem suffer from high performance overhead, legacy code compatibility, semantics loyalty, or tedious manual program transformation. We present a concurrent heap buffer overflow detector, Cruiser, in which a concurrent Thread is added to the user program to Monitor heap integrity, and custom lock-free data structures and algorithms are designed to achieve high efficiency and scalability. The experiments show that our approach is practical: it imposes an average of 5% performance overhead on SPEC CPU2006, and the throughput slowdown on Apache is negligible on average.
Myoung Jin Nam - One of the best experts on this subject based on the ideXlab platform.
-
DIMVA - MemPatrol: Reliable Sideline Integrity Monitoring for High-Performance Systems
Detection of Intrusions and Malware and Vulnerability Assessment, 2017Co-Authors: Myoung Jin Nam, Wonhong Nam, Jin Young Choi, Periklis AkritidisAbstract:Integrity checking using inline reference Monitors to check individual memory accesses in C/C++ programs remains prohibitively expensive for the most performance-critical applications. To address this, we developed MemPatrol, a “sideline” integrity Monitor that allows us to minimize the amount of performance degradation at the expense of increased detection delay. Inspired by existing proposals, MemPatrol uses a dedicated Monitor Thread running in parallel with the other Threads of the protected application. Previous proposals, however, either rely on costly isolation mechanisms, or introduce a vulnerability window between the attack and its detection. During this vulnerability window, malicious code can cover up memory corruption, breaking the security guarantee of “eventual detection” that comes with strong isolation. Our key contributions are (i) a novel userspace-based isolation mechanism to address the vulnerability window, and (ii) to successfully reduce the overhead incurred by the application’s Threads to a level acceptable for a performance-critical application. We evaluate MemPatrol on a high-performance passive network Monitoring system, demonstrating its low overheads, as well as the operator’s control of the trade-off between performance degradation and detection delay.
-
MemPatrol: Reliable Sideline Integrity Monitoring for High-Performance Systems
Detection of Intrusions and Malware and Vulnerability Assessment, 2017Co-Authors: Myoung Jin Nam, Wonhong Nam, Jin Young Choi, Periklis AkritidisAbstract:Integrity checking using inline reference Monitors to check individual memory accesses in C/C++ programs remains prohibitively expensive for the most performance-critical applications. To address this, we developed MemPatrol, a “sideline” integrity Monitor that allows us to minimize the amount of performance degradation at the expense of increased detection delay. Inspired by existing proposals, MemPatrol uses a dedicated Monitor Thread running in parallel with the other Threads of the protected application. Previous proposals, however, either rely on costly isolation mechanisms, or introduce a vulnerability window between the attack and its detection. During this vulnerability window, malicious code can cover up memory corruption, breaking the security guarantee of “eventual detection” that comes with strong isolation. Our key contributions are (i) a novel userspace-based isolation mechanism to address the vulnerability window, and (ii) to successfully reduce the overhead incurred by the application’s Threads to a level acceptable for a performance-critical application. We evaluate MemPatrol on a high-performance passive network Monitoring system, demonstrating its low overheads, as well as the operator’s control of the trade-off between performance degradation and detection delay.