Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Mingwei Zhang 0005

dblp:08/7638-5 · DBLP profile ↗
← Back
10ranked-venue papers
4as first author
0since 2021 · last 2018
—ORCID · conflict

Domains — the database's venue-derived domains; a paper can count in several

Security and privacy · 7 · 3 first-authorSystems, architecture and hardware · 4 · 1 first-authorSoftware engineering, systems software and programming languages · 2

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Network and information security
4 papers
Systems and software security · 78% Malware analysis · 22%
Software engineering, system software, and programming languages
1 paper
Concurrent programming · 100%
Databases, data mining, and information retrieval
1 paper
Data mining · 100%

Topics — the 12 heaviest of 13, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Systems and software security
exploitation mitigation
0.312018
A Robust and Efficient Defense against Use-after-Free Exploits via Concurrent Pointer Sweeping · CCS 2018
Systems and software security
memory safety
0.312018
A Robust and Efficient Defense against Use-after-Free Exploits via Concurrent Pointer Sweeping · CCS 2018
Systems and software security › memory safety › memory corruption defense
use-after-free prevention
0.312018
A Robust and Efficient Defense against Use-after-Free Exploits via Concurrent Pointer Sweeping · CCS 2018
Malware analysis › mobile malware detection
android malware detection
0.312017
POSTER: Semi-supervised Classification for Dynamic Android Malware Detection · CCS 2017
Malware analysis
dynamic malware analysis
0.312017
POSTER: Semi-supervised Classification for Dynamic Android Malware Detection · CCS 2017
Systems and software security › application security
game security
0.212016
Shoot for the Moon and You Will Never Miss: Characterizing and Detecting Aimbots in Online Games · SIGMETRICS 2016
Systems and software security
binary instrumentation
0.212013
Control Flow Integrity for COTS Binaries · USENIX Security Symposium 2013
Systems and software security › exploitation
control-flow hijacking
0.212013
Control Flow Integrity for COTS Binaries · USENIX Security Symposium 2013
Systems and software security › memory safety
control-flow integrity
0.212013
Control Flow Integrity for COTS Binaries · USENIX Security Symposium 2013
Systems and software security
exploitation
0.212013
Control Flow Integrity for COTS Binaries · USENIX Security Symposium 2013
Data mining
semi-supervised learning
0.112017
POSTER: Semi-supervised Classification for Dynamic Android Malware Detection · CCS 2017
Systems and software security › application security
game cheating detection
0.112016
Shoot for the Moon and You Will Never Miss: Characterizing and Detecting Aimbots in Online Games · SIGMETRICS 2016

Methods — techniques the papers use, named apart from their topics

object origin tracking · 0.7concurrent pointer sweeping · 0.7semi-supervised learning · 0.6dynamic analysis · 0.6cheat detection · 0.2
YearPublicationVenuePosition
2018 A Robust and Efficient Defense against Use-after-Free Exploits via Concurrent Pointer Sweeping
abstract
Applications in C/C++ are notoriously prone to memory corruptions. With significant research efforts devoted to this area of study, the security threats posed by previously popular vulnerabilities, such as stack and heap overflows, are not as serious as before. Instead, we have seen the meteoric rise of attacks exploiting use-after-free (UaF) vulnerabilities in recent years, which root in pointers pointing to freed memory (i.e., dangling pointers). Although various approaches have been proposed to harden software against UaF, none of them can achieve robustness and efficiency at the same time. In this paper, we present a novel defense called pSweeper to robustly protect against UaF exploits with low overhead, and pinpoint the root-causes of UaF vulnerabilities with one safe crash. The success of pSweeper lies in its two unique and innovative design ideas, concurrent pointer sweeping (CPW) and object origin tracking (OOT). CPW exploits the increasingly available multi-cores on modern PCs and outsources the heavyweight security checks and enforcement to dedicated threads that can run on spare cores. Specifically, CPW iteratively sweeps all live pointers in a concurrent thread to find dangling pointers. This design is quite different from previous work that requires to track every pointer propagation to maintain accurate point-to relationship between pointers and objects. OOT can help to pinpoint the root-causes of UaF by informing developers of how a dangling pointer is created, i.e., how the problematic object is allocated and freed. We implement a prototype of pSweeper and validate its efficacy in real scenarios. Our experimental results show that pSweeper is effective in defeating real-world UaF exploits and efficient when deployed in production runs.
Daiping Liu, Mingwei Zhang 0005, Haining Wang 0001
CCS2
2018 SGXElide: enabling enclave code secrecy via self-modification
abstract
Intel SGX provides a secure enclave in which code and data are hidden from the outside world, including privileged code such as the OS or hypervisor. However, by default, enclave code prior to initialization can be disassembled and therefore no secrets can be embedded in the binary. This is a problem for developers wishing to protect code secrets. This paper introduces SGXElide, a nearly-transparent framework that enables enclave code confidentiality. The key idea is to treat program code as data and dynamically restore secrets after an enclave is initialized. SGXElide can be integrated into any enclave, providing a mechanism to securely decrypt or deliver the secret code with the assistance of a developer-controlled trusted remote party. We have implemented SGXElide atop a recently released version of the Linux SGX SDK, and our evaluation with a number of programs shows that SGXElide can be used to protect the code secrecy of practical applications with no overhead after enclave initialization.
Erick Bauman, Huibo Wang, Mingwei Zhang 0005, Zhiqiang Lin 0001
CGO3
2017 Protecting COTS Binaries from Disclosure-guided Code Reuse Attacks
abstract
Code diversification, combined with execute-only memory, provides an effective defense against just-in-time code reuse attacks. However, existing techniques for combining code diversification and hardware-assisted memory protections typically require compiler support, as well as the deployment or modification of a hypervisor. These requirements often cannot be met, either because source code is not available, or because the required hardware features may not be available on the target system. In this paper we present SECRET, a software hardening technique tailored to legacy and closed-source software that provides equivalent protection to execute-only memory without relying on hardware features or recompilation. This is achieved using two novel techniques, code space isolation and code pointer remapping, which prevent read accesses to the executable memory of the protected code. Furthermore, SECRET thwarts code pointer harvesting attacks on ELF files by remapping existing code pointers to use random values. SECRET has been implemented on 32-bit Linux systems. Our evaluation shows that it introduces just 2% additional runtime overhead on top of a state-of-the-art CFI implementation, bringing the total average overhead to about 16%. In addition, it achieves better protection coverage compared to compiler-based techniques, as it can handle low-level machine code such as inline assembly or extra code introduced by the linker and loader.
Mingwei Zhang 0005, Michalis Polychronakis, R. Sekar 0001
ACSAC1
2017 POSTER: Semi-supervised Classification for Dynamic Android Malware Detection
abstract
Manually labeling the large number of samples of Android APKs into benign or different malicious families requires tremendous human effort, while it is comparably easy and cheap to obtain a large amount of unlabeled APKs from various sources. Moreover, the fast-paced evolution of Android malware continuously generates derivative and new malware families. These families often contain new signatures, which can escape detection that uses static analysis. These practical challenges can also cause classical supervised machine learning algorithms to degrade in performance.
Mingwei Zhang 0005, Chih-Yuan Yang, Ravi Sahita
CCS2
2017 Detecting Passive Cheats in Online Games via Performance-Skillfulness Inconsistency
abstract
As the most commonly used bots in first-person shooter (FPS) online games, aimbots are notoriously difficult to detect because they are completely passive and resemble excellent honest players in many aspects. In this paper, we conduct the first field measurement study to understand the status quo of aimbots and how they play in the wild. For data collection purpose, we devise a novel and generic technique called baittarget to accurately capture existing aimbots from the two most popular FPS games. Our measurement reveals that cheaters who use aimbots cannot play as skillful as excellent honest players in all aspects even though aimbots can help them to achieve very high shooting performance. To characterize the unskillful and blatant nature of cheaters, we identify seven features, of which six are novel, and these features cannot be easily mimicked by aimbots. Leveraging this set of features, we propose an accurate and robust server-side aimbot detector called AimDetect. The core of AimDetect is a cascaded classifier that detects the inconsistency between performance and skillfulness of aimbots. We evaluate the efficacy and generality of AimDetect using the real game traces. Our results show that AimDetect can capture almost all of the aimbots with very few false positives and minor overhead.
Daiping Liu, Xing Gao 0001, Mingwei Zhang 0005, Haining Wang 0001, Angelos Stavrou
DSN3
2016 Shoot for the Moon and You Will Never Miss: Characterizing and Detecting Aimbots in Online Games
abstract
No abstract available.
Daiping Liu, Xing Gao 0001, Mingwei Zhang 0005, Haining Wang 0001
SIGMETRICS3
2015 A Principled Approach for ROP Defense
abstract
Return-Oriented Programming (ROP) is an effective attack technique that can escape modern defenses such as DEP. ROP is based on repeated abuse of existing code snippets ending with return instructions (called gadgets), as compared to using injected code. Several defense mechanisms have been proposed to counter ROP by enforcing policies on the targets of return instructions, and/or their frequency. However, these policies have been repeatedly bypassed by more advanced ROP attacks. While stricter policies have the potential to thwart ROP, they lead to incompatibilities which discourage their deployment. In this work, we address this challenge by presenting a principled approach for ROP defense. Our experimental evaluation shows that our approach enforces a strong policy, while offering better compatibility and good performance.
Rui Qiao 0002, Mingwei Zhang 0005, R. Sekar 0001
ACSAC2
2015 Control Flow and Code Integrity for COTS binaries: An Effective Defense Against Real-World ROP Attacks
abstract
Despite decades of sustained effort, memory corruption attacks continue to be one of the most serious security threats faced today. They are highly sought after by attackers, as they provide ultimate control --- the ability to execute arbitrary low-level code. Attackers have shown time and again their ability to overcome widely deployed countermeasures such as Address Space Layout Randomization (ASLR) and Data Execution Prevention (DEP) by crafting Return Oriented Programming (ROP) attacks. Although Turing-complete ROP attacks have been demonstrated in research papers, real-world ROP payloads have had a more limited objective: that of disabling DEP so that injected native code attacks can be carried out. In this paper, we provide a systematic defense, called Control Flow and Code Integrity (CFCI), that makes injected native code attacks impossible. CFCI achieves this without sacrificing compatibility with existing software, the need to replace system programs such as the dynamic loader, and without significant performance penalty. We will release CFCI as open-source software by the time of this conference.
Mingwei Zhang 0005, R. Sekar 0001
ACSAC1
2014 A platform for secure static binary instrumentation
abstract
Program instrumentation techniques form the basis of many recent software security defenses, including defenses against common exploits and security policy enforcement. As compared to source-code instrumentation, binary instrumentation is easier to use and more broadly applicable due to the ready availability of binary code. Two key features needed for security instrumentations are (a) it should be applied to all application code, including code contained in various system and application libraries, and (b) it should be non-bypassable. So far, dynamic binary instrumentation (DBI) techniques have provided these features, whereas static binary instrumentation (SBI) techniques have lacked them. These features, combined with ease of use, have made DBI the de facto choice for security instrumentations. However, DBI techniques can incur high overheads in several common usage scenarios, such as application startups, system-calls, and many real-world applications. We therefore develop a new platform for secure static binary instrumentation (PSI) that overcomes these drawbacks of DBI techniques, while retaining the security, robustness and ease-of-use features. We illustrate the versatility of PSI by developing several instrumentation applications: basic block counting, shadow stack defense against control-flow hijack and return-oriented programming attacks, and system call and library policy enforcement. While being competitive with the best DBI tools on CPU-intensive SPEC 2006 benchmark, PSI provides an order of magnitude reduction in overheads on a collection of real-world applications.
Mingwei Zhang 0005, Rui Qiao 0002, Niranjan Hasabnis, R. Sekar 0001
VEE1
2013 Control Flow Integrity for COTS Binaries
Mingwei Zhang 0005, R. Sekar 0001
USENIX Security Symposium1