On Tue, Mar 10, 2015 at 11:51 AM, Konstantin Khlebnikov <koct9i@xxxxxxxxx> wrote: > On Tue, Mar 10, 2015 at 8:32 PM, Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote: >> On Tue, Mar 10, 2015 at 10:22 AM, Konstantin Khlebnikov >> <khlebnikov@xxxxxxxxxxxxxx> 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. Right, sorry. I'm still used to projid mappings being unprotected. --Andy > >> >> --Andy >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in >> the body of a message to majordomo@xxxxxxxxxxxxxxx >> More majordomo info at http://vger.kernel.org/majordomo-info.html -- Andy Lutomirski AMA Capital Management, LLC -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html