EDBT 2026 Demo / reviewers in the wild / expert
Hang Zhang 0012
dblp:49/6156-12
· DBLP profile ↗
19ranked-venue papers
5as first author
13since 2021 · last 2026
0009-0003-6089-1079ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Security and privacy · 15 · 5 first-author · 10 since 2021Software engineering, systems software and programming languages · 4 · 3 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | LLMBisect: Breaking Barriers in Bug Bisection with A Comparative Analysis Pipeline
Zheng Zhang 0058, Haonan Li 0009, Hang Zhang 0012, Zhiyun Qian |
NDSS | 4 |
| 2025 | Towards More Accurate Static Analysis for Taint-Style Bug Detection in Linux KernelabstractStatic analysis plays a crucial role in software vulnerability detection, yet faces a persistent precision-scalability trade-off. In large codebases like the Linux kernel, traditional static analysis tools often generate excessive false positives due to simplified vulnerability modeling and over-approximation of path and data constraints. While Large Language Models (LLMs) demonstrate promising code understanding capabilities, their direct application to program analysis remains unreliable due to inherent reasoning limitations.We introduce BugLens, a post-refinement framework that significantly enhances static analysis precision for bug detection. BugLens guides LLMs through structured reasoning steps to assess security impact and validate constraints from the source code. When evaluated on Linux kernel’s taint-style bugs detected by static analysis tools, BugLens improves precision approximately 7-fold (from 0.10 to 0.72), substantially reducing false positives while uncovering four previously unreported vulnerabilities. Our results demonstrate that a well-structured, fully-automated LLM-based workflow can effectively complement and enhance traditional static analysis techniques. Haonan Li 0009, Hang Zhang 0012, Kexin Pei, Zhiyun Qian |
ASE | 2 |
| 2025 | Statically Discover Cross-Entry Use-After-Free Vulnerabilities in the Linux Kernel
Hang Zhang 0012, Jangha Kim, Chuhong Yuan, Zhiyun Qian, Taesoo Kim |
NDSS | 1 |
| 2024 | BluePrint: Automatic Malware Signature Generation for Internet ScanningabstractTraditional malware-detection research has focused on techniques for detection on end hosts or passively on networks. In contrast, global malware detection on the Internet using active Internet scanning remains relatively unstudied, with research still relying on manual reverse engineering and handwritten scanning code. Kevin Stevens, Mert Erdemir, Hang Zhang 0012, Taesoo Kim, Paul Pearce |
RAID | 3 |
| 2023 | DynaCut: A Framework for Dynamic and Adaptive Program CustomizationabstractSoftware is becoming increasingly complex and feature-rich, yet only part of any given codebase is frequently used. Existing software customization and debloating approaches target static binaries, focusing on feature discovery, control-flow analysis, and binary rewriting. As a result, the customized program binary has a smaller attack surface as well as less available functionality. This means that once a software's use scenario changes, the customized binary may not be usable. Abhijit Mahurkar, Xiaoguang Wang 0003, Hang Zhang 0012, Binoy Ravindran |
Middleware | 3 |
| 2023 | A Hybrid Alias Analysis and Its Application to Global Variable Protection in the Linux Kernel
Guoren Li, Hang Zhang 0012, Jinmeng Zhou, Wenbo Shen, Yulei Sui, Zhiyun Qian |
USENIX Security Symposium | 2 |
| 2022 | Demystifying the Dependency Challenge in Kernel FuzzingabstractFuzz testing operating system kernels remains a daunting task to date. One known challenge is that much of the kernel code is locked under specific kernel states and current kernel fuzzers are not effective in exploring such an enormous state space. We refer to this problem as the dependency challenge. Though there are some efforts trying to address the dependency challenge, the prevalence and categorization of dependencies have never been studied. Most prior work simply attempted to recover dependencies opportunistically whenever they are relatively easy to recognize. In this paper, we undertake a substantial measurement study to systematically understand the real challenge behind dependencies. To our surprise, we show that even for well-fuzzed kernel modules, unresolved dependencies still account for 59% - 88% of the uncovered branches. Furthermore, we show that the dependency challenge is only a symptom rather than the root cause of failing to achieve more coverage. By distilling and summarizing our findings, we believe the research provides valuable guidance to future research in kernel fuzzing. Finally, we propose a number of novel research directions directly based on the insights gained from the measurement study. Yu Hao 0006, Hang Zhang 0012, Guoren Li, Xingyun Du, Zhiyun Qian, Ardalan Amiri Sani |
ICSE | 2 |
| 2022 | Annotating, Tracking, and Protecting Cryptographic Secrets with CryptoMPKabstractProtecting confidential data against memory disclosure attacks is crucial to many critical applications, especially those involve cryptographic operations. However, it is neither easy to identify involved cryptographic confidential data in a program nor to implement a fine-grained and yet efficient protection. Existing defensive techniques face many shortcomings such as coarse-grained protection or exorbitant overhead. As a result, real world crypto applications seldom applied this kind of protection in practice.To make the protection of cryptographic confidential data practical, we design and implement CRYPTOMPK, a source code analysis and transformation system to implement a domain-based memory isolation. CRYPTOMPK first automatically tracks and labels all sensitive memory buffers and operations in source code with a context-sensitive, crypto-aware information flow analysis. Then it partitions the source code into crypto and non-crypto domains with a context-dependent privilege switch instrumentation. By further utilizing Intel Memory Protection Keys (MPK), CRYPTOMPK generates executables with efficient domain switching, protecting them against typical memory disclosure vulnerabilities such as arbitrary memory read. In particular, by using CRYPTOMPK, a large number of intermediate memory buffers that have been previously ignored before are well protected, and thus the security risks are reduced significantly. We leveraged CRYPTOMPK to protect prevalent applications such as Apache and Nginx with widely used crypto libraries (e.g., OpenSSL, LibSodium). CRYPTOMPK only needs several minutes to analyze each of these complex cryptographic programs and incurs at most 9.53% performance overhead for the protected programs. Xuancheng Jin, Xuangan Xiao, Songlin Jia, Dawu Gu, Hang Zhang 0012, Siqi Ma 0001, Zhiyun Qian, Juanru Li |
SP | 6 |
| 2022 | SyzScope: Revealing High-Risk Security Impacts of Fuzzer-Exposed Bugs in Linux kernel
Xiaochen Zou, Guoren Li, Weiteng Chen, Hang Zhang 0012, Zhiyun Qian |
USENIX Security Symposium | 4 |
| 2022 | Who Moves My App Promotion Investment? A Systematic Study About App Distribution FraudabstractAs the mobile era matures, it is increasingly competitive to market mobile apps, forcing companies to invest heavily on mobile user acquisition campaigns. This has unfortunately given birth to a new form of Internet fraud, which we refer to as “app distribution fraud”. This new fraud involves collusion between ISPs and fraudulent app distributors where app download is hijacked/redirected. In this article, we have the unique opportunity to cooperate with a major e-commerce company (with about 0.2 billion active users per month) to take a first peek at this problem. Through the nationwide measurement results, we find that app distribution fraud is ubiquitous yet stealthy — about 1.55 percent app downloads are hijacked/redirected, affecting more than 75 percent of the cities we tested and causing an estimated 7.46 billion U.S. dollars financial loss per year. We follow up with additional measurements on the technical mechanism of the fraud and the scope of the fraud (i.e., what other apps are also affected). Surprisingly, we find that sometimes the original app a user intends to download can be replaced with a completely different app, rendering the user's device at risks. Shaoyong Du, Minrui Zhao, Jingyu Hua, Hang Zhang 0012, Zhiyun Qian, Sheng Zhong 0002 |
IEEE Trans. Dependable Secur. Comput. | 4 |
| 2021 | Statically Discovering High-Order Taint Style Vulnerabilities in OS KernelsabstractStatic analysis is known to yield numerous false alarms when used in bug finding, especially for complex vulnerabilities in large code bases like the Linux kernel. One important class of such complex vulnerabilities is what we call "high-order taint style vulnerability", where the taint flow from the user input to the vulnerable site crosses the boundary of a single entry function invocation (i.e., syscall). Due to the large scope and high precision requirement, few have attempted to solve the problem. In this paper, we present SUTURE, a highly precise and scalable static analysis tool capable of discovering high-order vulnerabilities in OS kernels. SUTURE employs a novel summary-based high-order taint flow construction approach to efficiently enumerate the cross-entry taint flows, while incorporating multiple innovative enhancements on analysis precision that are unseen in existing tools, resulting in a highly precise inter-procedural flow-, context-, field-, index-, and opportunistically path-sensitive static taint analysis. We apply SUTURE to discover high-order taint vulnerabilities in multiple Android kernels from mainstream vendors (e.g., Google, Samsung, Huawei), the results show that SUTURE can both confirm known high-order vulnerabilities and uncover new ones. So far, SUTURE generates 79 true positive warning groups, of which 19 have been confirmed by the vendors, including a high severity vulnerability rated by Google. SUTURE also achieves a reasonable false positive rate (51.23%) perceived by users of our tool. Hang Zhang 0012, Weiteng Chen, Yu Hao 0006, Guoren Li, Yizhuo Zhai, Xiaochen Zou, Zhiyun Qian |
CCS | 1 |
| 2021 | SyzVegas: Beating Kernel Fuzzing Odds with Reinforcement Learning
Daimeng Wang, Zheng Zhang 0058, Hang Zhang 0012, Zhiyun Qian, Srikanth V. Krishnamurthy, Nael B. Abu-Ghazaleh |
USENIX Security Symposium | 3 |
| 2021 | An Investigation of the Android Kernel Patch Ecosystem
Zheng Zhang 0058, Hang Zhang 0012, Zhiyun Qian, Billy Lau |
USENIX Security Symposium | 2 |
| 2020 | UBITect: a precise and scalable method to detect use-before-initialization bugs in Linux kernelabstractUse-before-Initialization (UBI) bugs in the Linux kernel have serious security impacts, such as information leakage and privilege escalation. Developers are adopting forced initialization to cope with UBI bugs, but this approach can still lead to undefined behaviors (e.g., NULL pointer dereference). As it is hard to infer correct initialization values, we believe that the best way to mitigate UBI bugs is detection and manual patching. Precise detection of UBI bugs requires path-sensitive analysis. The detector needs to track an associated variable’s initialization status along all the possible program execution paths to its uses. However, such exhaustive analysis prevents the detection from scaling to the whole Linux kernel. This paper presents UBITect, a UBI bug finding tool which combines flow-sensitive type qualifier analysis and symbolic execution to perform precise and scalable UBI bug detection. The scalable qualifier analysis guides symbolic execution to analyze variables that are likely to cause UBI bugs. UBITect also does not require manual effort for annotations and hence, it can be directly applied to the kernel without any source code or intermediate representation (IR) change. On the Linux kernel version 4.14, UBITect reported 190 bugs, among which 78 bugs were deemed by us as true positives and 52 were confirmed by Linux maintainers. Yizhuo Zhai, Yu Hao 0006, Hang Zhang 0012, Daimeng Wang, Chengyu Song, Zhiyun Qian, Mohsen Lesani, Srikanth V. Krishnamurthy, Paul L. Yu |
ESEC/SIGSOFT FSE | 3 |
| 2018 | Charm: Facilitating Dynamic Analysis of Device Drivers of Mobile Systems
Seyed Mohammadjavad Seyed Talebi, Hamid Tavakoli, Hang Zhang 0012, Zheng Zhang 0058, Ardalan Amiri Sani, Zhiyun Qian |
USENIX Security Symposium | 3 |
| 2018 | Precise and Accurate Patch Presence Test for Binaries
Hang Zhang 0012, Zhiyun Qian |
USENIX Security Symposium | 1 |
| 2017 | Where Is the Weakest Link? A Study on Security Discrepancies Between Android Apps and Their Website Counterparts
Arash Alavi 0001, Alan Quach, Hang Zhang 0012, Bryan Marsh, Farhan Ul Haq, Zhiyun Qian, Long Lu, Rajiv Gupta 0001 |
PAM | 3 |
| 2016 | Android ION Hazard: the Curse of Customizable Memory Management SystemabstractION is a unified memory management interface for Android that is widely used on virtually all ARM based Android devices. ION attempts to achieve several ambitious goals that have not been simultaneously achieved before (not even on Linux). Different from managing regular memory in the system, ION is designed to share and manage memory with special constraints, e.g., physically contiguous memory. Despite the great flexibility and performance benefits offered, such a critical subsystem, as we discover, unfortunately has flawed security assumptions and designs. In this paper, we systematically analyze ION related vulnerabilities from conceptual root causes to detailed implementation decisions. Since ION is often customized heavily for different Android devices, the specific vulnerabilities often manifest themselves differently. By conducting a range of runtime testing as well as static analysis, we are able to uncover a large number of serious vulnerabilities on the latest Android devices (e.g., Nexus 6P running Android 6.0 and 7.0 preview) such as denial-of-service and dumping memory from the system and arbitrary applications (e.g., email content, passwords). Finally, we offer suggestions on how to redesign the ION subsystem to eliminate these flaws. We believe that the lessons learned can help guide the future design of similar memory management subsystems. Hang Zhang 0012, Dongdong She, Zhiyun Qian |
CCS | 1 |
| 2015 | Android Root and its Providers: A Double-Edged SwordabstractAndroid root is the voluntary and legitimate process of gaining the highest privilege and full control over a user's Android device. To facilitate the popular demand, a unique Android root ecosystem has formed where a variety of root providers begin to offer root as a service. Even though legitimate, many convenient one-click root methods operate by exploiting vulnerabilities in the Android system. If not carefully controlled, such exploits can be abused by malware author to gain unauthorized root privilege. To understand such risks, we undertake a study on a number of popular yet mysterious Android root providers focusing on 1) if their exploits are adequately protected. 2) the relationship between their proprietary exploits and publicly available ones. We find that even though protections are usually employed, the effort is substantially undermined by a few systematic and sometimes obvious weaknesses we discover. From one large provider, we are able to extract more than 160 exploit binaries that are well-engineered and up-to date, corresponding to more than 50 families, exceeding the number of exploits we can find publicly. We are able to identify at least 10 device driver exploits that are never reported in the public. Besides, for a popular kernel vulnerability (futex bug), the provider has engineered 89 variants to cover devices with different Android versions and configurations. Even worse, we find few of the exploit binaries can be detected by mobile antivirus software. Hang Zhang 0012, Dongdong She, Zhiyun Qian |
CCS | 1 |