Bugtraq mailing list archives

Bio Basespace SDK 0.1.7 Ruby Gem exposes API Key via command line


From: "Larry W. Cashdollar" <larry0 () me com>
Date: Sat, 14 Dec 2013 20:10:28 -0500

Title: Bio Basespace SDK 0.1.7 Ruby Gem exposes API Key via command line

Date: 11/15/2013

Author: Larry W. Cashdollar, @_larry0

Download: http://rubygems.org/gems/bio-basespace-sdk

Description:
"BaseSpace Ruby SDK is a Ruby based Software Development Kit to be used in the development of Apps and scripts for 
working with Illumina's BaseSpace cloud-computing solution for next-gen sequencing data analysis. The primary purpose 
of the SDK is to provide an easy-to-use Ruby environment enabling developers to authenticate a user, retrieve data, and 
upload data/results from their own analysis to BaseSpace."

Vulnerability: The API client code passes the API_KEY to a curl command.  This exposes the api key to the shell and 
process table.  Another user on the system could snag the api key by just monitoring the process table. 

In the following code snippet:

bio-basespace-sdk-0.1.7/lib/basespace/api/api_client.rb
 # +headers+:: Header of the PUT call.
 # +trans_file+:: Path to the file that should be transferred.
 def put_call(resource_path, post_data, headers, trans_file)
   return %x(curl -H "x-access-token:#{@api_key}" -H "Content-MD5:#{headers['Content-MD5'].strip}" -T "#{trans_file}" 
-X PUT #{resource_path})
 end


Vendor: Notified 11/15/2013

Advisory: http://www.vapid.dhs.org/advisories/bio-basespace-sdk.html

Current thread: