Audit de notre serveur web wordpress
1-Comprendre ce qu’il s’est passé
Analyse de logs
- vérifications de logs Apache et SSH
Vérification de l’ensemble des serveurs OVH
- Analyse des fichiers modifiés
- Monitoring ovh : augmentation importante du trafic entrant et sortant depuis quelques jours
- Vérifier si le serveur ns2 fonctionne encore.
- Savoir comment se comporte le serveur (données rajoutées…)
Vérifier le trafic entrant et sortant
qu’est-ce qu’on peut installer pour monitorer du trafic ?
le stockage (taille du stockage, nom du fichier daté du 09/05/22 )
vérifier l’activité des machines.
éplucher les stats et les logs de webmin
- se connecter sur ns2 (voir doc multisite) : faire netstat -natp pour retrouver l’historique des connections ssh sur le serveur
=> Plusieurs connexions inconnues en ssh sur notre serveur (provenant de Chine, Etats-Unis)
=> Confirmation d’intrusion
Hypothèses
- Le serveur est utilisé pour héberger des vidéos/images illégales (ex : pédopornographie) = prévenir l’ANSSI
- Le serveur est utilisé comme un bot pour faire des attaques DDOS
- Le serveur est utilisé comme hébergement : site, minage…
Interne : très technique, qu’est-ce qui s’est passé, qu’est-ce qu’on a fait, qu’est-ce qu’on rajoute ?
Externe : expliquer, rassurer, peu technique
2 – Rétablir les services
- Récupérer un accès aux portfolios
- Réinstall WP
– Plugins /thèmes
Améliorations
De suite :
- Plugins sécurité : Wordfence/iThemes Security
- Filtrage
- Mises à jour
- Purge
A terme :
- Monitoring
- Backups
- Backups : Updraft Plus
- Suivre des newsletters sécurité
- Dockerisation
- Communication
3 – Sécuriser
- auditer le système
- Réparer ou reconstruire ?
- Tester
- Supervision
- Backup
Ce que l’on voit selon les cas :
Perte d’accès au panel administrateur
Doc Projet Multisite : https://docs.google.com/document/d/1oBJN4NmnGK3Ji4UMikOuB6jkjZijOSMkZye7IEWs1C8/edit#heading=h.8qbfmmqmy4i0
Doc Vue d’ensemble :
https://docs.google.com/presentation/d/1apGR0QfTM73Qziz-83sQtUrPSFDZ6UcU/edit#slide=id.p1
Différentes pistes :
Actions :
- install fail2ban
- Logs bandwith on
- Intervention 15 mai 2022
- Backuper fichiers du site et base
- Fichiers
- sudo zip -r /var/www/nicolass.zip /var/www/nicolass
Les données dans le dossier à votre nom sont zippée dans un fichier zip dans /var/www - Base de données
- Aller sur WebMIN
- sudo zip -r /var/www/nicolass.zip /var/www/nicolass
- Fichiers
- Backuper fichiers du site et base
- Effacer tous les fichiers existants sauf wp-content
- sudo rm -r /var/www/loucasr/wordpress/wp-admin
- Effacer tous les fichiers existants sauf wp-content
- aller dans wp-content et supprimer
- Réinstaller les fichiers
- Télécharger WP même version
- On va télécharger et dézipper le fichier depuis /var/www/mondossier
- sudo curl -O https://wordpress.org/wordpress-5.9.3.tar.gz
- sudo tar -xvf wordpress-5.9.3.tar.gz
- sudo rm wordpress-5.9.3.tar.gz
- sudo chown -R www-data:www-data /var/www/eddyp/wordpress
- sudo find /var/www/eddyp/wordpress/ -type d -exec chmod 750 {} \;
- sudo find /var/www/eddyp/wordpress/ -type f -exec chmod 640 {} \;
- Régler le problème de Forbidden access
- afficher les fichiers cachés dans WinSCP
- effacer les fichiers .htaccess et le remplacer par le code originel
Renommer le fichier .htaccess
- sudo mv /var/www/nicolass/.htaccess /var/www/nicolasssudo /.htaccess.sio
- Le modifier pour le remettre d’origine :
- sudo nano .htaccess.sio
Puis coller :
cd wor# BEGIN WordPress
RewriteEngine On
RewriteRule .* – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
- Puis ajouter dans /etc/apache2/sites-available/nicolass.conf
- Et aussi dans /etc/apache2/sites-available/nicolass-le-ssl.conf
AccessFileName .htaccess.sio
- Vérifier le fonctionnement
- Post
- Pour renforcer la sécurité, : itheme security, sucuri security et wordfence
- Mettre en place un système de backup
- Mettre en place un système de monitoring
- Mettre en place version control et staging
Sauvegarde de toutes les bases de données :
- sudo mysqldump -u root -p –all-databases > alldatabases.sql
Restauration de la sauvegarde :
- mysql -u root -p < all_databases.sql
Sauvegarde de www contenant tous les sites :
- cd /var/www
- sudo tar cvf www.tar www/
Laisser un commentaire