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.
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).
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.
Related news
- Tools Used For Hacking
- Hack Tools 2019
- Hacking Tools For Games
- Pentest Tools
- Hacker Tool Kit
- Best Hacking Tools 2019
- Hacking Tools For Pc
- Tools 4 Hack
- Best Hacking Tools 2019
- Pentest Tools Website Vulnerability
- Pentest Tools Apk
- Hacking Tools 2019
- Hack Apps
- Hacking Tools For Windows 7
- Hacker Tools Hardware
- Github Hacking Tools
- Hacking Tools Windows
- Pentest Tools Apk
- Hack And Tools
- Hacking Tools Pc
- Hacker Tools Free Download
- World No 1 Hacker Software
- Pentest Reporting Tools
- Hacker Hardware Tools
- How To Install Pentest Tools In Ubuntu
- Hack Tools Github
- Physical Pentest Tools
- Hacker Tools Apk Download
- Hack Tools Online
- Pentest Tools Kali Linux
- Hacking Tools Kit
- Hacker Tools Free
- Hacker Tools For Pc
- Black Hat Hacker Tools
- Pentest Tools Website Vulnerability
- Wifi Hacker Tools For Windows
- Hacker Tools
- Hacker Tools For Mac
- Pentest Box Tools Download
- What Are Hacking Tools
- Hacker Tools For Ios
- Pentest Tools Website Vulnerability
- Hacking Tools Kit
- Hacking Tools Windows 10
- Bluetooth Hacking Tools Kali
- Wifi Hacker Tools For Windows
- Pentest Tools Find Subdomains
- Hacking Tools For Windows 7
- Beginner Hacker Tools
- Hack And Tools
- Hacker Tools Github
- Hack Tools Pc
- Hacking Tools 2020
- Game Hacking
- Install Pentest Tools Ubuntu
- Hacks And Tools
- Hacking Tools Pc
- Hackers Toolbox
- Nsa Hack Tools Download
- Android Hack Tools Github
- Hacker Tools Linux
- How To Install Pentest Tools In Ubuntu
- Pentest Tools Website
- Pentest Tools For Ubuntu
- Hacker Tools Software
- Hacker Tool Kit
- Hack Tools For Windows
- Hacking Tools For Windows Free Download
- Hacker Tools 2020
- Pentest Tools For Windows
- Hacker Tool Kit
- Hacking Tools For Mac
- Pentest Tools For Mac
- Game Hacking
- Computer Hacker
- Computer Hacker
- Hacking Tools
- Pentest Box Tools Download
- Hacking Tools For Kali Linux
- Hacker Search Tools
- How To Make Hacking Tools
- Wifi Hacker Tools For Windows
- Kik Hack Tools
- Pentest Tools Website
- Hacking Tools For Kali Linux
- Hacker Tools For Windows
- Hacker Tools
- Termux Hacking Tools 2019
- Hacker Search Tools
- Growth Hacker Tools
- Hacking Tools
- Hacker Search Tools
- Hack Tools Download
- Hackers Toolbox
- Hacking Tools For Beginners
- Hacking Tools Windows
- Nsa Hacker Tools
- Top Pentest Tools
- Kik Hack Tools
- Physical Pentest Tools
- Best Hacking Tools 2019
- Pentest Tools Nmap
- Pentest Tools Github
- Hack Tools For Mac
- Free Pentest Tools For Windows
- Hack Tools Github
- Hack Tools
- Hacker Tools Windows
- Beginner Hacker Tools
- Top Pentest Tools
- Hacker Tools Hardware
- Hacking Tools For Pc
- Pentest Tools Apk
- Hacking Tools For Windows
- Ethical Hacker Tools
- Hack Rom Tools
- Hack Tools Download
- Wifi Hacker Tools For Windows
- Pentest Tools Online
- Hack And Tools
- Hacking Tools Windows
- What Are Hacking Tools
- Pentest Tools Windows
- Hacking Tools
- Hack Tools Pc
- What Is Hacking Tools
- Pentest Tools Windows
No comments:
Post a Comment