Couchbase use a password on the commandline

Bug #1447866 reported by Tristan Cacqueray
258
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack DBaaS (Trove)
Fix Released
High
Nikhil Manchanda
OpenStack Security Advisory
Won't Fix
Undecided
Unassigned

Bug Description

Reported via private E-mail from Michael Scherer

Couchbase use a password on the commandline, so it might be seen by
other users and/or end in log file ( there is some sanitization, but not
sure how/where ).
https://github.com/openstack/trove/blob/master/trove/guestagent/strategies/backup/experimental/couchbase_impl.py#L58

It use it also for restore the same file :
https://github.com/openstack/trove/blob/master/trove/guestagent/strategies/restore/experimental/couchbase_impl.py#L88

Revision history for this message
Tristan Cacqueray (tristan-cacqueray) wrote :

Since this report concerns a possible security risk, an incomplete security advisory task has been added while the core security reviewers for the affected project or projects confirm the bug and discuss the scope of any vulnerability along with potential solutions.

Changed in ossa:
status: New → Incomplete
summary: - Couchbase use a password on the commandline
+ Couchbase use a password on the commandline (CVE-2015-3157)
Revision history for this message
Thierry Carrez (ttx) wrote : Re: Couchbase use a password on the commandline (CVE-2015-3157)

We should doublecheck the log aspect -- but otherwise since there are no local users on a Trove node, unless there is a SQL command that lets you read the process table, that should be pretty shallow.

Revision history for this message
Tristan Cacqueray (tristan-cacqueray) wrote :

I couldn't get a cassandra datastore to try to reproduce that bug.

Nikhil, can you check whenever a user is able to control the password value and when the command fail, does it leaks in logs ?

Revision history for this message
Nikhil Manchanda (slicknik) wrote :

Will check this out in a Couchbase env and get more details.

Changed in trove:
assignee: nobody → Nikhil Manchanda (slicknik)
Revision history for this message
Tristan Cacqueray (tristan-cacqueray) wrote :

Nikhil, any progress ?

Revision history for this message
Nikhil Manchanda (slicknik) wrote :

I spun up a couchbase instance and took a backup, and was able to repro this.

 The password is not leaked in any of the service logs (i.e. trove api, taskmanager, or conductor) but it _is_ leaked in the trove-guestagent log. The guest-instance (as Thierry mentions above) is not accessible to users, so this is somewhat mitigated -- but I'd like to have this fixed in the guest-agent as hardening, so that we don't end up with the password in the log.

Thanks,
Nikhil

Changed in trove:
importance: Undecided → High
milestone: none → liberty-2
Revision history for this message
Tristan Cacqueray (tristan-cacqueray) wrote :

Thanks for the debunking, so this is a class C1 type of bug ( https://security.openstack.org/vmt-process.html#incident-report-taxonomy ).

Changed in ossa:
status: Incomplete → Won't Fix
information type: Private Security → Public Security
description: updated
Revision history for this message
Tristan Cacqueray (tristan-cacqueray) wrote :

Just removed the CVE reference since it is being rejected by CNA.

summary: - Couchbase use a password on the commandline (CVE-2015-3157)
+ Couchbase use a password on the commandline
Changed in trove:
status: New → Triaged
milestone: liberty-2 → liberty-3
Changed in trove:
milestone: liberty-3 → ongoing
Revision history for this message
Amrith Kumar (amrith) wrote :

Nikhil, any update on this?

Changed in trove:
milestone: ongoing → newton-1
Revision history for this message
Amrith Kumar (amrith) wrote :

This is not an issue any longer as log messages are scrubbed with mask_passwords.

Changed in trove:
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public Security information  
Everyone can see this security related information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.