[Bugs] #2410 LOW: privilege escalation: allows caller to store anything sugar-datastore has access to

Sugar Labs Bugs bugtracker-noreply at sugarlabs.org
Tue Oct 5 13:56:56 EDT 2010


#2410: privilege escalation: allows caller to store anything sugar-datastore has
access to
--------------------------------+-------------------------------------------
    Reporter:  sascha_silbe     |          Owner:  alsroot          
        Type:  defect           |         Status:  new              
    Priority:  Low              |      Milestone:  0.92             
   Component:  sugar-datastore  |        Version:  Git as of bugdate
    Severity:  Critical         |       Keywords:                   
Status_field:  New              |   Distribution:                   
   Seeta_dev:                   |  
--------------------------------+-------------------------------------------
 sugar-datastore will happily open any file the caller tells it to save, so
 the caller can store everything sugar-datastore has access to and later
 retrieve it, thereby gaining full read access. This is of special concern
 if activities are running in a sandbox, i.e. when using
 [http://wiki.laptop.org/go/Rainbow].

 We should refuse to open files the caller doesn't have read permissions
 for. Not sure how exactly to achieve that without introducing a race
 condition or using {{{setfsuid()}}} or {{{setuid()}}}, both of which
 (naturally) require superuser rights.

 As a general precaution sugar-datastore should also refuse to store
 anything that isn't a regular file.

 The practical implications of this are currently limited as the mainline
 version of sugar-datastore still doesn't work with Rainbow (I have at
 least a [http://git.sugarlabs.org/projects/sugar-
 datastore/repos/silbe/logs/7314430fb3dfe88eff626c773d32cd3fd329561d
 partial fix] for that in my repo), but we should nevertheless fix it.

-- 
Ticket URL: <http://bugs.sugarlabs.org/ticket/2410>
Sugar Labs <http://sugarlabs.org/>
Sugar Labs bug tracking system


More information about the Bugs mailing list