Use of MD5 in OpenStack Glance image signature (CVE-2015-8234)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mirantis OpenStack |
Fix Released
|
Low
|
MOS Glance | ||
9.x |
Fix Released
|
Low
|
MOS Glance |
Bug Description
Observed on: MOS 8.0 / Liberty release
Problem description:
In the OpenStack Liberty release, the Glance project added support for image signature verification.
http://
The verification code was added in the following git commit
https:/
Unfortunately the design of this signature verification method is flawed by design.
The generalized approach to creating signatures of content is to apply a hash to the content and then encrypt it in some manner. Consider that the signature is defined to use hash=sha256 and cipher=rsa we can describe the signature computation as
signature = rsa(sha256(
In the case of verifying a disk image, the content we care about verifying is the complete disk image file. Unfortunately, the glance specification chose *not* to compute the signature against the disk image file. Glance already had an MD5 checksum calculated for the disk image file, so they instead chose to compute the signature against the MD5 checksum instead. ie glance is running
signature = rsa(sha256(
This degrades the security of the system to that of the weakest hash, which is obviously MD5 here.
Upstream bug report:
https:/
https:/
Solution proposal:
Users concerned with image security should be aware that the current Glance signature algorithm is not secure by today cryptographic standards.
This should be explained in MOS release notes.
A specification for a fix has been proposed by the Glance development team and is targeted for the Mitaka release.
CVE References
Changed in mos: | |
importance: | Undecided → Low |
milestone: | none → 8.0 |
assignee: | nobody → MOS Glance (mos-glance) |
tags: | added: release-notes |
tags: | added: area-glance |
tags: | added: 8.0 |
tags: |
added: release-notes-8.0-done removed: 8.0 release-notes |
Marked as Won't Fix for 8.0 since we entered SoftCodeFreeze stage and the bug was marked as Low priority. Adam, please let us know if you think that priority should be in (Critical, High) and thus bug should be fixed in 8.0.