From Fedora Project Wiki

(remove note on private /tmp via systemd)
(28 intermediate revisions by 9 users not shown)
Line 1: Line 1:
{{header|docs}}
{{header|docs}}
{{Docs_beat_open}}
{{Docs_beat_open}}
== Password Quality Checking ==
Fedora now has a single configurable library, ''[https://fedorahosted.org/libpwquality libpwquality]'', for checking the quality of new passwords used for system accounts. The system wide password quality checks provided by this library are configured by modifying the <code>/etc/security/pwquality.conf</code> configuration file.
Developers wishing to call this API from their applications will find the API description in the <code>pwquality.h</code> file provided by the ''libpwquality-devel'' package. A python wrapper, ''python-pwquality'', is also provided.
<!-- http://fedoraproject.org/wiki/Features/PasswordQualityChecking -->
== SELinux Deny Ptrace ==
A new SELinux boolean, ''deny_ptrace'', has been added. It is recommended that users who do not plan to debug applications on their machine turn this boolean on. The boolean prevents rogue processes from being able to read the memory of, or otherwise attack, other processes using debugging tools including ''ptrace'' and ''gdb''.
Such attacks are prevented even where the rogue process is running as the root user or attacking a process running with the same SELinux context and label. To permanently enable the protection provided by the ''deny_ptrace'' boolean, execute the following command as root:
<code># setsebool -P deny_ptrace 1</code>
To disable the protection provided by the ''deny_ptrace'' boolean temporarily, execute the following command as root:
<code># setsebool deny_ptrace 0</code>
<!-- https://fedoraproject.org/wiki/Features/SELinuxDenyPtrace -->
== Services Private /tmp ==
http://fedoraproject.org/wiki/Features/ServicesPrivateTmp
== Secure Containers ==
A new tool, ''sandbox'', has been created to streamline creation of secure ''libvirt'' containers. When provided with an executable ''sandbox'' determines the mount points  and ''libvirt'' container information required to run the application in a container. The container is then launched by ''libvirt'' with an SELinux context that will prevent it interacting with other processes on the system, including other containers, while still being able to share system data.
This allows an administrator to run multiple instances of a service simultaneously, while preventing them from breaking the host machine or other processes on the system, even when run as ''root''. To use ''sandboxcontainer'', install the ''libvirt-sandbox'' package.
<!-- http://fedoraproject.org/wiki/Features/Securecontainers -->


[[Category:Docs Project]]
[[Category:Docs Project]]
Line 41: Line 6:
[[Category:Documentation beats]]
[[Category:Documentation beats]]


== Hardlink and symlink restrictions ==


[[Category:Docs Project]]
A long-standing class of security issues is the link-based time-of-check-time-of-use race, most commonly seen in world-writable directories like /tmp. The common method of exploitation of this flaw is to cross privilege boundaries when following a given link (i.e. a root process follows a link belonging to another user).  In Fedora 19,  we permit links to only be followed when outside a sticky world-writable directory, or when the uid of the link and follower match, or when the directory owner matches the link's owner.  In previous releases, this was enforced by SELinux policy and in this release, we have enabled these restrictions via the following sysctl settings in /usr/lib/sysctl.d/00-system.conf as an additional layer of protection:
[[Category:Draft documentation]]
 
[[Category:Documentation beats]]
fs.protected_hardlinks = 1
fs.protected_symlinks = 1
 
Refer to http://lwn.net/Articles/503660/ and https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=800179c9b8a1e796e441674776d11cd4c05d61d7 for more detailed information about this change.  Note that in addition to this,

Revision as of 14:10, 20 March 2013

DocsProject Header docTeam1.png
Note.png
Beat is open
This beat is now ready to have Fedora 25 content added by the beat writer

Hardlink and symlink restrictions

A long-standing class of security issues is the link-based time-of-check-time-of-use race, most commonly seen in world-writable directories like /tmp. The common method of exploitation of this flaw is to cross privilege boundaries when following a given link (i.e. a root process follows a link belonging to another user). In Fedora 19, we permit links to only be followed when outside a sticky world-writable directory, or when the uid of the link and follower match, or when the directory owner matches the link's owner. In previous releases, this was enforced by SELinux policy and in this release, we have enabled these restrictions via the following sysctl settings in /usr/lib/sysctl.d/00-system.conf as an additional layer of protection:

fs.protected_hardlinks = 1
fs.protected_symlinks = 1

Refer to http://lwn.net/Articles/503660/ and https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=800179c9b8a1e796e441674776d11cd4c05d61d7 for more detailed information about this change. Note that in addition to this,