Re: [PATCH v2] fs: introduce pipe-only dump mode suid_dumpable=3

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Kees Cook <keescook@xxxxxxxxxxxx> writes:

> This patch introduces suid_dumpable=3 to allow privilege-changed processes
> to be dumped only to a pipe handler (and not directly to disk). The value
> of suid_dumpable=2 is now deprecated, and attempting to set this sysctl
> value returns -EINVAL.

Your patch descriptoin is wrong.  Deprecate means something is encouraged
not to be used not that the functionality is removed.  I think what
you are trying to say is that the value suid_dumpable=2 is now historic.

Your implementation is absolutely gross.  Reading the value from
twice from user space??    Is an if statement that hard to code?

Eric

> +/* Allow only the integers 0, 1, and 3. */
> +static int proc_dointvec_suid_dumpable(struct ctl_table *table, int write,
> +		void __user *buffer, size_t *lenp, loff_t *ppos)
> +{
> +	int rc, min, max;
> +	struct do_proc_dointvec_minmax_conv_param param = {
> +		.min = &min,
> +		.max = &max,
> +	};
> +
> +	min = 0;
> +	max = 1;
> +	rc = do_proc_dointvec(table, write, buffer, lenp, ppos,
> +			      do_proc_dointvec_minmax_conv, &param);
> +	if (rc != -EINVAL)
> +		return rc;
> +
> +	min = 3;
> +	max = 3;
> +	rc = do_proc_dointvec(table, write, buffer, lenp, ppos,
> +			      do_proc_dointvec_minmax_conv, &param);
> +	return rc;
> +}
> +
>  static int __do_proc_doulongvec_minmax(void *data, struct ctl_table *table, int write,
>  				     void __user *buffer,
>  				     size_t *lenp, loff_t *ppos,
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux