Risk

4/29/2010
03:38 PM
Connect Directly
Google+
Twitter
RSS
E-Mail
50%
50%

Researchers Lock Down The Hypervisor

Prototype prevents 'Blue Pill' and other types of malware-injection attacks against the hypervisor

Researchers at North Carolina State University have come up with a tool that aims to eliminate one of the biggest risks to virtualization and cloud computing: attacks on the hypervisor. The so-called HyperSafe prototype blocks any new code -- think malware -- from getting into the hypervisor and restricts alterations to the hypervisor's code.

The NC State research, funded by the U.S. Army Research Office and the National Science Foundation, focused on using features in the underlying hardware to help armor the hypervisor against attacks. Xuxian Jiang, assistant professor of computer science at NC State and head of the research team that created HyperSafe, says the tool is integrated into the hypervisor itself, and that the research team used it on Xen and BitVisor hypervisors.

"Existing hypervisors, such as Xen and BitVisor, need to be modified or extended to include HyperSafe...which enables the hypervisor with self-protection from code-injection attempts," Jiang says. HyperSafe would theoretically block threats, such as Blue Pill and Vitriol -- hypervisor rootkits that inject malware into the hypervisor, he says.

The tool uses two techniques to secure the hypervisor: nonbypassable memory lockdown and restricted pointer-indexing. Nonbypassable memory lockdown basically blocks any new code from the hypervisor, except for code introduced by the system administrator. So if a user downloads malware that exploits a buffer overflow bug in a hypervisor, it can't be compromised, according to the research.

"It uses a hardware feature called WP to effectively lock down the memory range...that contains executable code. This memory range cannot be changed to include new additional code for execution in the hypervisor," Jiang says. "Also, this memory page is marked 'read-only' and existing code will not be modified."

Restricted pointer-indexing is basically a way that monitors any unusual behavior by the hypervisor to prevent changes to the hypervisor code, except by the administrator. "HyperSafe is designed to block [these types of attacks], even with the assumption that exploitable bugs are present in the hypervisor software," he says. "Considering the large and complex hypervisor code, we need to find a solution to thwart hypervisor-level code injection, which is the challenging part in HyperSafe."

But the technique doesn't prevent a rogue administrator from altering the hypervisor -- HyperSafe doesn't handle physical-level attacks.

The hypervisor defense techniques could protect against a virtual machine escape, for instance, where a compromised guest VM would be unable to attack the hypervisor. "The goal of HyperSafe is to address code-injection attacks at the hypervisor level," Jiang says.

Jiang says he and his team are working on expanding the tool to other hypervisors, and they aren't ruling out rolling the technology into commercial form: "At this stage, we are open for any possibilities, including a close collaboration with key players in the virtualization market to better secure the hypervisor software," he says.

HyperSafe assumes trusted hardware and only addresses threats from untrusted guest VMs, he says. He hopes to add support some hardware attacks in future research.

The hypervisor tool follows research Jiang and a team did last year on combating rootkits. They used a machine's own hardware-based memory protection to protect the operating system kernel from rootkits, developing the so-called HookSafe tool.

The tool prevents rootkits from even infiltrating the system, rather than having to find the stealthy code and clean it up, which is no easy task, according to the researchers.

Meantime, the NC State researchers will present their new HyperSafe research next month at the IEEE Symposium On Security And Privacy in Oakland, Calif. Their paper is called "HyperSafe: A Lightweight Approach to Provide Lifetime Hypervisor Control-Flow Integrity" (PDF).

Have a comment on this story? Please click "Discuss" below. If you'd like to contact Dark Reading's editors directly, send us a message.

Kelly Jackson Higgins is Executive Editor at DarkReading.com. She is an award-winning veteran technology and business journalist with more than two decades of experience in reporting and editing for various publications, including Network Computing, Secure Enterprise ... View Full Bio

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
'Shift Left' & the Connected Car
Rohit Sethi, COO of Security Compass,  6/12/2018
Why CISOs Need a Security Reality Check
Joel Fulton, Chief Information Security Officer for Splunk,  6/13/2018
Microsoft Fixes 11 Critical, 39 Important Vulns
Kelly Sheridan, Staff Editor, Dark Reading,  6/12/2018
Register for Dark Reading Newsletters
White Papers
Video
Cartoon
Current Issue
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2018-1061
PUBLISHED: 2018-06-19
python before versions 2.7.15, 3.4.9, 3.5.6 and 3.7.0 is vulnerable to catastrophic backtracking in the difflib.IS_LINE_JUNK method. An attacker could use this flaw to cause denial of service.
CVE-2018-1073
PUBLISHED: 2018-06-19
The web console login form in ovirt-engine before version 4.2.3 returned different errors for non-existent users and invalid passwords, allowing an attacker to discover the names of valid user accounts.
CVE-2018-12557
PUBLISHED: 2018-06-19
An issue was discovered in Zuul 3.x before 3.1.0. If nodes become offline during the build, the no_log attribute of a task is ignored. If the unreachable error occurred in a task used with a loop variable (e.g., with_items), the contents of the loop items would be printed in the console. This could ...
CVE-2018-12559
PUBLISHED: 2018-06-19
An issue was discovered in the cantata-mounter D-Bus service in Cantata through 2.3.1. The mount target path check in mounter.cpp `mpOk()` is insufficient. A regular user can consequently mount a CIFS filesystem anywhere (e.g., outside of the /home directory tree) by passing directory traversal sequ...
CVE-2018-12560
PUBLISHED: 2018-06-19
An issue was discovered in the cantata-mounter D-Bus service in Cantata through 2.3.1. Arbitrary unmounts can be performed by regular users via directory traversal sequences such as a home/../sys/kernel substring.