CloudLinux - CloudLinux Blog - The Symlink Protection patchset is available for free for CentOS 6 & 7, even if you are not running KernelCare
RSS

By accepting you will be accessing a service provided by a third-party external to https://www.cloudlinux.com/

The Symlink Protection patchset is available for free for CentOS 6 & 7, even if you are not running KernelCare

The Symlink Protection patchset is available for free for CentOS 6 & 7, even if you are not running KernelCare

A few weeks ago we released the KernelCare "Extra" Patchset with the security fixes and the symlink protection available to all KernelCare customers running CentOS kernels. Today we are pleased to share that you can get the Symlink Protection Patchset for CentOS 6 and 7 at no cost, even if you don’t have licenses of KernelCare.

We’ve been discussing with the cPanel team on how to help with hardening of their customers' system kernels. This Symlink Protection Patchset will protect CentOS 6 and 7 systems and will help defend shared hosting servers, including the cPanel servers, against symlink attacks.

A symlink race attack is frequently used against shared hosting servers. It allows a malicious user to serve files that belong to other users by creating a symbolic link to those files. It is often used to access config.php files that belong to others. This patchset helps protect against such attacks.

Note that this patchset includes only the symlink protection, and does not include the security fixes (those are available to KernelCare customers) - you will still need to update kernel and REBOOT each time new CentOS kernel is released to keep your kernel secure.

We recommend the installation of this patchset on CentOS 6 and CentOS 7 to make your servers more secure.

How to install the free symlink protection patchset:

Below we provide instructions on how to install KernelCare and run this patchset for free. Though this symlink protection patchset is part of KernelCare, it does not require you to purchase a license or even register for the KernelCare free trial (if you choose to purchase a license at a later date, information on how to upgrade will be published in the documentation soon).

To enable the symlink protection, perform the following steps:

First, install KernelCare client:

curl -s https://repo.cloudlinux.com/kernelcare/kernelcare_install.sh | bash

Enable free patch type, this patch type doesn't require a license

kcarectl --set-patch-type free --update

The ‘free’ patch will be applied on the next update.

. . .

During the installation, you should see something similar to:


OS: CentOS6
kernel: kernel-2.6.32-696.el6
time: 2017-06-22 16:13:40
uname: 2.6.32-642.15.1.el6

kpatch-name: 2.6.32/symlink-protection.patch
kpatch-description: symlink protection // If you see this patch, it mean that you can enable symlink protection.
kpatch-kernel: kernel-2.6.32-279.2.1.el6
kpatch-cve: N/A
kpatch-cvss: N/A
kpatch-cve-url: N/A
kpatch-patch-url: https://gerrit.cloudlinux.com/#/c/16508/

kpatch-name: 2.6.32/symlink-protection.kpatch-1.patch
kpatch-description: symlink protection (kpatch adaptation)
kpatch-kernel: kernel-2.6.32-279.2.1.el6
kpatch-cve: N/A
kpatch-cvss: N/A
kpatch-cve-url: N/A
kpatch-patch-url: https://gerrit.cloudlinux.com/#/c/16508/


Edit the file /etc/sysconfig/kcare/sysctl.conf (or create it if it doesn't exist) - add the lines:

fs.enforce_symlinksifowner = 1
fs.symlinkown_gid = 48


Execute:

sysctl -w fs.enforce_symlinksifowner=1
sysctl -w fs.symlinkown_gid=48

Note: On standard RPM Apache installation, Apache is usually running under GID 48. On cPanel servers, Apache is running under user nobody, GID 99.

Click here to learn more about KernelCare.
 

Beta: EasyApache 4 updated
Beta: LVE Manager updated
 

Comments 95

Guest - Nik on Friday, 06 October 2017 14:50

[[email protected] ~]# kcarectl --info
Update available, run 'kcarectl --update'.
kpatch-state: patch is applied
kpatch-for: Linux version 3.10.0-693.2.2.el7.x86_64 ([email protected]) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) ) #1 SMP Tue Sep 12 22:26:13 UTC 2017
kpatch-build-time: Fri Sep 15 08:40:24 2017
kpatch-description: 3-;3.10.0-693.2.2.el7

[[email protected] ~]# uname -r
3.10.0-693.2.2.el7.x86_64

[[email protected] ~]# kcarectl --info Update available, run 'kcarectl --update'. kpatch-state: patch is applied kpatch-for: Linux version 3.10.0-693.2.2.el7.x86_64 ([email protected]) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) ) #1 SMP Tue Sep 12 22:26:13 UTC 2017 kpatch-build-time: Fri Sep 15 08:40:24 2017 kpatch-description: 3-;3.10.0-693.2.2.el7 [[email protected] ~]# uname -r 3.10.0-693.2.2.el7.x86_64
Igor Seletskiy on Friday, 06 October 2017 15:27

you are running 'default' patchset, probably because of the trial license.

Make sure you switch to free patchset by running:
kcarectl --set-patch-type free

Or you can do extra (includes kernel security patches):
kcarectl --set-patch-type extra
Yet, that will expire as trial runs out.

you are running 'default' patchset, probably because of the trial license. Make sure you switch to free patchset by running: kcarectl --set-patch-type free Or you can do extra (includes kernel security patches): kcarectl --set-patch-type extra Yet, that will expire as trial runs out.
Guest - Nik on Friday, 06 October 2017 15:58

[[email protected] ~]# kcarectl --set-patch-type free
'free' patch type selected

[[email protected] ~]# kcarectl --info
kpatch-state: patch is applied
kpatch-for: Linux version 3.10.0-693.2.2.el7.x86_64 ([email protected] .org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) ) #1 SMP Tue Sep 12 2 2:26:13 UTC 2017
kpatch-build-time: Fri Sep 15 09:06:46 2017
kpatch-description: 3-free;3.10.0-693.2.2.el7

[[email protected] ~]# uname -r
3.10.0-693.2.2.el7.x86_64

[[email protected] ~]# kcarectl --set-patch-type free 'free' patch type selected [[email protected] ~]# kcarectl --info kpatch-state: patch is applied kpatch-for: Linux version 3.10.0-693.2.2.el7.x86_64 ([email protected] .org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) ) #1 SMP Tue Sep 12 2 2:26:13 UTC 2017 kpatch-build-time: Fri Sep 15 09:06:46 2017 kpatch-description: 3-free;3.10.0-693.2.2.el7 [[email protected] ~]# uname -r 3.10.0-693.2.2.el7.x86_64
Guest - Guest on Friday, 06 October 2017 18:50

Igor, I have followed your instructions but in cPanel (v66.0.24) security advisor I receive the following alert -

Kernel symlink protection is not enabled for CentOS 6. You do not appear to have any symlink protection enabled through a properly patched kernel on this server, which provides additional protect beyond those solutions employed in userland. Please review the following documentation to learn how to apply this protection.
. How can I resolve this issue?

Output of kcarectl --info
Unknown kernel (CentOS 2.6.32-696.13.2.el6.x86_64), no patches available

Output of uname -r
2.6.32-696.13.2.el6.x86_64

Igor, I have followed your instructions but in cPanel (v66.0.24) security advisor I receive the following alert - [quote]Kernel symlink protection is not enabled for CentOS 6. You do not appear to have any symlink protection enabled through a properly patched kernel on this server, which provides additional protect beyond those solutions employed in userland. Please review the following documentation to learn how to apply this protection.[/quote]. How can I resolve this issue? [b]Output of kcarectl --info[/b] Unknown kernel (CentOS 2.6.32-696.13.2.el6.x86_64), no patches available [b]Output of uname -r[/b] 2.6.32-696.13.2.el6.x86_64
Guest - Zarren on Friday, 06 October 2017 18:58


Hello

Will patch be corrupted if I do kernel update?

[b] Hello Will patch be corrupted if I do kernel update?[/b]
Guest - Lord55 on Friday, 06 October 2017 19:26

[[email protected] ~]# kcarectl --set-patch-type free
Unknown Kernel (CentOS 2.6.32-696.13.2.el6.x86_64)

[[email protected] ~]# kcarectl --info
Unknown kernel (CentOS 2.6.32-696.13.2.el6.x86_64), no patches available

[[email protected] ~]# kcarectl --set-patch-type free Unknown Kernel (CentOS 2.6.32-696.13.2.el6.x86_64) [[email protected] ~]# kcarectl --info Unknown kernel (CentOS 2.6.32-696.13.2.el6.x86_64), no patches available
Guest - Guest on Friday, 06 October 2017 20:20

Did the instructions for installing this change?

I thought the original instructions had

fs.protected_symlinks_create=1
fs.protected_hardlinks_create=1


in the /etc/sysconfig/kcare/sysctl.conf file.

You may want to make a note if the instructions changed.

Did the instructions for installing this change? I thought the original instructions had [b]fs.protected_symlinks_create=1 fs.protected_hardlinks_create=1 [/b] in the [b]/etc/sysconfig/kcare/sysctl.conf[/b] file. You may want to make a note if the instructions changed.
Guest - jamaludin on Saturday, 07 October 2017 02:44

Hi, i need some question:
1. Is it compatible with this existing kernel server from cPanel ?https://documentation.cpanel.net/display/CKB/How+to+Harden+Your+cPanel+System's+Kernel
[[email protected]]# uname -a
Linux ~server.com 2.6.32-696.299.10.3.cp6.x86_64 #1 SMP Thu Sep 28 21:04:26 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

2. Is it compatible for VPS virtuozzo or only VPS KVM / Server?

Waiting for your info?

Hi, i need some question: 1. Is it compatible with this existing kernel server from cPanel ?https://documentation.cpanel.net/display/CKB/How+to+Harden+Your+cPanel+System's+Kernel [[email protected]]# uname -a Linux ~server.com 2.6.32-696.299.10.3.cp6.x86_64 #1 SMP Thu Sep 28 21:04:26 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux 2. Is it compatible for VPS virtuozzo or only VPS KVM / Server? Waiting for your info?
Guest - Guest on Thursday, 12 October 2017 15:59

Wow, so the instructions changed yet again?

I'm just going to wait a couple of month, perhaps by then all of the details will be ironed out.

Wow, so the instructions changed yet again? I'm just going to wait a couple of month, perhaps by then all of the details will be ironed out.
Guest - Guest on Thursday, 12 October 2017 22:28

Well, I can understand that instructions can change. But how are people suppose to know to update their setups if they've already installed this and then never went back to this page?

Well, I can understand that instructions can change. But how are people suppose to know to update their setups if they've already installed this and then never went back to this page?
Guest - mustafa on Friday, 13 October 2017 00:35

Hello

First kernel update and later Cpanel install

Or

First Cpanel install and later kernel update required?

Thanks

Hello First kernel update and later Cpanel install Or First Cpanel install and later kernel update required? Thanks
Guest - mustafa on Saturday, 14 October 2017 22:38

Hello

I installed fresh centos 6.9 and try,

[[email protected]]# kcarectl --set-patch-type free --update
'free' patch type selected
Downloading updates
Patch Level 208 applied, effective kernel version 2.6.32-696.13.2.el6
Updates already downloaded
Kernel is safe


[[email protected]]# nano /etc/sysconfig/kcare/sysctl.conf
NOT FOUND

Any problem?

Hello I installed fresh centos 6.9 and try, [[email protected]]# kcarectl --set-patch-type free --update 'free' patch type selected Downloading updates Patch Level 208 applied, effective kernel version 2.6.32-696.13.2.el6 [b]Updates already downloaded Kernel is safe[/b] [[email protected]]# nano /etc/sysconfig/kcare/sysctl.conf NOT FOUND Any problem?
Guest - sg on Wednesday, 18 October 2017 22:23

same issue here

same issue here
Guest - Kailash on Tuesday, 17 October 2017 12:31

If I am using cPanel with Apache, do I need to use following line:

fs.symlinkown_gid=99

"99" instead of "48"?

Thanks,
Kailash

If I am using cPanel with Apache, do I need to use following line: fs.symlinkown_gid=99 "99" instead of "48"? Thanks, Kailash
Guest - Rodrigo on Thursday, 19 October 2017 19:01

Same issue here²

I created the file manually, is this a problem?

Same issue here² I created the file manually, is this a problem?
Guest - sg on Wednesday, 18 October 2017 22:21

/etc/sysconfig/kcare/sysctl.conf file does not exist

/etc/sysconfig/kcare/sysctl.conf file does not exist
Guest - Esteban on Friday, 20 October 2017 02:39

HI!

1) Thanks.
2) Is this going to be available on further cpanel/whm centos kernel updates?

HI! 1) Thanks. 2) Is this going to be available on further cpanel/whm centos kernel updates?
Guest - mustafa on Friday, 20 October 2017 23:42

Hello

/etc/sysconfig/kcare/sysctl.conf file does not exist

--

I try
sysctl -w fs.enforce_symlinksifowner=1
sysctl -w fs.symlinkown_gid=48

I checked /etc/sysctl.conf

But not added
fs.enforce_symlinksifowner = 1
fs.symlinkown_gid = 48

Hello /etc/sysconfig/kcare/sysctl.conf [b]file does not exist[/b] -- I try sysctl -w fs.enforce_symlinksifowner=1 sysctl -w fs.symlinkown_gid=48 I checked [b]/etc/sysctl.conf[/b] [b]But not added[/b] fs.enforce_symlinksifowner = 1 fs.symlinkown_gid = 48
Guest - Anderson on Wednesday, 25 October 2017 03:48

You can help?

[[email protected]]# kcarectl --set-patch-type free --update
Unknown Kernel (CentOS Linux 3.10.0-693.5.2.el7.x86_64)

[[email protected]]# /usr/bin/kcarectl --update
Unknown Kernel (CentOS Linux 3.10.0-693.5.2.el7.x86_64)

[[email protected]]# kcarectl --info
Unknown kernel (CentOS Linux 3.10.0-693.5.2.el7.x86_64), no patches available

You can help? [[email protected]]# kcarectl --set-patch-type free --update Unknown Kernel (CentOS Linux 3.10.0-693.5.2.el7.x86_64) [[email protected]]# /usr/bin/kcarectl --update Unknown Kernel (CentOS Linux 3.10.0-693.5.2.el7.x86_64) [[email protected]]# kcarectl --info Unknown kernel (CentOS Linux 3.10.0-693.5.2.el7.x86_64), no patches available
Guest - s on Wednesday, 25 October 2017 17:17

Hi I did this and manually created sysctl.conf then ran
fs.enforce_symlinksifowner = 1
fs.symlinkown_gid = 99 (for cpanel servers)

It still says "No symlink protection detected" in WHM security advisor.

Hi I did this and manually created sysctl.conf then ran fs.enforce_symlinksifowner = 1 fs.symlinkown_gid = 99 (for cpanel servers) It still says "No symlink protection detected" in WHM security advisor.
Already Registered? Login Here
Guest
Sunday, 12 July 2020

Captcha Image