<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in Kconfig</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>5796d396 - mseal sysmap: kernel config and header change</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#5796d396</link>
        <description>mseal sysmap: kernel config and header changePatch series &quot;mseal system mappings&quot;, v9.As discussed during mseal() upstream process [1], mseal() protects theVMAs of a given virtual memory range against modifications, such as theread/write (RW) and no-execute (NX) bits.  For complete descriptions ofmemory sealing, please see mseal.rst [2].The mseal() is useful to mitigate memory corruption issues where acorrupted pointer is passed to a memory management system.  For example,such an attacker primitive can break control-flow integrity guaranteessince read-only memory that is supposed to be trusted can become writableor .text pages can get remapped.The system mappings are readonly only, memory sealing can protect themfrom ever changing to writable or unmmap/remapped as different attributes.System mappings such as vdso, vvar, vvar_vclock, vectors (armcompat-mode), sigpage (arm compat-mode), are created by the kernel duringprogram initialization, and could be sealed after creation.Unlike the aforementioned mappings, the uprobe mapping is not establishedduring program startup.  However, its lifetime is the same as theprocess&apos;s lifetime [3].  It could be sealed from creation.The vsyscall on x86-64 uses a special address (0xffffffffff600000), whichis outside the mm managed range.  This means mprotect, munmap, and mremapwon&apos;t work on the vsyscall.  Since sealing doesn&apos;t enhance the vsyscall&apos;ssecurity, it is skipped in this patch.  If we ever seal the vsyscall, itis probably only for decorative purpose, i.e.  showing the &apos;sl&apos; flag inthe /proc/pid/smaps.  For this patch, it is ignored.It is important to note that the CHECKPOINT_RESTORE feature (CRIU) mayalter the system mappings during restore operations.  UML(User Mode Linux)and gVisor, rr are also known to change the vdso/vvar mappings. Consequently, this feature cannot be universally enabled across allsystems.  As such, CONFIG_MSEAL_SYSTEM_MAPPINGS is disabled by default.To support mseal of system mappings, architectures must defineCONFIG_ARCH_SUPPORTS_MSEAL_SYSTEM_MAPPINGS and update their specialmappings calls to pass mseal flag.  Additionally, architectures mustconfirm they do not unmap/remap system mappings during the processlifetime.  The existence of this flag for an architecture implies that itdoes not require the remapping of thest system mappings during processlifetime, so sealing these mappings is safe from a kernel perspective.This version covers x86-64 and arm64 archiecture as minimum viable feature.While no specific CPU hardware features are required for enable thisfeature on an archiecture, memory sealing requires a 64-bit kernel.  Otherarchitectures can choose whether or not to adopt this feature.  Currently,I&apos;m not aware of any instances in the kernel code that activelymunmap/mremap a system mapping without a request from userspace.  The PPCdoes call munmap when _install_special_mapping fails for vdso; however,it&apos;s uncertain if this will ever fail for PPC - this needs to beinvestigated by PPC in the future [4].  The UML kernel can add thissupport when KUnit tests require it [5].In this version, we&apos;ve improved the handling of system mapping sealingfrom previous versions, instead of modifying the _install_special_mappingfunction itself, which would affect all architectures, we now call_install_special_mapping with a sealing flag only within the specificarchitecture that requires it.  This targeted approach offers two keyadvantages: 1) It limits the code change&apos;s impact to the necessaryarchitectures, and 2) It aligns with the software architecture by keepingthe core memory management within the mm layer, while delegating thedecision of sealing system mappings to the individual architecture, whichis particularly relevant since 32-bit architectures never require sealing.Prior to this patch series, we explored sealing special mappings fromuserspace using glibc&apos;s dynamic linker.  This approach revealed severalissues:- The PT_LOAD header may report an incorrect length for vdso, (smaller  than its actual size).  The dynamic linker, which relies on PT_LOAD  information to determine mapping size, would then split and partially  seal the vdso mapping.  Since each architecture has its own vdso/vvar  code, fixing this in the kernel would require going through each  archiecture.  Our initial goal was to enable sealing readonly mappings,  e.g.  .text, across all architectures, sealing vdso from kernel since  creation appears to be simpler than sealing vdso at glibc.- The [vvar] mapping header only contains address information, not  length information.  Similar issues might exist for other special  mappings.- Mappings like uprobe are not covered by the dynamic linker, and there  is no effective solution for them.This feature&apos;s security enhancements will benefit ChromeOS, Android, andother high security systems.Testing:This feature was tested on ChromeOS and Android for both x86-64 and ARM64.- Enable sealing and verify vdso/vvar, sigpage, vector are sealed properly,  i.e. &quot;sl&quot; shown in the smaps for those mappings, and mremap is blocked.- Passing various automation tests (e.g. pre-checkin) on ChromeOS and  Android to ensure the sealing doesn&apos;t affect the functionality of  Chromebook and Android phone.I also tested the feature on Ubuntu on x86-64:- With config disabled, vdso/vvar is not sealed,- with config enabled, vdso/vvar is sealed, and booting up Ubuntu is OK,  normal operations such as browsing the web, open/edit doc are OK.Link: https://lore.kernel.org/all/20240415163527.626541-1-jeffxu@chromium.org/ [1]Link: Documentation/userspace-api/mseal.rst [2]Link: https://lore.kernel.org/all/CABi2SkU9BRUnqf70-nksuMCQ+yyiWjo3fM4XkRkL-NrCZxYAyg@mail.gmail.com/ [3]Link: https://lore.kernel.org/all/CABi2SkV6JJwJeviDLsq9N4ONvQ=EFANsiWkgiEOjyT9TQSt+HA@mail.gmail.com/ [4]Link: https://lore.kernel.org/all/202502251035.239B85A93@keescook/ [5]This patch (of 7):Provide infrastructure to mseal system mappings.  Establish two kernelconfigs (CONFIG_MSEAL_SYSTEM_MAPPINGS,ARCH_SUPPORTS_MSEAL_SYSTEM_MAPPINGS) and VM_SEALED_SYSMAP macro for futurepatches.Link: https://lkml.kernel.org/r/20250305021711.3867874-1-jeffxu@google.comLink: https://lkml.kernel.org/r/20250305021711.3867874-2-jeffxu@google.comSigned-off-by: Jeff Xu &lt;jeffxu@chromium.org&gt;Reviewed-by: Kees Cook &lt;kees@kernel.org&gt;Reviewed-by: Liam R. Howlett &lt;Liam.Howlett@oracle.com&gt;Reviewed-by: Lorenzo Stoakes &lt;lorenzo.stoakes@oracle.com&gt;Cc: Adhemerval Zanella &lt;adhemerval.zanella@linaro.org&gt;Cc: Alexander Mikhalitsyn &lt;aleksandr.mikhalitsyn@canonical.com&gt;Cc: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;Cc: Andrei Vagin &lt;avagin@gmail.com&gt;Cc: Anna-Maria Behnsen &lt;anna-maria@linutronix.de&gt;Cc: Ard Biesheuvel &lt;ardb@kernel.org&gt;Cc: Benjamin Berg &lt;benjamin@sipsolutions.net&gt;Cc: Christoph Hellwig &lt;hch@lst.de&gt;Cc: Dave Hansen &lt;dave.hansen@linux.intel.com&gt;Cc: David Rientjes &lt;rientjes@google.com&gt;Cc: David S. Miller &lt;davem@davemloft.net&gt;Cc: Elliot Hughes &lt;enh@google.com&gt;Cc: Florian Faineli &lt;f.fainelli@gmail.com&gt;Cc: Greg Ungerer &lt;gerg@kernel.org&gt;Cc: Guenter Roeck &lt;groeck@chromium.org&gt;Cc: Heiko Carstens &lt;hca@linux.ibm.com&gt;Cc: Helge Deller &lt;deller@gmx.de&gt;Cc: Hyeonggon Yoo &lt;42.hyeyoo@gmail.com&gt;Cc: Ingo Molnar &lt;mingo@kernel.org&gt;Cc: Jann Horn &lt;jannh@google.com&gt;Cc: Jason A. Donenfeld &lt;jason@zx2c4.com&gt;Cc: Johannes Berg &lt;johannes@sipsolutions.net&gt;Cc: Jorge Lucangeli Obes &lt;jorgelo@chromium.org&gt;Cc: Linus Waleij &lt;linus.walleij@linaro.org&gt;Cc: Mark Rutland &lt;mark.rutland@arm.com&gt;Cc: Matthew Wilcow (Oracle) &lt;willy@infradead.org&gt;Cc: Michael Ellerman &lt;mpe@ellerman.id.au&gt;Cc: Michal Hocko &lt;mhocko@suse.com&gt;Cc: Miguel Ojeda &lt;ojeda@kernel.org&gt;Cc: Mike Rapoport &lt;mike.rapoport@gmail.com&gt;Cc: Oleg Nesterov &lt;oleg@redhat.com&gt;Cc: Pedro Falcato &lt;pedro.falcato@gmail.com&gt;Cc: Peter Xu &lt;peterx@redhat.com&gt;Cc: Randy Dunlap &lt;rdunlap@infradead.org&gt;Cc: Stephen R&#246;ttger &lt;sroettger@google.com&gt;Cc: Thomas Wei&#223;schuh &lt;thomas.weissschuh@linutronix.de&gt;Cc: Vlastimil Babka &lt;vbabka@suse.cz&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Wed, 05 Mar 2025 02:17:05 +0000</pubDate>
        <dc:creator>Jeff Xu &lt;jeffxu@chromium.org&gt;</dc:creator>
    </item>
<item>
        <title>ca758b14 - fortify: Move FORTIFY_SOURCE under &apos;Kernel hardening options&apos;</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#ca758b14</link>
        <description>fortify: Move FORTIFY_SOURCE under &apos;Kernel hardening options&apos;FORTIFY_SOURCE is a hardening option both at build and runtime. Moveit under &apos;Kernel hardening options&apos;.Signed-off-by: Mel Gorman &lt;mgorman@techsingularity.net&gt;Acked-by: Paul Moore &lt;paul@paul-moore.com&gt;Link: https://lore.kernel.org/r/20250123221115.19722-5-mgorman@techsingularity.netSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Thu, 23 Jan 2025 22:11:15 +0000</pubDate>
        <dc:creator>Mel Gorman &lt;mgorman@techsingularity.net&gt;</dc:creator>
    </item>
<item>
        <title>f4d4e8b9 - mm: security: Move hardened usercopy under &apos;Kernel hardening options&apos;</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#f4d4e8b9</link>
        <description>mm: security: Move hardened usercopy under &apos;Kernel hardening options&apos;There is a submenu for &apos;Kernel hardening options&apos; under &quot;Security&quot;.Move HARDENED_USERCOPY under the hardening options as it is clearlyrelated.Signed-off-by: Mel Gorman &lt;mgorman@techsingularity.net&gt;Acked-by: Paul Moore &lt;paul@paul-moore.com&gt;Link: https://lore.kernel.org/r/20250123221115.19722-2-mgorman@techsingularity.netSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Thu, 23 Jan 2025 22:11:12 +0000</pubDate>
        <dc:creator>Mel Gorman &lt;mgorman@techsingularity.net&gt;</dc:creator>
    </item>
<item>
        <title>7ccbe076 - lsm: Only build lsm_audit.c if CONFIG_SECURITY and CONFIG_AUDIT are set</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#7ccbe076</link>
        <description>lsm: Only build lsm_audit.c if CONFIG_SECURITY and CONFIG_AUDIT are setWhen CONFIG_AUDIT is set, its CONFIG_NET dependency is also set, and thedev_get_by_index and init_net symbols (used by dump_common_audit_data)are found by the linker.  dump_common_audit_data() should then failed tobuild when CONFIG_NET is not set. However, because the compiler issmart, it knows that audit_log_start() always return NULL when!CONFIG_AUDIT, and it doesn&apos;t build the body of common_lsm_audit().  Asa side effect, dump_common_audit_data() is not built and the linkerdoesn&apos;t error out because of missing symbols.Let&apos;s only build lsm_audit.o when CONFIG_SECURITY and CONFIG_AUDIT areboth set, which is checked with the new CONFIG_HAS_SECURITY_AUDIT.ipv4_skb_to_auditdata() and ipv6_skb_to_auditdata() are only used bySmack if CONFIG_AUDIT is set, so they don&apos;t need fake implementations.Because common_lsm_audit() is used in multiple places withoutCONFIG_AUDIT checks, add a fake implementation.Link: https://lore.kernel.org/r/20241122143353.59367-2-mic@digikod.netCc: Casey Schaufler &lt;casey@schaufler-ca.com&gt;Cc: James Morris &lt;jmorris@namei.org&gt;Cc: Paul Moore &lt;paul@paul-moore.com&gt;Cc: Serge E. Hallyn &lt;serge@hallyn.com&gt;Signed-off-by: Micka&#235;l Sala&#252;n &lt;mic@digikod.net&gt;Signed-off-by: Paul Moore &lt;paul@paul-moore.com&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Fri, 22 Nov 2024 14:33:31 +0000</pubDate>
        <dc:creator>Micka&#235;l Sala&#252;n &lt;mic@digikod.net&gt;</dc:creator>
    </item>
<item>
        <title>41e8149c - proc: add config &amp; param to block forcing mem writes</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#41e8149c</link>
        <description>proc: add config &amp; param to block forcing mem writesThis adds a Kconfig option and boot param to allow removingthe FOLL_FORCE flag from /proc/pid/mem write calls becauseit can be abused.The traditional forcing behavior is kept as default becauseit can break GDB and some other use cases.Previously we tried a more sophisticated approach allowingdistributions to fine-tune /proc/pid/mem behavior, howeverthat got NAK-ed by Linus [1], who prefers this simplerapproach with semantics also easier to understand for users.Link: https://lore.kernel.org/lkml/CAHk-=wiGWLChxYmUA5HrT5aopZrB7_2VTa0NLZcxORgkUe5tEQ@mail.gmail.com/ [1]Cc: Doug Anderson &lt;dianders@chromium.org&gt;Cc: Jeff Xu &lt;jeffxu@google.com&gt;Cc: Jann Horn &lt;jannh@google.com&gt;Cc: Kees Cook &lt;kees@kernel.org&gt;Cc: Ard Biesheuvel &lt;ardb@kernel.org&gt;Cc: Christian Brauner &lt;brauner@kernel.org&gt;Suggested-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;Signed-off-by: Adrian Ratiu &lt;adrian.ratiu@collabora.com&gt;Link: https://lore.kernel.org/r/20240802080225.89408-1-adrian.ratiu@collabora.comSigned-off-by: Christian Brauner &lt;brauner@kernel.org&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Fri, 02 Aug 2024 08:02:25 +0000</pubDate>
        <dc:creator>Adrian Ratiu &lt;adrian.ratiu@collabora.com&gt;</dc:creator>
    </item>
<item>
        <title>03115077 - lsm: add IPE lsm</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#03115077</link>
        <description>lsm: add IPE lsmIntegrity Policy Enforcement (IPE) is an LSM that provides ancomplimentary approach to Mandatory Access Control than existing LSMstoday.Existing LSMs have centered around the concept of access to a resourceshould be controlled by the current user&apos;s credentials. IPE&apos;s approach,is that access to a resource should be controlled by the system&apos;s trustof a current resource.The basis of this approach is defining a global policy to specify whichresource can be trusted.Signed-off-by: Deven Bowers &lt;deven.desai@linux.microsoft.com&gt;Signed-off-by: Fan Wu &lt;wufan@linux.microsoft.com&gt;[PM: subject line tweak]Signed-off-by: Paul Moore &lt;paul@paul-moore.com&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Sat, 03 Aug 2024 06:08:15 +0000</pubDate>
        <dc:creator>Deven Bowers &lt;deven.desai@linux.microsoft.com&gt;</dc:creator>
    </item>
<item>
        <title>7d354f49 - fortify: drop Clang version check for 12.0.1 or newer</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#7d354f49</link>
        <description>fortify: drop Clang version check for 12.0.1 or newerNow that the minimum supported version of LLVM for building the kernel hasbeen bumped to 13.0.1, this condition is always true, as the build willfail during the configuration stage for older LLVM versions.  Remove it.Link: https://lkml.kernel.org/r/20240125-bump-min-llvm-ver-to-13-0-1-v1-9-f5ff9bda41c5@kernel.orgSigned-off-by: Nathan Chancellor &lt;nathan@kernel.org&gt;Reviewed-by: Kees Cook &lt;keescook@chromium.org&gt;Cc: Albert Ou &lt;aou@eecs.berkeley.edu&gt;Cc: &quot;Aneesh Kumar K.V (IBM)&quot; &lt;aneesh.kumar@kernel.org&gt;Cc: Ard Biesheuvel &lt;ardb@kernel.org&gt;Cc: Borislav Petkov (AMD) &lt;bp@alien8.de&gt;Cc: Catalin Marinas &lt;catalin.marinas@arm.com&gt;Cc: Conor Dooley &lt;conor@kernel.org&gt;Cc: Dave Hansen &lt;dave.hansen@linux.intel.com&gt;Cc: Ingo Molnar &lt;mingo@redhat.com&gt;Cc: Mark Rutland &lt;mark.rutland@arm.com&gt;Cc: Masahiro Yamada &lt;masahiroy@kernel.org&gt;Cc: Michael Ellerman &lt;mpe@ellerman.id.au&gt;Cc: &quot;Naveen N. Rao&quot; &lt;naveen.n.rao@linux.ibm.com&gt;Cc: Nicholas Piggin &lt;npiggin@gmail.com&gt;Cc: Nicolas Schier &lt;nicolas@fjasle.eu&gt;Cc: Palmer Dabbelt &lt;palmer@dabbelt.com&gt;Cc: Paul Walmsley &lt;paul.walmsley@sifive.com&gt;Cc: Russell King &lt;linux@armlinux.org.uk&gt;Cc: Thomas Gleixner &lt;tglx@linutronix.de&gt;Cc: Will Deacon &lt;will@kernel.org&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Thu, 25 Jan 2024 22:55:15 +0000</pubDate>
        <dc:creator>Nathan Chancellor &lt;nathan@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>2947a456 - treewide: update LLVM Bugzilla links</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#2947a456</link>
        <description>treewide: update LLVM Bugzilla linksLLVM moved their issue tracker from their own Bugzilla instance to GitHubissues.  While all of the links are still valid, they may not necessarilyshow the most up to date information around the issues, as all updateswill occur on GitHub, not Bugzilla.Another complication is that the Bugzilla issue number is not always thesame as the GitHub issue number.  Thankfully, LLVM maintains this mappingthrough two shortlinks:  https://llvm.org/bz&lt;num&gt; -&gt; https://bugs.llvm.org/show_bug.cgi?id=&lt;num&gt;  https://llvm.org/pr&lt;num&gt; -&gt; https://github.com/llvm/llvm-project/issues/&lt;mapped_num&gt;Switch all &quot;https://bugs.llvm.org/show_bug.cgi?id=&lt;num&gt;&quot; links to the&quot;https://llvm.org/pr&lt;num&gt;&quot; shortlink so that the links show the most up todate information.  Each migrated issue links back to the Bugzilla entry,so there should be no loss of fidelity of information here.Link: https://lkml.kernel.org/r/20240109-update-llvm-links-v1-3-eb09b59db071@kernel.orgSigned-off-by: Nathan Chancellor &lt;nathan@kernel.org&gt;Reviewed-by: Kees Cook &lt;keescook@chromium.org&gt;Acked-by: Fangrui Song &lt;maskray@google.com&gt;Cc: Alexei Starovoitov &lt;ast@kernel.org&gt;Cc: Andrii Nakryiko &lt;andrii@kernel.org&gt;Cc: Daniel Borkmann &lt;daniel@iogearbox.net&gt;Cc: Mykola Lysenko &lt;mykolal@fb.com&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Tue, 09 Jan 2024 22:16:31 +0000</pubDate>
        <dc:creator>Nathan Chancellor &lt;nathan@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>d2e527f0 - mm/slab: remove HAVE_HARDENED_USERCOPY_ALLOCATOR</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#d2e527f0</link>
        <description>mm/slab: remove HAVE_HARDENED_USERCOPY_ALLOCATORWith SLOB removed, both remaining allocators support hardened usercopy,so remove the config and associated #ifdef.Signed-off-by: Vlastimil Babka &lt;vbabka@suse.cz&gt;Reviewed-by: David Hildenbrand &lt;david@redhat.com&gt;Reviewed-by: Lorenzo Stoakes &lt;lstoakes@gmail.com&gt;Reviewed-by: Kees Cook &lt;keescook@chromium.org&gt;Acked-by: David Rientjes &lt;rientjes@google.com&gt;Acked-by: Hyeonggon Yoo &lt;42.hyeyoo@gmail.com&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Tue, 23 May 2023 07:26:35 +0000</pubDate>
        <dc:creator>Vlastimil Babka &lt;vbabka@suse.cz&gt;</dc:creator>
    </item>
<item>
        <title>ff61f079 - docs: move x86 documentation into Documentation/arch/</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#ff61f079</link>
        <description>docs: move x86 documentation into Documentation/arch/Move the x86 documentation under Documentation/arch/ as a way of cleaningup the top-level directory and making the structure of our docs moreclosely match the structure of the source directories it describes.All in-kernel references to the old paths have been updated.Acked-by: Dave Hansen &lt;dave.hansen@linux.intel.com&gt;Cc: linux-arch@vger.kernel.orgCc: x86@kernel.orgCc: Borislav Petkov &lt;bp@alien8.de&gt;Cc: Thomas Gleixner &lt;tglx@linutronix.de&gt;Link: https://lore.kernel.org/lkml/20230315211523.108836-1-corbet@lwn.net/Signed-off-by: Jonathan Corbet &lt;corbet@lwn.net&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Tue, 14 Mar 2023 23:06:44 +0000</pubDate>
        <dc:creator>Jonathan Corbet &lt;corbet@lwn.net&gt;</dc:creator>
    </item>
<item>
        <title>f22f9aaf - selinux: remove the runtime disable functionality</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#f22f9aaf</link>
        <description>selinux: remove the runtime disable functionalityAfter working with the larger SELinux-based distros for severalyears, we&apos;re finally at a place where we can disable the SELinuxruntime disable functionality.  The existing kernel deprecationnotice explains the functionality and why we want to remove it:  The selinuxfs &quot;disable&quot; node allows SELinux to be disabled at  runtime prior to a policy being loaded into the kernel.  If  disabled via this mechanism, SELinux will remain disabled until  the system is rebooted.  The preferred method of disabling SELinux is via the &quot;selinux=0&quot;  boot parameter, but the selinuxfs &quot;disable&quot; node was created to  make it easier for systems with primitive bootloaders that did not  allow for easy modification of the kernel command line.  Unfortunately, allowing for SELinux to be disabled at runtime makes  it difficult to secure the kernel&apos;s LSM hooks using the  &quot;__ro_after_init&quot; feature.It is that last sentence, mentioning the &apos;__ro_after_init&apos; hardening,which is the real motivation for this change, and if you look at thediffstat you&apos;ll see that the impact of this patch reaches across allthe different LSMs, helping prevent tampering at the LSM hook level.From a SELinux perspective, it is important to note that if youcontinue to disable SELinux via &quot;/etc/selinux/config&quot; it may appearthat SELinux is disabled, but it is simply in an uninitialized state.If you load a policy with `load_policy -i`, you will see SELinuxcome alive just as if you had loaded the policy during early-boot.It is also worth noting that the &quot;/sys/fs/selinux/disable&quot; file isalways writable now, regardless of the Kconfig settings, but writingto the file has no effect on the system, other than to display anerror on the console if a non-zero/true value is written.Finally, in the several years where we have been working ondeprecating this functionality, there has only been one instance ofsomeone mentioning any user visible breakage.  In this particularcase it was an individual&apos;s kernel test system, and the workarounddocumented in the deprecation notice (&quot;selinux=0&quot; on the kernelcommand line) resolved the issue without problem.Acked-by: Casey Schaufler &lt;casey@schaufler-ca.com&gt;Signed-off-by: Paul Moore &lt;paul@paul-moore.com&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Fri, 17 Mar 2023 16:43:07 +0000</pubDate>
        <dc:creator>Paul Moore &lt;paul@paul-moore.com&gt;</dc:creator>
    </item>
<item>
        <title>b9b8701b - security: Remove integrity from the LSM list in Kconfig</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#b9b8701b</link>
        <description>security: Remove integrity from the LSM list in KconfigRemove &apos;integrity&apos; from the list of LSMs in Kconfig, as it is no longernecessary. Since the recent change (set order to LSM_ORDER_LAST), the&apos;integrity&apos; LSM is always enabled (if selected in the kernelconfiguration).Signed-off-by: Roberto Sassu &lt;roberto.sassu@huawei.com&gt;Acked-by: Mimi Zohar &lt;zohar@linux.ibm.com&gt;Signed-off-by: Paul Moore &lt;paul@paul-moore.com&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Fri, 10 Mar 2023 08:54:01 +0000</pubDate>
        <dc:creator>Roberto Sassu &lt;roberto.sassu@huawei.com&gt;</dc:creator>
    </item>
<item>
        <title>f43b9876 - x86/retbleed: Add fine grained Kconfig knobs</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#f43b9876</link>
        <description>x86/retbleed: Add fine grained Kconfig knobsDo fine-grained Kconfig for all the various retbleed parts.NOTE: if your compiler doesn&apos;t support return thunks this willsilently &apos;upgrade&apos; your mitigation to IBPB, you might not like this.Signed-off-by: Peter Zijlstra (Intel) &lt;peterz@infradead.org&gt;Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Mon, 27 Jun 2022 22:21:17 +0000</pubDate>
        <dc:creator>Peter Zijlstra &lt;peterz@infradead.org&gt;</dc:creator>
    </item>
<item>
        <title>1109a5d9 - usercopy: Remove HARDENED_USERCOPY_PAGESPAN</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#1109a5d9</link>
        <description>usercopy: Remove HARDENED_USERCOPY_PAGESPANThere isn&apos;t enough information to make this a useful check any more;the useful parts of it were moved in earlier patches, so remove thisset of checks now.Signed-off-by: Matthew Wilcox (Oracle) &lt;willy@infradead.org&gt;Acked-by: Kees Cook &lt;keescook@chromium.org&gt;Reviewed-by: David Hildenbrand &lt;david@redhat.com&gt;Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;Link: https://lore.kernel.org/r/20220110231530.665970-5-willy@infradead.org

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Mon, 10 Jan 2022 23:15:30 +0000</pubDate>
        <dc:creator>Matthew Wilcox (Oracle) &lt;willy@infradead.org&gt;</dc:creator>
    </item>
<item>
        <title>ef3e787c - usercopy: Disable CONFIG_HARDENED_USERCOPY_PAGESPAN</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#ef3e787c</link>
        <description>usercopy: Disable CONFIG_HARDENED_USERCOPY_PAGESPANCONFIG_HARDENED_USERCOPY_PAGESPAN has been mostly broken for a while,and it has become hard to ignore with some recent scsi changes[1].While there is a more complete series to replace it with better checks[2],it should have more soak time in -next. Instead, disable the config now,with the expectation that it will be fully replaced in the next kernelrelease.[1] https://lore.kernel.org/lkml/20220324064846.GA12961@lst.de/[2] https://lore.kernel.org/linux-hardening/20220110231530.665970-1-willy@infradead.org/Suggested-by: Christoph Hellwig &lt;hch@lst.de&gt;Cc: &quot;Matthew Wilcox (Oracle)&quot; &lt;willy@infradead.org&gt;Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Thu, 24 Mar 2022 22:57:25 +0000</pubDate>
        <dc:creator>Kees Cook &lt;keescook@chromium.org&gt;</dc:creator>
    </item>
<item>
        <title>281d0c96 - fortify: Add Clang support</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#281d0c96</link>
        <description>fortify: Add Clang supportEnable FORTIFY_SOURCE support for Clang:Use the new __pass_object_size and __overloadable attributes so thatClang will have appropriate visibility into argument sizes such that__builtin_object_size(p, 1) will behave correctly. Additional detailsavailable here:    https://github.com/llvm/llvm-project/issues/53516    https://github.com/ClangBuiltLinux/linux/issues/1401A bug with __builtin_constant_p() of globally defined variables wasfixed in Clang 13 (and backported to 12.0.1), so FORTIFY support mustdepend on that version or later. Additional details here:    https://bugs.llvm.org/show_bug.cgi?id=41459    commit a52f8a59aef4 (&quot;fortify: Explicitly disable Clang support&quot;)A bug with Clang&apos;s -mregparm=3 and -m32 makes some builtins unusable,so removing -ffreestanding (to gain the needed libcall optimizationswith Clang) cannot be done. Without the libcall optimizations, Clangcannot provide appropriate FORTIFY coverage, so it must be disabledfor CONFIG_X86_32. Additional details here;    https://github.com/llvm/llvm-project/issues/53645Cc: Miguel Ojeda &lt;ojeda@kernel.org&gt;Cc: Nick Desaulniers &lt;ndesaulniers@google.com&gt;Cc: Nathan Chancellor &lt;nathan@kernel.org&gt;Cc: George Burgess IV &lt;gbiv@google.com&gt;Cc: llvm@lists.linux.devSigned-off-by: Kees Cook &lt;keescook@chromium.org&gt;Reviewed-by: Nick Desaulniers &lt;ndesaulniers@google.com&gt;Link: https://lore.kernel.org/r/20220208225350.1331628-9-keescook@chromium.org

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Tue, 08 Feb 2022 22:53:50 +0000</pubDate>
        <dc:creator>Kees Cook &lt;keescook@chromium.org&gt;</dc:creator>
    </item>
<item>
        <title>53944f17 - mm: remove HARDENED_USERCOPY_FALLBACK</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#53944f17</link>
        <description>mm: remove HARDENED_USERCOPY_FALLBACKThis has served its purpose and is no longer used.  All usercopyviolations appear to have been handled by now, any remaining instances(or new bugs) will cause copies to be rejected.This isn&apos;t a direct revert of commit 2d891fbc3bb6 (&quot;usercopy: Allowstrict enforcement of whitelists&quot;); since usercopy_fallback iseffectively 0, the fallback handling is removed too.This also removes the usercopy_fallback module parameter on slab_common.Link: https://github.com/KSPP/linux/issues/153Link: https://lkml.kernel.org/r/20210921061149.1091163-1-steve@sk2.orgSigned-off-by: Stephen Kitt &lt;steve@sk2.org&gt;Suggested-by: Kees Cook &lt;keescook@chromium.org&gt;Acked-by: Kees Cook &lt;keescook@chromium.org&gt;Reviewed-by: Joel Stanley &lt;joel@jms.id.au&gt;	[defconfig change]Acked-by: David Rientjes &lt;rientjes@google.com&gt;Cc: Christoph Lameter &lt;cl@linux.com&gt;Cc: Pekka Enberg &lt;penberg@kernel.org&gt;Cc: Joonsoo Kim &lt;iamjoonsoo.kim@lge.com&gt;Cc: Vlastimil Babka &lt;vbabka@suse.cz&gt;Cc: James Morris &lt;jmorris@namei.org&gt;Cc: &quot;Serge E . Hallyn&quot; &lt;serge@hallyn.com&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Fri, 05 Nov 2021 20:45:18 +0000</pubDate>
        <dc:creator>Stephen Kitt &lt;steve@sk2.org&gt;</dc:creator>
    </item>
<item>
        <title>a52f8a59 - fortify: Explicitly disable Clang support</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#a52f8a59</link>
        <description>fortify: Explicitly disable Clang supportClang has never correctly compiled the FORTIFY_SOURCE defenses due toa couple bugs:	Eliding inlines with matching __builtin_* names	https://bugs.llvm.org/show_bug.cgi?id=50322	Incorrect __builtin_constant_p() of some globals	https://bugs.llvm.org/show_bug.cgi?id=41459In the process of making improvements to the FORTIFY_SOURCE defenses, thefirst (silent) bug (coincidentally) becomes worked around, but exposesthe latter which breaks the build. As such, Clang must not be used withCONFIG_FORTIFY_SOURCE until at least latter bug is fixed (in Clang 13),and the fortify routines have been rearranged.Update the Kconfig to reflect the reality of the current situation.Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;Acked-by: Nick Desaulniers &lt;ndesaulniers@google.com&gt;Link: https://lore.kernel.org/lkml/CAKwvOd=A+ueGV2ihdy5GtgR2fQbcXjjAtVxv3=cPjffpebZB7A@mail.gmail.com

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Thu, 13 May 2021 04:51:10 +0000</pubDate>
        <dc:creator>Kees Cook &lt;keescook@chromium.org&gt;</dc:creator>
    </item>
<item>
        <title>385975dc - landlock: Set up the security framework and manage credentials</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#385975dc</link>
        <description>landlock: Set up the security framework and manage credentialsProcess&apos;s credentials point to a Landlock domain, which is underneathimplemented with a ruleset.  In the following commits, this domain isused to check and enforce the ptrace and filesystem security policies.A domain is inherited from a parent to its child the same way a threadinherits a seccomp policy.Cc: James Morris &lt;jmorris@namei.org&gt;Signed-off-by: Micka&#235;l Sala&#252;n &lt;mic@linux.microsoft.com&gt;Reviewed-by: Jann Horn &lt;jannh@google.com&gt;Acked-by: Serge Hallyn &lt;serge@hallyn.com&gt;Reviewed-by: Kees Cook &lt;keescook@chromium.org&gt;Link: https://lore.kernel.org/r/20210422154123.13086-4-mic@digikod.netSigned-off-by: James Morris &lt;jamorris@linux.microsoft.com&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Thu, 22 Apr 2021 15:41:13 +0000</pubDate>
        <dc:creator>Micka&#235;l Sala&#252;n &lt;mic@linux.microsoft.com&gt;</dc:creator>
    </item>
<item>
        <title>90945448 - landlock: Add object management</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/security/Kconfig#90945448</link>
        <description>landlock: Add object managementA Landlock object enables to identify a kernel object (e.g. an inode).A Landlock rule is a set of access rights allowed on an object.  Rulesare grouped in rulesets that may be tied to a set of processes (i.e.subjects) to enforce a scoped access-control (i.e. a domain).Because Landlock&apos;s goal is to empower any process (especiallyunprivileged ones) to sandbox themselves, we cannot rely on asystem-wide object identification such as file extended attributes.Indeed, we need innocuous, composable and modular access-controls.The main challenge with these constraints is to identify kernel objectswhile this identification is useful (i.e. when a security policy makesuse of this object).  But this identification data should be freed onceno policy is using it.  This ephemeral tagging should not and may not bewritten in the filesystem.  We then need to manage the lifetime of arule according to the lifetime of its objects.  To avoid a global lock,this implementation make use of RCU and counters to safely referenceobjects.A following commit uses this generic object management for inodes.Cc: James Morris &lt;jmorris@namei.org&gt;Signed-off-by: Micka&#235;l Sala&#252;n &lt;mic@linux.microsoft.com&gt;Reviewed-by: Jann Horn &lt;jannh@google.com&gt;Acked-by: Serge Hallyn &lt;serge@hallyn.com&gt;Reviewed-by: Kees Cook &lt;keescook@chromium.org&gt;Link: https://lore.kernel.org/r/20210422154123.13086-2-mic@digikod.netSigned-off-by: James Morris &lt;jamorris@linux.microsoft.com&gt;

            List of files:
            /linux-6.15/security/Kconfig</description>
        <pubDate>Thu, 22 Apr 2021 15:41:11 +0000</pubDate>
        <dc:creator>Micka&#235;l Sala&#252;n &lt;mic@linux.microsoft.com&gt;</dc:creator>
    </item>
</channel>
</rss>
