1and1 Help Centre Categories

print article

Patch the Remote Vulnerability in Plesk (Linux)

Learn how to patch a security vulnerability in Plesk versions 10.3 and earlier for your Linus server.

Patch the vulnerability if your Linux server has not been already patched or compromised. Check for a Plesk remote vulnerability before proceeding.

Step 1
Update Plesk to version 10.4.x or newer rather than patch your current version of Plesk.
Step 2
Log in to your server via SSH (Secure Shell) and download the Plesk Remote Vulnerability Checker supplied by Parallels using the wget command:
[root@u12345678 ~]# wget http://kb.parallels.com/Attachments/19203/Attachments/plesk_remote_vulnerability_checker.php
--2012-03-07 07:53:24-- http://kb.parallels.com/Attachments/19203/Attachments/plesk_remote_vulnerability_checker.php
Resolving kb.parallels.com... 64.131.90.47
Connecting to kb.parallels.com|64.131.90.47|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2520 (2.5K) [application/octet-stream]
Saving to: plesk_remote_vulnerability_checker.php

100%[=======================================================================================>] 2,520 --.-K/s in 0.04s

2012-03-07 07:53:24 (62.9 KB/s) - plesk_remote_vulnerability_checker.php

[root@u12345678 ~]#
Step 3
Run the Plesk Remote Vulnerability Checker by using the php command to make sure that the patch has not been applied:
[root@u12345678 ~]# php -d safe_mode=0 plesk_remote_vulnerability_checker.php
The patch has not been applied.
[root@u12345678 ~]#
Step 4
If the patch has not been applied, download the patched file from Parallels using the wget http://kb.parallels.com/Attachments/19308/Attachments/plesk_remote_vulnerability_fix_deployer.tar.gz command:
[root@u12345678 ~]# wget http://kb.parallels.com/Attachments/19308/Attachments/plesk_remote_vulnerability_fix_deployer.tar.gz
--2012-03-07 08:02:39-- http://kb.parallels.com/Attachments/19308/Attachments/plesk_remote_vulnerability_fix_deployer.tar.gz
Resolving kb.parallels.com... 64.131.90.47
Connecting to kb.parallels.com|64.131.90.47|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 152096 (149K) [application/octet-stream]
Saving to: plesk_remote_vulnerability_fix_deployer.tar.gz

100%[=======================================================================================>] 152,096 626K/s in 0.2s

2012-03-07 08:02:39 (626 KB/s) - plesk_remote_vulnerability_fix_deployer.tar.gz

[root@u12345678 ~]#
Step 5
Use the tar xfzv plesk_remote_vulnerability_fix_deployer.tar.gz command to unpack the files:
[root@u12345678~]# tar xfzv plesk_remote_vulnerability_fix_deployer.tar.gz          
8.1.x/
8.1.x/common_func.php3
8.1.x/help.php
8.1.x/Agent.php
8.2.x/
8.2.x/common_func.php3
8.2.x/help.php
8.2.x/Agent.php
8.3.x/
8.3.x/common_func.php3
8.3.x/AgentsSubDomain.php
8.3.x/help.php
8.3.x/Agent.php

...

10.3.x/
10.3.x/SecretKey.php
10.3.x/common_func.php3
10.3.x/help.php
10.3.x/AbstractAgentSubDomain.php
10.4.x/common_func.php3
10.4.x/AgentSubDomain.php
10.4.x/help.php
plesk_remote_vulnerability_fix_deployer.tar.gz
[root@u12345678 ~]#
Step 6
Now use the php -d safe_mode=0 plesk_remote_vulnerability_fix_deployer.php command in order to apply the patch. You should receive a notice that The patch has been successfully applied as confirmation that the vulnerability has been patched.
[root@u12345678~]# php -d safe_mode=0 plesk_remote_vulnerability_fix_deployer.php
Copying "8.2.x/help.php" to "/usr/local/psa/admin/htdocs/help.php"
Copying "8.2.x/common_func.php3" to "/usr/local/psa/admin/plib/common_func.php3"
Copying "8.2.x/Agent.php" to "/usr/local/psa/admin/plib/api-rpc/Agent.php"
Restarting Plesk The patch has been successfully applied.[root@u12345678~]#

Now that you have cleaned your system, you must change all Plesk passwords. Parallels provides you with the necessary instructions and script on the Plesk Mass Password Reset Script page.

For additional information, you may want to reference: