English
Related papers

Related papers: Safe and usable kernel extensions with Rex

200 papers

The Rust programming language restricts aliasing to provide static safety guarantees. However, in certain situations, developers need to bypass these guarantees by using a set of unsafe features. If they are used incorrectly, these features…

Software Engineering · Computer Science 2026-03-09 Ian McCormack , Tomas Dougan , Sam Estep , Hanan Hibshi , Jonathan Aldrich , Joshua Sunshine

Software plays a crucial role in our daily lives, and therefore the quality and security of software systems have become increasingly important. However, vulnerabilities in software still pose a significant threat, as they can have serious…

Software Engineering · Computer Science 2023-09-18 Chaozheng Wang , Zongjie Li , Yun Peng , Shuzheng Gao , Sirong Chen , Shuai Wang , Cuiyun Gao , Michael R. Lyu

Although Rust primarily intends to be a safe programming language that excludes undefined behaviour, it provides its users with the escape hatch of unsafe Rust, allowing them to circumvent some of its strong compile-time checks. This…

Programming Languages · Computer Science 2025-10-28 Alex Le Blanc , Patrick Lam

Regular expressions (regexes) are a powerful mechanism for solving string-matching problems. They are supported by all modern programming languages, and have been estimated to appear in more than a third of Python and JavaScript projects.…

Software Engineering · Computer Science 2023-03-07 Louis G. Michael , James Donohue , James C. Davis , Dongyoon Lee , Francisco Servant

Performance in modern GPU-centric systems increasingly depends on resource management policies, including memory placement, scheduling, and observability. However, uniform policies typically yield suboptimal performance across diverse…

Operating Systems · Computer Science 2025-12-23 Yusheng Zheng , Tong Yu , Yiwei Yang , Minghui Jiang , Xiangyu Gao , Jianchang Su , Yanpeng Hu , Wenan Mao , Wei Zhang , Dan Williams , Andi Quinn

Large language models are increasingly used to produce runnable software. In practice, security is often addressed through a Detect--Repair--Verify (DRV) loop that detects issues, applies fixes, and verifies the result. This work studies…

Software Engineering · Computer Science 2026-03-03 Cheng Cheng

Despite the wide usage of container-based cloud computing, container auditing for security analysis relies mostly on built-in host audit systems, which often lack the ability to capture high-fidelity container logs. State-of-the-art…

Cryptography and Security · Computer Science 2021-11-05 Soo Yee Lim , Bogdan Stelea , Xueyuan Han , Thomas Pasquier

Recent Microsoft security bulletins show that kernel vulnerabilities are becoming more and more important security threats. Despite the pretty extensive security mitigations many of the kernel vulnerabilities are still exploitable.…

Cryptography and Security · Computer Science 2011-05-11 Piotr Bania

Dynamic analysis, through rehosting, is an important capability for security assessment in embedded systems software. Existing rehosting techniques aim to provide high-fidelity execution by accurately emulating hardware and peripheral…

A program that maintains key safety properties even when interacting with arbitrary untrusted code is said to enjoy \emph{robust safety}. Proving that a program written in a mainstream language is robustly safe is typically challenging…

Programming Languages · Computer Science 2022-05-16 Marco Patrignani , Sam Blackshear

Program safety (i.e., absence of undefined behaviors) is critical for correct operation of computer systems. It is usually verified at the source level (e.g., by separation logics) and preserved to the target by verified compilers (e.g.,…

Programming Languages · Computer Science 2025-10-14 Jinhua Wu , Yuting Wang , Liukun Yu , Linglong Meng

The Linux kernel is one of the most important Free/Libre Open Source Software (FLOSS) projects. It is installed on billions of devices all over the world, which process various sensitive, confidential or simply private data. It is crucial…

Software Engineering · Computer Science 2020-01-07 Denis Efremov , Ilya Shchepetkov

This paper explores the extent to which regular expressions (regexes) are portable across programming languages. Many languages offer similar regex syntaxes, and it would be natural to assume that regexes can be ported across language…

Software Engineering · Computer Science 2021-05-11 James C. Davis , Louis G. Michael , Christy A. Coghlan , Francisco Servant , Dongyoon Lee

The extended Berkeley Packet Filter (eBPF) is useful for faster packet processing and network monitoring in softwarized deployments. Similarly, softwarized deployments of 5G core network services adopted eBPF to meet the stringent latency…

Networking and Internet Architecture · Computer Science 2026-03-23 Yash Deshpande , Samaresh Bera

Malware and cheat developers use fileless execution techniques to evade traditional, signature-based security products. These methods include various types of manual mapping, module stomping, and threadless injection which work entirely…

Cryptography and Security · Computer Science 2025-08-07 Arjun Juneja

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

The security of billions of devices worldwide depends on the security and robustness of the mainline Linux kernel. However, the increasing number of kernel-specific vulnerabilities, especially memory safety vulnerabilities, shows that the…

Cryptography and Security · Computer Science 2018-10-03 Elena Reshetova , Hans Liljestrand , Andrew Paverd , N. Asokan

Software reliability is critical in ensuring that the digital systems we depend on function correctly. In software development, increasing software reliability often involves testing. However, for complex and critical systems, developers…

Software Engineering · Computer Science 2025-09-09 Francisco Oliveira , Alexandra Mendes , Carolina Carreira

The Rust programming language provides a powerful type system that checks linearity and borrowing, allowing code to safely manipulate memory without garbage collection and making Rust ideal for developing low-level, high-assurance systems.…

Logic in Computer Science · Computer Science 2023-03-14 Andrea Lattuada , Travis Hance , Chanhee Cho , Matthias Brun , Isitha Subasinghe , Yi Zhou , Jon Howell , Bryan Parno , Chris Hawblitzel

Memory safety remains a critical and widely violated property in reality. Numerous defense techniques have been proposed and developed but most of them are not applied or enabled by default in production-ready environment due to their…

Cryptography and Security · Computer Science 2021-11-30 Wei Song , Jiameng Ying , Sihao Shen , Boya Li , Hao Ma , Peng Liu