get_file_by_name does not check owner
Bug #1212205 reported by
Gavin Panella
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MAAS |
Fix Released
|
Critical
|
Blake Rouse | ||
1.2 |
Won't Fix
|
Critical
|
Unassigned | ||
1.3 |
Won't Fix
|
Critical
|
Unassigned | ||
1.5 |
Won't Fix
|
Undecided
|
Unassigned | ||
1.7 |
Won't Fix
|
Undecided
|
Unassigned | ||
1.9 |
Fix Released
|
Critical
|
Blake Rouse |
Bug Description
maasserver.
get_file_by_key may be similarly vulnerable; filed as bug 1379826.
CVE References
Changed in maas: | |
milestone: | none → 13.10 |
description: | updated |
Changed in maas: | |
status: | Fix Committed → Fix Released |
information type: | Private Security → Public Security |
To post a comment you must log in.
My first intention was to simply remove the get_by_name() API operation from the anonymous handler. This is what I've done in https:/ /code.launchpad .net/~rvb/ maas/fix- get-file- by-name/ +merge/ 187754 and the package I created from it worked fine with juju-core because juju-core uses either authenticated calls or get_file_by_key() to access the files it needs.
Sadly, this is not the case with (py)juju which really needs the anonymous get_by_name() API operation. Note that it needs it to get from the MAAS server files related to charms and which contain a random element (the file names are something like 'mysql- charm-sdfkj56lk jsdflkj4td' ). The random element is probably there to mitigate the security risk.
This is rather problematic because the same code has to accommodate both juju-core and (py)juju. We could land my branch above if we choose to abandon pyjuju compatibility.