[Devel] Re: C/R review
Oren Laadan
orenl at cs.columbia.edu
Wed Mar 18 02:44:19 PDT 2009
Serge E. Hallyn wrote:
> Quoting Alexey Dobriyan (adobriyan at gmail.com):
>>> +Keeping the restart procedure to operate within the limits of the
>>> +caller's credentials means that there various scenarios that cannot
>>> +be supported. For instance, a setuid program that opened a protected
>>> +log file and then dropped privileges will fail the restart, because
>>> +the user won't have enough credentials to reopen the file.
>> That's a bug.
>
> What is described is not a bug, but I think the way it is done is in
> fact a bug.
>
> Note that just because you *can* do the restart without privilege
> doesn't mean that you have to. If you do a restart with privilege,
> then you should be able to open that file, then drop down to the
> original task's uid.
>
> But to say that letting an unprivileged user do restart, and that
> it will only succeed if it can access the resources its allowed to
> access, is bogus.
>
> But I do think the way it's implemented will become buggy and needs to
> be fixed. That is, we do cr_read_task_struct() before we do
> cr_read_files(). So in fact if I'm root doing restart of such a
> checkpoint image, I'll first drop down to uid 500, then open the files.
>
> That would obviously be a bug.
>
> Now, we don't actually restore uids yet in the current code, so
> it's still a theoretical bug :)
Good point. And that's why uid's will be restored at the end :)
(when we get there ...)
Oren.
_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers
More information about the Devel
mailing list