04/22/13

Havana!

SecStack in Havana

 

I am just back from Summit. Where I ran into a bunch of wonderful folks both new and old. OpenStack is getting awesome. The security front is about to get REALLY interesting. HP, Nebula, and a few others are showing serious interest in building out continuous integration methodology to help protect the OpenStack community. I’ll of course be doing my part.

And that’s where the flowchart comes in.

The image above is a variant of a traditional approach to a security audit of an application, basically modified for use in the OpenStack world. I’ll probably do some more work on this modeling as the year progresses and I get input from the OSSG and VMT.

Anyways, you can see that need for compiling an understanding of current known vulnerabilities and risks. This site kind of fills that gap. But to be blunt, it’s not good at it. When I was doing some data analysis for the summit, I realized that there was no single authoritative source for OpenStack threat resources. The OSSA’s are only released in e-mail and the e-mails themselves are not in a parseable format. They also have changed over time. In addition to that the CVEs don’t always have corresponding OSSAs, and vice versa. Currently there is very little in the way of decent attribute data for vulnerabilities that stem from secondary dependencies, and entire dependencies are untracked as far as the OpenStack community is concerned.

During the day job I have been helping with building out our OpenStack packaging toolchain. One of the things I need to do during a release cycle is to verify we have a fully patched package set. In addition to that we need to respond to OSSAs by patching many supported release package sets. As such I have begun to build such a database. As the project progresses I will share the code, the data, and I’ll stend up an experimental API. Hopefully by the end of the Havana release cycle I’ll have something that we can integrate into the OpenStack development cycle.

So I am probably going to begin laying off of the posting of OSSA vulnerabilities from here on out. However, I will begin releasing a comprehensive JSON set as I enter further into the investigation and cataloging of datasets. As part of that effort I will also be building tools to help me harvest that data.

Read on to the next section for further insight into this work effort.

As far as how this site is concerned. I’ll continue to highlight security concerns in the OpenStack community but I will do less copy-paste posting of OSSAs and CVEs. In fact, I have a couple of pending posts I need to finish writing for you guys.

In terms of Security in OpenStack. Havana stands to be a really break out release. I’m giddy with anticipation.

The OpenStack Vulnerability Database

 

A sample OpenStack CORE vulnerability datastructure: vulndb.json

I have exported a couple of CSV’s from that : here

I have a sample 3d.js render of one of the csv files here: here ( showing vulnerability reports by company )

This should wet your appetite for what I have planned.

The next steps are diagrammed here:

Basically, as you can see in the JSON I have already begun investigation and cataloging of datasets.

I am not happy with the schema I am currently working with. I’ll follow up this post with a new schema break out post as I get further along and solicit input from the community at large. AKA you and the OSSG.

Glossary

 

VMT

The VMT is the Vulnerability Management Team.

This is a VERY small team of trusted contributors whom receive new vulnerability reports. Currently there are three members of this team. New reports start out as embargo’ed. That is to say, if there isn’t a previously existing launchpad bug that is already public, a new security tagged bug will be created. Visibility of that bug will only be opened up to those folks who are brought in to help patch / fix the bug.

During the embargo period some vendors trusted contacts are informed of the vulnerability and provided access to patch sets that address the issue and will be merged later at time of public disclosure.

Eventually the bug is disclosed publicly in two formats. OpenStack releases an authoritative OSSA and will file corresponding CVEs if they do not exist already.

OSSG

The OSSG is the OpenStack Security Group.

While the VMT is a purely reactive security measure, the OSSG is a pro-active security measure.

The OSSG is a restricted team, meaning unlike the VMT it is not limited to a very small number of individuals. Currently there are 42 members. However, the team is gated for relevancy.

The OSSG performs many functions. They will assist the VMT at their pleasure as well as assist in the issuance of OSNs.

OSSA

An OSSA is an OpenStack Security Advisory. OSSA’s are issued by the VMT team and are intended to advise the OpenStack community of vulnerabilities as they occur and are addressed.

OSN ( OSSN )

An OSN or OSSN is an OpenStack Security Note. Security Notes addressing security concerns that do not justify an OSSA, or extend upon an OSSA providing further information for deployers and developers to help them avoid any potential security risks addressed therein.

03/5/13

CVE-2013-0335 : VNC proxy can connect to the wrong VM

OpenStack Security Advisory: 2013-006

CVE: CVE-2013-0335
Date: February 26, 2013
Title: VNC proxy can connect to the wrong VM
Reporter: Loganathan Parthipan (HP), Rohit Karajgi (NTT Data)
Products: Nova
Affects: All versions

Description:

Loganathan Parthipan (HP) and Rohit Karajgi (NTT Data) independently
reported a vulnerability in Nova. If a user requests a console and
then deletes the VM, it is possible that the console token could allow
connectivity to a different VM before the console token expires if the
VNC port gets reused in that time period. This issue can be worked
around by disabling VNC support.

Fixes:

References:

02/20/13

CVE-2013-1664, CVE-2013-1665 : Information leak and Denial of Service using XML entities

OpenStack Security Advisory: 2013-004

CVE: CVE-2013-1664, CVE-2013-1665
Date: February 19, 2013
Title: Information leak and Denial of Service using XML entities
Reporter: Jonathan Murray (NCC Group), Joshua Harlow (Yahoo!), Stuart
Stent
Products: Keystone, Nova, Cinder (see note)
Affects: All versions

Description:

Jonathan Murray from NCC Group, Joshua Harlow from Yahoo! and Stuart
Stent independently reported a vulnerabilities in the parsing of XML
requests in Python XML libraries used in Keystone, Nova and Cinder. By
using entities in XML requests, an unauthenticated attacker may consume
excessive resources on the Keystone, Nova or Cinder API servers,
resulting in a denial of service and potentially a crash
(CVE-2013-1664). Authenticated attackers may also leverage XML entities
to read the content of a local file on the Keystone API server
(CVE-2013-1665). This only affects servers with XML support enabled.

Note:

The vulnerabilities are actually in the various affected Python XML
libraries, but we provide OpenStack patches working around the issues.

Grizzly fixes:

Folsom fixes:

Essex fixes:

References:

02/20/13

CVE-2013-0282 : Keystone EC2-style authentication accepts disabled user/tenants

* Interesting to note this vulnerability was reported by the NSA.

OpenStack Security Advisory: 2013-005

CVE: CVE-2013-0282
Date: February 19, 2013
Keystone EC2-style authentication accepts disabled user/tenants
Reporter: Nathanael Burton (National Security Agency)
Products: Keystone
Affects: All versions

Description:

Nathanael Burton reported a vulnerability in EC2-style authentication in
Keystone. Keystone fails to check whether a user, tenant, or domain is
enabled before authenticating a user using the EC2 api. Authenticated,
but disabled users (or authenticated users in disabled tenants or
domains) could therefore retain access rights that were thought removed.
Only setups enabling EC2-style authentication are affected. To disable
EC2-style authentication to work around the issue, remove the EC2
extension (keystone.contrib.ec2:Ec2Extension.factory) from the keystone
API pipeline in keystone.conf.

Grizzly fix:

Folsom fix:

Essex fix:

References:

02/11/13

Auto Complete in Login Fields of Horizon

Description

Basically the Horizon Authentication form has auto complete enabled by default. This is considered a security risk by most. A discussion popped up on the list suggesting a fix, and it was eventually merged. No CVE report was necessary, but I thought I’d post this to let people know about it.

Proposed Fix :

References :

02/11/13

CVE-2013-0247 : Keystone denial of service through invalid token requests

OpenStack Security Advisory: 2013-003

CVE: CVE-2013-0247
Date: February 5, 2013
Title: Keystone denial of service through invalid token requests
Reporter: Dan Prince (Red Hat)
Products: Keystone
Affects: All versions

Description:

Dan Prince of Red Hat reported a vulnerability in token creation error
handling in Keystone. By requesting lots of invalid tokens, an
unauthenticated user may fill up logs on Keystone API servers disks,
potentially resulting in a denial of service attack against Keystone.

Grizzly fix:

Folsom fix:

Essex fix:

02/11/13

CVE-2013-0212 : Backend password leak in Glance error message

OpenStack Security Advisory: 2013-002

CVE: CVE-2013-0212
Date: January 29, 2013
Title: Backend password leak in Glance error message
Reporter: Dan Prince (Red Hat)
Products: Glance
Affects: All versions

Description:

Dan Prince of Red Hat discovered an issue in Glance error reporting. By
creating an image in Glance by URL that references a mis-configured
Swift endpoint, or if the Swift endpoint that a previously-ACTIVE image
references for any reason becomes unusable, an authenticated user may
access the Glance operator’s Swift credentials for that endpoint. Only
setups that use the single-tenant Swift store are affected.

Grizzly fix:

Folsom fix:

(included in upcoming Glance 2012.2.3 stable update)

Essex fix:

References:

02/11/13

CVE-2013-0208 : Boot from volume allows access to random volumes

OpenStack Security Advisory: 2013-001

CVE: CVE-2013-0208
Date: January 29, 2013
Title: Boot from volume allows access to random volumes
Reporter: Phil Day (HP)
Products: Nova
Affects: Essex, Folsom

Description:

Phil Day from HP reported a vulnerability in volume attachment in
nova-volume, affecting the boot-from-volume feature. By passing a
specific volume ID, an authenticated user may be able to boot from a
volume he doesn’t own, potentially resulting in full access to that
3rd-party volume contents. Folsom setups making use of Cinder are not
affected.

Folsom fix :

(included in upcoming Nova 2012.2.3 stable update)

Essex fix:

References:

12/11/12

CVE-2012-5625 : Information leak in libvirt LVM-backed instances

This is something of a repeat. As openstack has gotten caught before not cleaning out reusable memory locations.

As has Amazon. But, it’s always annoying to see a vulnerability that has previously bit us in the ass come back to do so again.

OpenStack Security Advisory: 2012-020

CVE: CVE-2012-5625
Date: December 11, 2012
Title: Information leak in libvirt LVM-backed instances
Reporter: Eric Windisch (Cloudscaling)
Products: Nova
Affects: Folsom, Grizzly

Description:

Eric Windisch from Cloudscaling reported a vulnerability in libvirt
LVM-backed instances. The physical volume content was not wiped out
before being reallocated and passed to an instance, which may result in
the disclosure of information from previously-allocated logical volumes.
Only setups using libvirt and LVM-backed instances
(libvirt_images_type=lvm) are affected.

Grizzly (development branch) fix:

Folsom fix (included in upcoming Nova 2012.2.2 stable update):

References:

11/28/12

CVE-2012-5571 : EC2-style credentials invalidation issue

OpenStack Security Advisory: 2012-018

CVE: CVE-2012-5571
Date: November 28, 2012
Title: EC2-style credentials invalidation issue
Reporter: Vijaya Erukala
Products: Keystone
Affects: All versions

Description:

Vijaya Erukala reported a vulnerability in Keystone EC2-style
credentials invalidation: when a user is removed from a tenant, issued
EC2-style credentials would continue to be valid for that tenant. An
authenticated and authorized user could potentially leverage this
vulnerability to extend his access beyond the account owner
expectations. Only setups enabling EC2-style credentials (for example
enabling EC2 API in Nova) are affected.

Grizzly (development branch) fix:

Folsom fix (included in upcoming Keystone 2012.2.1 stable update):

Essex fix:

References: