[tahoe-lafs-trac-stream] [Tahoe-LAFS] #2881: Magic-folder sets executable bit on all regular files(!) and overwrites existing filesystem permissions

Tahoe-LAFS trac at tahoe-lafs.org
Thu Jun 22 05:37:49 UTC 2017


#2881: Magic-folder sets executable bit on all regular files(!) and overwrites
existing filesystem permissions
--------------------------+---------------------------
 Reporter:  cypher        |          Owner:
     Type:  defect        |         Status:  new
 Priority:  major         |      Milestone:  undecided
Component:  unknown       |        Version:  1.12.1
 Keywords:  magic-folder  |  Launchpad Bug:
--------------------------+---------------------------
 After placing a single file into a local magic-folder directory, a
 subsequent `restart` of the tahoe client will result in that file's
 permission bits being altered -- more specifically setting the executable
 bit and removing group/world permissions (as though every file were
 effectively sent through a `chmod 700`). As a demonstration:

 {{{
 dev ~ % cp cat.jpg Magic-Folder
 dev ~ % ls -al Magic-Folder
 total 116K
 drwxr-xr-x  2 user user 4.0K Jun 21 14:48 .
 drwxr-xr-x 57 user user 4.0K Jun 21 14:28 ..
 -rw-r--r--  1 user user 107K Jun 21 14:48 cat.jpg
 dev ~ % tahoe restart
 STOPPING '/home/user/.tahoe'
 process 2592 is dead
 STARTING '/home/user/.tahoe'
 starting node in '/home/user/.tahoe'
 dev ~ % ls -al Magic-Folder
 total 224K
 drwxr-xr-x  2 user user 4.0K Jun 21 14:49 .
 drwxr-xr-x 57 user user 4.0K Jun 21 14:28 ..
 -rwx------  1 user user 107K Jun 21 14:48 cat.jpg
 -rw-r--r--  1 user user 107K Jun 21 14:48 cat.jpg.backup
 }}}

 This is should not be standard behavior for a number of reasons, among
 them the broader design principle that an application should never alter a
 user's pre-existing data (including filesystem metadata) without at least
 ''some'' form of input or indication that it is doing so, as well as, more
 seriously, the myriad of security-related concerns that stem from this
 behavior (particularly on Windows where the current working directory is
 always prepended to PATH).

 Instead, all files placed into a magic-folder should retain their original
 permissions until changed by a user -- or, at least, at minimum, they
 should not "magically" become executable. :)

--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2881>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list