mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-02-04 18:26:19 +01:00
Merge branch '2289-setuid-docs' into 'main'
docs: Document that GIO should not be used in privileged processes Closes #2289 See merge request GNOME/glib!3413
This commit is contained in:
commit
f009d8e368
@ -61,7 +61,7 @@ support multithreaded applications.
|
|||||||
</refsect2>
|
</refsect2>
|
||||||
|
|
||||||
<refsect2>
|
<refsect2>
|
||||||
<title>Security</title>
|
<title>Security and setuid use</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
When writing code that runs with elevated privileges, it is important
|
When writing code that runs with elevated privileges, it is important
|
||||||
@ -74,8 +74,17 @@ excellent book on this topic,
|
|||||||
When it comes to GLib and its associated libraries, GLib and
|
When it comes to GLib and its associated libraries, GLib and
|
||||||
GObject are generally fine to use in code that runs with elevated
|
GObject are generally fine to use in code that runs with elevated
|
||||||
privileges; they don't load modules (executable code in shared objects)
|
privileges; they don't load modules (executable code in shared objects)
|
||||||
or run other programs 'behind your back'. GIO has to be used
|
or run other programs ‘behind your back’. GIO, however, is not designed to be
|
||||||
carefully in privileged programs, see the <ulink url="http://developer.gnome.org/gio/stable/ch02.html">GIO documentation</ulink> for details.
|
used in privileged programs, either ones which are spawned by a privileged
|
||||||
|
process, or ones which are run with a setuid bit set.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
setuid programs should always reset their environment to contain only
|
||||||
|
known-safe values before calling into non-trivial libraries such as GIO. This
|
||||||
|
reduces the risk of an attacker-controlled environment variable being used to
|
||||||
|
get a privileged GIO process to run arbitrary code via loading a GIO module or
|
||||||
|
similar.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
</refsect2>
|
</refsect2>
|
||||||
|
Loading…
Reference in New Issue
Block a user