11/15/2013
Larry W. Cashdollar, @_larry0
Download: http://rubygems.org/gems/bio-basespace-sdk
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
# Deserialize a boolean value to a Ruby object.
Vendor: Notified 11/15/2013
Advisory: http://www.vapid.dhs.org/advisories/bio-basespace-sdk.html