SoK: Sanitizing for security

D Song, J Lettner, P Rajasekaran, Y Na… - … IEEE Symposium on …, 2019 - ieeexplore.ieee.org
The C and C++ programming languages are notoriously insecure yet remain indispensable.
Developers therefore resort to a multi-pronged approach to find security issues before …

Exploitation techniques for data-oriented attacks with existing and potential defense approaches

L Cheng, S Ahmed, H Liljestrand, T Nyman… - ACM Transactions on …, 2021 - dl.acm.org
Data-oriented attacks manipulate non-control data to alter a program's benign behavior
without violating its control-flow integrity. It has been shown that such attacks can cause …

Pacmem: Enforcing spatial and temporal memory safety via arm pointer authentication

Y Li, W Tan, Z Lv, S Yang, M Payer, Y Liu… - Proceedings of the 2022 …, 2022 - dl.acm.org
Memory safety is a key security property that stops memory corruption vulnerabilities.
Different types of memory safety enforcement solutions have been proposed and adopted by …

Binary rewriting without control flow recovery

GJ Duck, X Gao, A Roychoudhury - Proceedings of the 41st ACM …, 2020 - dl.acm.org
Static binary rewriting has many important applications in software security and systems,
such as hardening, repair, patching, instrumentation, and debugging. While many different …

Intel mpx explained: A cross-layer analysis of the intel mpx system stack

O Oleksenko, D Kuvaiskii, P Bhatotia, P Felber… - Proceedings of the …, 2018 - dl.acm.org
Memory-safety violations are the primary cause of security and reliability issues in software
systems written in unsafe languages. Given the limited adoption of decades-long research in …

Beyond tests: Program vulnerability repair via crash constraint extraction

X Gao, B Wang, GJ Duck, R Ji, Y ** safe rust safe with galeed
E Rivera, S Mergendahl, H Shrobe, H Okhravi… - Proceedings of the 37th …, 2021 - dl.acm.org
Rust is a programming language that simultaneously offers high performance and strong
security guarantees. Safe Rust (ie, Rust code that does not use the unsafe keyword) is …

EffectiveSan: type and memory error detection using dynamically typed C/C++

GJ Duck, RHC Yap - Proceedings of the 39th ACM SIGPLAN …, 2018 - dl.acm.org
Low-level programming languages with weak/static type systems, such as C and C++, are
vulnerable to errors relating to the misuse of memory at runtime, such as (sub-) object …