On Tue, Mar 10, 2015 at 8:32 PM, Andy Lutomirski <[email protected]> wrote: > On Tue, Mar 10, 2015 at 10:22 AM, Konstantin Khlebnikov > <[email protected]> wrote: >> Historically XFS project id doesn't have any permission control: file owner >> is able to set any project id. Later they was sealed with user-namespace: >> XFS allows to change it only from init user-ns. That works fine for isolated >> containers or if user doesn't have direct access to the filesystem (NFS/FTP). >> >> This patch adds sysctl fs.protected_projects which makes changing project id >> privileged operation which requires CAP_SYS_RESOURCE in current >> user-namespace. >> Thus there are two levels of protection: project id mapping in user-ns >> defines >> set of permitted projects and capability protects operations within this set. > > If I understand this right, this doesn't work. If I lack > CAP_SYS_RESOURCE but I have two projids mapped, then I can create a > new userns, map both projids, and get CAP_SYS_RESOURCE.
Setting project id mapping for nested user-namespace also requires this capability in parent namespace. The same as for setting uid/gid mapping but without special case for mapping current uid/gid because task has no "current" project id. This is mentioned in cover letter but I forget it here. Sorry. > > --Andy > -- > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in > the body of a message to [email protected] > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

