English
Related papers

Related papers: SafeFFI: Efficient Sanitization at the Boundary Be…

200 papers

Rust relies on its unique ownership mechanism to ensure thread and memory safety. However, numerous potential security vulnerabilities persist in practical applications. New language features in Rust pose new challenges for vulnerability…

Programming Languages · Computer Science 2026-01-08 Yu Zhang , Kaiwen Zhang , Guanjun Liu

Concurrent programs suffer from data races. To prevent data races, programmers use locks. However, programs can eliminate data races only when they acquire and release correct locks at correct timing. The lock API of C, in which people have…

Software Engineering · Computer Science 2023-01-30 Jaemin Hong , Sukyoung Ryu

Memory corruption vulnerabilities remain one of the most severe threats to software security. They often allow attackers to achieve arbitrary code execution by redirecting a vulnerable program's control flow. While Control Flow Integrity…

Cryptography and Security · Computer Science 2025-08-22 Sabine Houy , Bruno Kreyssig , Timothee Riom , Alexandre Bartel , Patrick McDaniel

In modern runtime systems, memory layout calculations are hand-coded in systems languages. Primitives in these languages are not powerful enough to describe a rich set of layouts, leading to reliance on ad-hoc macros, numerous interrelated…

Programming Languages · Computer Science 2019-09-13 Karl Cronburg , Samuel Z. Guyer

The popularity of the Rust language continues to explode; yet, many critical codebases remain authored in C. Automatically translating C to Rust is thus an appealing course of action. Several works have gone down this path, handling an…

Programming Languages · Computer Science 2026-02-26 Aymeric Fromherz , Jonathan Protzenko

Memory safety in complex applications implemented in unsafe programming languages such as C/C++ is still an unresolved problem in practice. Many different types of defenses have been proposed in the past to mitigate this problem. The most…

Cryptography and Security · Computer Science 2022-03-09 Lukas Bernhard , Michael Rodler , Thorsten Holz , Lucas Davi

Prior research has extensively studied flaky tests in various domains, such as web applications, mobile applications, and other open-source projects in a range of multiple programing languages, including Java, Javascript, Python, Ruby, and…

Software Engineering · Computer Science 2025-02-06 Tom Schroeder , Minh Phan , Yang Chen

Decompiling Rust binaries is challenging due to the language's rich type system, aggressive compiler optimizations, and widespread use of high-level abstractions. In this work, we conduct a benchmark-driven evaluation of decompilation…

Programming Languages · Computer Science 2025-07-28 Zixu Zhou

Compiler-based Control-Flow Integrity (CFI) offers strong forward-edge protection but remains challenging to deploy in large C/C++ software due to visibility mismatches, type inconsistencies, and unintended behavioral failures. We present…

Software Engineering · Computer Science 2025-12-30 Sabine Houy , Bruno Kreyssig , Alexandre Bartel

This paper is about the interface between languages which use a garbage collector and those which use fancy types for safe manual memory management. Garbage collection is the traditional memory management scheme for functional languages,…

Programming Languages · Computer Science 2018-07-03 Alan Jeffrey

Tag-based sanitizers attach a small "key" to each pointer and a matching "lock" tag to its target memory object, enabling runtime verification of pointer-object consistency and helping developers to detect potential memory violations.…

Cryptography and Security · Computer Science 2025-09-12 Mengfei Xie , Yan Lin , Hongtao Wu , Jianming Fu , Chenke Luo , Guojun Peng

Intel SGX Guard eXtensions (SGX), a hardware-supported trusted execution environment (TEE), is designed to protect security-sensitive applications. However, since enclave applications are developed with memory unsafe languages such as…

Cryptography and Security · Computer Science 2020-05-14 Huibo Wang , Mingshen Sun , Qian Feng , Pei Wang , Tongxin Li , Yu Ding

Pre-trained large language models (LLMs) are becoming useful for various tasks. To improve their performance on certain tasks, it is necessary to fine-tune them on specific data corpora (e.g., medical reports, business data). These…

Machine Learning · Computer Science 2025-10-27 Antoine Boutet , Lucas Magnana

Rust is a general-purpose programming language that is both type- and memory-safe. Rust does not use a garbage collector, but rather achieves these properties through a sophisticated, but complex, type system. Doing so makes Rust very…

Software Engineering · Computer Science 2022-02-16 Michael Coblenz , Michelle Mazurek , Michael Hicks

WebAssembly (Wasm) is a next-generation portable compilation target for deploying applications written in high-level languages on the web. In order to protect their memory from untrusted code, web browser engines confine the execution of…

Programming Languages · Computer Science 2019-10-23 Marco Vassena , Marco Patrignani

Subverting the flow of instructions (e.g., by use of code-reuse attacks) still poses a serious threat to the security of today's systems. Various control flow integrity (CFI) schemes have been proposed as a powerful technique to detect and…

Hardware Architecture · Computer Science 2021-03-09 Mario Telesklav , Stefan Tauner

Attackers willing to compromise computing systems can use malicious peripherals as an attack vector, threatening users that cannot verify the hardware's authenticity. To address this problem, our work uses the Security Protocol and Data…

Cryptography and Security · Computer Science 2026-05-11 Ágatha de Freitas , Marcos A. Simplicio , Bruno C. Albertini , Renan C. A. Alves

As embedded systems grow in complexity and scale due to increased functional diversity, component-based development (CBD) emerges as a solution to streamline their architecture and enhance functionality reuse. CBD typically utilizes the C…

Software Engineering · Computer Science 2025-10-30 Nao Yoshimura , Hiroshi Oyama , Takuya Azumi

Memory safety in C and C++ remains largely unresolved. A technique usually called "memory tagging" may dramatically improve the situation if implemented in hardware with reasonable overhead. This paper describes two existing implementations…

Cryptography and Security · Computer Science 2018-02-27 Kostya Serebryany , Evgenii Stepanov , Aleksey Shlyapnikov , Vlad Tsyrklevich , Dmitry Vyukov

Modern computing systems face security threats, including memory corruption attacks, speculative execution vulnerabilities, and control-flow hijacking. Although existing solutions address these threats individually, they frequently…

Cryptography and Security · Computer Science 2025-12-19 Suraj Kumar Sah , Love Kumar Sah
‹ Prev 1 4 5 6 7 8 10 Next ›