Re: [PATCH] core(5): add more details for output paths and the crash handler

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

 



Hi Mike,

Ping!

Cheers,

Michael


On 09/30/2016 10:05 AM, Michael Kerrisk (man-pages) wrote:
> Hi Mike,
> 
> Nice additions. Some comments below.
> 
> On 28 September 2016 at 13:14, Mike Frysinger <vapier@xxxxxxxxxx> wrote:
>> People sometimes assume that the crash handler runs in the same context
>> as the crashing process.  They would be incorrect :).
>> ---
>>  man5/core.5 | 30 ++++++++++++++++++++++++++++++
>>  1 file changed, 30 insertions(+)
>>
>> diff --git a/man5/core.5 b/man5/core.5
>> index c587da5209c8..1c2c6a45c047 100644
>> --- a/man5/core.5
>> +++ b/man5/core.5
>> @@ -208,6 +208,16 @@ and
>>  (see below)
>>  is nonzero, then .PID will be appended to the core filename.
>>
>> +Paths are interpreted according to the settings that are active for the
>> +crashing process.
>> +That means the current mount
>> +.BR namespaces (7),
> 
> Better here would be a reference to the (newish) mount_namespaces(7) page?
> 
>> +the current working directory (found via
>> +.BR getcwd (2)),
>> +and the current
>> +.BR chroot (2)
>> +path.
>> +
>>  Since version 2.4, Linux has also provided
>>  a more primitive method of controlling
>>  the name of the core dump file.
>> @@ -240,9 +250,29 @@ The program must be specified using an absolute pathname (or a
>>  pathname relative to the root directory, \fI/\fP),
>>  and must immediately follow the '|' character.
>>  .IP *
>> +The program must live in the root filesystem as it is always executed there.
> 
> Should the wording here be something like: "The program pathname is
> interpreted with respect to the initial mount namespace"?
> 
>> +It is not affected by the
>> +.BR chroot (2)
>> +setting of the crashing process.
>> +.IP *
>>  The process created to run the program runs as user and group
>>  .IR root .
>>  .IP *
>> +Running as
>> +.I root
>> +does not confer any exceptional security bypasses.
>> +Namely, LSMs (e.g. SELinux) are still active and may prevent the handler
>> +from accessing details about the crashed process via
>> +.I /proc/PID
>> +.IP *
>> +The process created runs in the initial namespaces (pid, mount, user, etc...)
>> +and not in the namespaces of the crashing process.
>> +You can utilize specifiers like
>> +.I %P
>> +to find the right
>> +.I /proc/PID
>> +directory and probe/enter the crashing process's namespaces if needed.
>> +.IP *
>>  Command-line arguments can be supplied to the
>>  program (since Linux 2.6.24),
>>  delimited by white space (up to a total line length of 128 bytes).
> 
> Cheers,
> 
> Michael
> 


-- 
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux