Type inference on executables

J Caballero, Z Lin - ACM Computing Surveys (CSUR), 2016 - dl.acm.org
In many applications, source code and debugging symbols of a target program are not
available, and the only thing that we can access is the program executable. A fundamental …

Enforcing {Forward-Edge}{Control-Flow} integrity in {GCC} & {LLVM}

C Tice, T Roeder, P Collingbourne… - 23rd USENIX security …, 2014 - usenix.org
Constraining dynamic control transfers is a common technique for mitigating software
vulnerabilities. This defense has been widely and successfully used to protect return …

Attack categorisation for IoT applications in critical infrastructures, a survey

E Staddon, V Loscri, N Mitton - applied sciences, 2021 - mdpi.com
With the ever advancing expansion of the Internet of Things (IoT) into our everyday lives, the
number of attack possibilities increases. Furthermore, with the incorporation of the IoT into …

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 …

Typestate-guided fuzzer for discovering use-after-free vulnerabilities

H Wang, X **e, Y Li, C Wen, Y Li, Y Liu, S Qin… - Proceedings of the …, 2020 - dl.acm.org
Existing coverage-based fuzzers usually use the individual control flow graph (CFG) edge
coverage to guide the fuzzing process, which has shown great potential in finding …

[PDF][PDF] Preventing Use-after-free with Dangling Pointers Nullification.

B Lee, C Song, Y Jang, T Wang, T Kim, L Lu, W Lee - NDSS, 2015 - compsec.snu.ac.kr
Many system components and network applications are written in languages that are prone
to memory corruption vulnerabilities. There have been countless cases where simple …

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 …

Pinpoint: Fast and precise sparse value flow analysis for million lines of code

Q Shi, X **ao, R Wu, J Zhou, G Fan… - Proceedings of the 39th …, 2018 - dl.acm.org
When dealing with millions of lines of code, we still cannot have the cake and eat it: sparse
value-flow analysis is powerful in checking source-sink problems, but existing work cannot …

[PDF][PDF] SafeDispatch: Securing C++ Virtual Calls from Memory Corruption Attacks.

D Jang, Z Tatlock, S Lerner - NDSS, 2014 - cseweb.ucsd.edu
Several defenses have increased the cost of traditional, low-level attacks that corrupt control
data, eg return addresses saved on the stack, to compromise program execution. In …

Dangsan: Scalable use-after-free detection

E Van Der Kouwe, V Nigade, C Giuffrida - Proceedings of the Twelfth …, 2017 - dl.acm.org
Use-after-free vulnerabilities due to dangling pointers are an important and growing threat to
systems security. While various solutions exist to address this problem, none of them is …