Save Your Cloud: DoS On VMs In OpenNebula 4.6.1
This is a post about an old vulnerability that I finally found the time to blog about. It dates back to 2014, but from a technical point of view it is nevertheless interesting: An XML parser that tries to fix structural errors in a document caused a DoS problem.
All previous posts of this series focused on XSS. This time, we present a vulnerability which is connected another Cloud Management Platform: OpenNebula. This Infrastructure-as-a-Service platform started as a research project in 2005. It is used by information technology companies like IBM, Dell and Akamai as well as academic institutions and the European Space Administrations (ESA). By relying on standard Linux tools as far as possible, OpenNebula reaches a high level of customizability and flexibility in hypervisors, storage systems, and network infrastructures. OpenNebula is distributed using the Apache-2 license.
OpenNebula offers a broad variety of interfaces to control a cloud. This post focuses on Sunstone, OpenNebula's web interface (see Figure 1).
Before OpenNebula 4.6.2, Sunstone had no Cross-Site Request Forgery (CSRF) protection. This is a severe problem. Consider an attacker who lures a victim into clicking on a malicious link while being logged in at a private cloud. This enables the attacker to send arbitrary requests to the private cloud through the victims browser. However, we could find other bugs in OpenNebula that allowed us to perform much more sophisticated attacks.
OpenNebula saves the incorrectly generated XML document in a database. The next time the OpenNebula core retrieves information about that particular VM from the database the XML parser is mixed up and runs into an error because it only expects a string as name, not an XML tree. As a result, Sunstone cannot be used to control the VM anymore. The Denial-of-Service attack can only be reverted from the command line interface of OpenNebula.
This bug can be triggered by a CSRF-attack, which means that it is a valid attack against a private cloud: By luring a victim onto a maliciously crafted website while logged in into Sunstone, an attacker can make all the victim's VMs uncontrollable via Sunstone. A video of the attack can be seen here:
This bug has been fixed in OpenNebula 4.6.2.
This result is a collaborative work together with Mario Heiderich. It has been published at ACM CCSW 2015. The paper can be found here.
Read moreAll previous posts of this series focused on XSS. This time, we present a vulnerability which is connected another Cloud Management Platform: OpenNebula. This Infrastructure-as-a-Service platform started as a research project in 2005. It is used by information technology companies like IBM, Dell and Akamai as well as academic institutions and the European Space Administrations (ESA). By relying on standard Linux tools as far as possible, OpenNebula reaches a high level of customizability and flexibility in hypervisors, storage systems, and network infrastructures. OpenNebula is distributed using the Apache-2 license.
OpenNebula offers a broad variety of interfaces to control a cloud. This post focuses on Sunstone, OpenNebula's web interface (see Figure 1).
Figure 1: OpenNebula's Sunstone Interface displaying a VM's control interface |
Before OpenNebula 4.6.2, Sunstone had no Cross-Site Request Forgery (CSRF) protection. This is a severe problem. Consider an attacker who lures a victim into clicking on a malicious link while being logged in at a private cloud. This enables the attacker to send arbitrary requests to the private cloud through the victims browser. However, we could find other bugs in OpenNebula that allowed us to perform much more sophisticated attacks.
Denial-of-Service on OpenNebula-VM
At its backend, OpenNebula manages VMs with XML documents. A sample for such an XML document looks like this:<VM>OpenNebula 4.6.1 contains a bug in the sanitization of input for these XML documents: Whenever a VM's name contains an opening XML tag (but no corresponding closing one), an XML generator at the backend automatically inserts the corresponding closing tag to ensure well-formedness of the resulting document. However, the generator outputs an XML document that does not comply with the XML schema OpenNebula expects. The listing below shows the structure that is created after renaming the VM to 'My <x> VM':
<ID>0</ID>
<NAME>My VM</NAME>
<PERMISSIONS>...</PERMISSIONS>
<MEMORY>512</MEMORY>
<CPU>1</CPU>
...
</VM>
<VM>The generator closes the <x> tag, but not the <NAME> tag. At the end of the document, the generator closes all opened tags including <NAME>.
<ID>0</ID>
<NAME>My <x> VM</x>
<PERMISSIONS>...</PERMISSIONS>
<MEMORY>512</MEMORY>
<CPU>1</CPU>
...
</NAME>
</VM>
OpenNebula saves the incorrectly generated XML document in a database. The next time the OpenNebula core retrieves information about that particular VM from the database the XML parser is mixed up and runs into an error because it only expects a string as name, not an XML tree. As a result, Sunstone cannot be used to control the VM anymore. The Denial-of-Service attack can only be reverted from the command line interface of OpenNebula.
This bug can be triggered by a CSRF-attack, which means that it is a valid attack against a private cloud: By luring a victim onto a maliciously crafted website while logged in into Sunstone, an attacker can make all the victim's VMs uncontrollable via Sunstone. A video of the attack can be seen here:
This bug has been fixed in OpenNebula 4.6.2.
This result is a collaborative work together with Mario Heiderich. It has been published at ACM CCSW 2015. The paper can be found here.
- Hacking Tools Free Download
- Underground Hacker Sites
- Hacking App
- Pentest Tools Review
- Hack Tools Download
- Beginner Hacker Tools
- Hacker Tools Mac
- Free Pentest Tools For Windows
- Hacking Tools Online
- What Is Hacking Tools
- Hacker
- Hack Tools For Games
- Kik Hack Tools
- Hacking Tools Software
- How To Make Hacking Tools
- How To Hack
- Hack And Tools
- New Hacker Tools
- Hacking Tools 2020
- New Hacker Tools
- Hacker Tools Apk Download
- Hacker Tools For Ios
- Pentest Tools For Ubuntu
- What Is Hacking Tools
- Hack Tools
- Hacker Techniques Tools And Incident Handling
- Ethical Hacker Tools
- Hacking Tools Pc
- Pentest Tools Subdomain
- Pentest Tools Github
- Hacking Tools For Games
- Pentest Tools Android
- Hackers Toolbox
- Pentest Tools Port Scanner
- Hacker Tools Apk Download
- Ethical Hacker Tools
- Hacks And Tools
- Hack And Tools
- Pentest Tools Find Subdomains
- Tools Used For Hacking
- Pentest Automation Tools
- What Are Hacking Tools
- Game Hacking
- Hack Tools For Windows
- How To Make Hacking Tools
- Pentest Tools List
- Hacker Tools Apk
- Hacking Tools For Windows
- Hacking Tools Hardware
- New Hack Tools
- New Hack Tools
- How To Hack
- Pentest Tools Subdomain
- Hack Tools For Windows
- Hacking Tools For Windows Free Download
- Bluetooth Hacking Tools Kali
- Tools For Hacker
- Hacker Tools Free
- Best Hacking Tools 2019
- Hacking Tools For Games
- Hacks And Tools
- Pentest Tools Windows
- Hacker Techniques Tools And Incident Handling
- Pentest Tools Open Source
- Pentest Tools Apk
- Hacker Tools For Ios
- Hack Tool Apk No Root
- Hack Tools For Windows
- Pentest Recon Tools
- Hack Tools Download
- Hack Apps
- Hack Rom Tools
- Growth Hacker Tools
- How To Make Hacking Tools
- Pentest Tools Alternative
- Pentest Tools Download
- Hacker Tools Hardware
- Hacking Tools For Mac
- Hack Tools For Ubuntu
- Hack Apps
- How To Hack
- Hacker Tools For Mac
- Hacking Tools Windows 10
- Hack App
- Hack Tools For Windows
- Hacking Tools And Software
- Hacker Tools Free Download
- Hacker Tools For Windows
- Beginner Hacker Tools
- Growth Hacker Tools
- Pentest Tools Alternative
- Hackers Toolbox
- Hacking Tools 2020
- Physical Pentest Tools
- Hacking Tools For Pc
- Hacker Tools For Pc
- Pentest Tools Apk
- Pentest Tools Open Source
- Pentest Tools Android
- Pentest Box Tools Download
- Growth Hacker Tools
- Hacker Tools Free Download
- Hack Tool Apk No Root
- Hacking Tools Free Download
- Hacking Tools Windows 10
- Hacking Apps
- Pentest Recon Tools
- Hacking Tools 2019
- Pentest Tools List
- World No 1 Hacker Software
- Hacking Tools And Software
- Pentest Tools Download
- Pentest Tools For Android
- Hacking Tools 2019
- Pentest Tools List
- Pentest Tools Online
- Pentest Tools Linux
- New Hack Tools
- Pentest Tools Free
- Hack And Tools
- Nsa Hacker Tools
- Hack Tools 2019
- Pentest Tools Framework
- Hacking Tools Usb
- Hacker Tools Linux
- Hacking Tools Hardware
- Hacker Tool Kit
- Hacking Tools For Windows Free Download
- Pentest Tools List
- Hacker Tool Kit
- Hacker Tools For Pc
- Pentest Tools Online
- Hacking Apps
- Hacker Tools For Ios
- Hacker Tools Github
- Hacker Security Tools
- Pentest Tools Website
- Hack Tools Download
- Beginner Hacker Tools
- Pentest Tools Alternative
- Hacking Tools Name
- Computer Hacker
- Hack Tools Download
- Hacking Tools Software
- Hacker Tools For Ios
0 Commenti:
Posta un commento
Iscriviti a Commenti sul post [Atom]
<< Home page