🔐Correction d'une vulnérabilité
Correction d'une vulnérabilité sur un plugin Wordpress, et renforcement de la configuration du site
Installation de la VM :
Nous partons sur une VM de 32 Go d'espace totale. Voici les points de montage LVM à monter :
/; = 5 Go
/var; = 10 Go
/var/log; = 2 Go
/var/tmp; = 5 Go
/tmp; = 5 Go
/home; = 2 Go
/srv/www; = 2 GoPour /var/log et /srv/www, bien attention à ajouter les options de montage suivantes :
nosuid : ignore complètement les bits setuid et setgid
nodev : ignore les fichiers de périphériques
noexec : interdit l'exécution de tout programme sur ce point de montage
Après le partitionnement :
root@ubuntu-server:/etc/apache2/sites-available# df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 867M 1.6M 866M 1% /run
/dev/mapper/myVolume-ROOT 7.8G 4.8G 2.7G 65% /
tmpfs 4.3G 0 4.3G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
/dev/mapper/myVolume-TMP 4.9G 740K 4.6G 1% /tmp
/dev/mapper/myVolume-HOME 2.0G 226M 1.6G 13% /home
/dev/mapper/myVolume-VAR 9.8G 1.5G 7.8G 17% /var
/dev/mapper/myVolume-lv--0 2.0G 27M 1.8G 2% /srv/www
/dev/mapper/myVolume-VAR--LOG
2.0G 37M 1.8G 3% /var/log
/dev/mapper/myVolume-VAR--TMP
4.9G 112K 4.6G 1% /var/tmp
tmpfs 867M 140K 867M 1% /run/user/1000
root@ubuntu-server:/etc/apache2/sites-available# lvdisplay
--- Logical volume ---
LV Path /dev/myVolume/ROOT
LV Name ROOT
VG Name myVolume
LV UUID 7XfPcV-U97H-Mfmy-aI5O-4e2g-AjFM-tLX2gC
LV Write Access read/write
LV Creation host, time ubuntu-server, 2023-03-14 21:47:02 +0000
LV Status available
# open 1
LV Size 8.00 GiB
Current LE 2048
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
--- Logical volume ---
LV Path /dev/myVolume/VAR
LV Name VAR
VG Name myVolume
LV UUID LS2BOd-1qal-g0iW-ouvv-TBVz-cfcV-cgAVU3
LV Write Access read/write
LV Creation host, time ubuntu-server, 2023-03-14 21:47:02 +0000
LV Status available
# open 1
LV Size 10.00 GiB
Current LE 2560
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1
--- Logical volume ---
LV Path /dev/myVolume/VAR-LOG
LV Name VAR-LOG
VG Name myVolume
LV UUID 5BjYH3-u3yJ-2VlY-xO7
[...]
Les partitions sont alors complètes et prêtes à l'emploi.
Installation du serveur apache :
A l'aide du tutoriel :
On configure ensuite le wordpress :
Puis dans le dossier de configuration d'apache :
Reste maintenant à activer le module Wordpress :
Il faut maintenant configurer la base de données :
Permettre l'installation du plugin :
Restreindre l'execution de code php dans le répertoire "/uploads" :
Interdire l'exécution de code dans le panel admin de wordpress :

Ainsi que dans Apache :

Et les secrets de l'application. Les valeurs sont aléatoires mais il s'agit de test :

Enfin, affiner les permissions :
Pour le ".htaccess" :

/wp-content :

wp-content/plugins/* :

[...]
wp-content/themes/* :

Patchage de la faille :
Un contrôle tout simple d'extension nous permet de patcher la faille :


Pas de reverse shell en vue, ni de fichiers en cache :

Last updated