La sécurité et Joomla!



Documents pareils
La sécurité et Joomla!

Améliorer la sécurité de son site web

Découverte d aesecure. Par Christophe Avonture, développeur d aesecure

Manuel d'installation de Joomla 1.7

CAHIER DES CHARGES SITE WEB : Steve Mind Magicien Close-up & Mentaliste - 1 -

Sommaire. 1. Présentation de WordPress. 2. Hébergement et installation. 3. Prise en main, ajouter des contenus

Publier un site Web malgré l'insécurité d'internet. Petit Guide de Survie adapté à WordPress

A.-M. Cubat Mise à jour de PMB Passer à une version plus récente du logiciel Page 1 Source :

Rationalité et irrationalité dans le gestion des risques informatiques

Initiation ++ pour le

MANUEL INSTALLATION. GANESHA version 4. Editeur Anéma SAS Département Développement

Sommaire. 1 Introduction Présentation du logiciel de commerce électronique 23

FTP : File TRansfer Protocol => permets d envoyer des gros fichiers sur un serveur (ou de télécharger depuis le serveur)

Blogging et sites de contenu. Comment créer un site de contenu et l'animer

Remote Cookies Stealing SIWAR JENHANI (RT4) SOUHIR FARES (RT4)

Préparation d un serveur Apache pour Zend Framework

MANUEL WORDPRESS. Objectif: Refonte d un site web sous Wordpress I PRE-REQUIS: 1 / Créer un backup (sauvegarde) du site:

Joomla! Création et administration d'un site web - Version numérique

Comment mettre en ligne un site WordPress local

Joomla e édition. et VirtueMart 2 Réussir sa boutique en ligne. Préface de Max Milbers. Valérie Isaksen. Thierry Tardif

Installer Joomla Pearson France Joomla! Le guide officiel Jennifer Marriott, Elin Waring

Mise en place d un serveur Proxy sous Ubuntu / Debian

Transfert d un site local vers un serveur. NPDS REvolution 13. Rédaction : Axel Relecture : Dev & Jpb

ANSSI PROCEDURES DE REPORTING DES INCIDENTS AVEC LE CIRT RÔLES DES PARTIES PRENANTES 15/02/2014. SEMINAIRE DE Joly Hôtel

Avira System Speedup. Guide

Manuel du composant CKForms Version 1.3.2

Maintenance et gestion approfondie des Systèmes d exploitation Master 2 SILI. Année universitaire David Genest

Les GPO 2012 server R2 (appliqués à Terminal Serveur Edition)

COURS 5 Mettre son site en ligne! Exporter son site avec WordPress Duplicator Installer un logiciel FTP Faire le suivi des visites de son site avec

CRÉATION D UN SITE WEB

Installation de Joomla avec Filezilla

BAP E Gestionnaire de parc informatique et télécommunications MI2 / MI3 Ouverts au titre de 2010 Arrêté du 7/04/10 - J.

Optimisation de son site web. v1 23/05/2014

Instructions Mozilla Thunderbird Page 1

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

PHP CLÉS EN MAIN. 76 scripts efficaces pour enrichir vos sites web. par William Steinmetz et Brian Ward

Guide d installation BiBOARD

Sauvegarder la base de données de Drupal avec le module Backup and Migrate

Fiche Technique. MAJ le30/03/2011

Sécurité des applications web. Daniel Boteanu

Installation de GFI MailSecurity en mode passerelle

Sécurité des blogs et des sites PHP : Protéger Wordpress et les sites similaires contre les pirates

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt

Désinfecte les réseaux lorsqu ils s embrasent

Quel serveur pour vous?

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

Réseau - Sécurité - Métrologie - Data Center. Le leader du marché allemand des UTM débarque en France avec des arguments forts!

WORKSHOP OBIEE 11g (version ) PRE-REQUIS:

How to Login to Career Page

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

Introduction. Qu est-ce que WordPress? Pourquoi choisir WordPress?

Lieberman Software Corporation

Mettre à jour PrestaShop

Projet Administration Réseaux

L art d ordonnancer. avec JobScheduler. François BAYART

LA GOUVERNANCE, OU COMMENT RAPPROCHER LES ÉQUIPES DE DÉVELOPPEMENT ET D INFRASTRUCTURE

Manuel Utilisateur MISE A JOUR DU CLIENT SOFIE VERS LA VERSION 5. v0.99

Installer ADONIS:CE. ADONIS:Community Edition 2.0 Français. Prérequis et procédure pas à pas. BOC Information Systems 5 rue du Helder, Paris

Construction d un Site Internet Dynamique avec Joomla René-Yves Hervé, Ph.D.

Installation de GFI MailEssentials


Note : Ce tutoriel a été réalisé sur GNU/Linux (Ubuntu) avec un serveur LAMP installé en local.

Plateforme PAYZEN. Intégration du module de paiement pour la plateforme Magento version 1.3.x.x. Paiement en plusieurs fois. Version 1.

ENDPOINT SECURITY FOR MAC BY BITDEFENDER

OWASP Open Web Application Security Project. Jean-Marc Robert Génie logiciel et des TI

Présentation de Ocloud

Micro-ordinateurs, informations, idées, trucs et astuces utiliser le Bureau à distance

Le projet Joomla. Histoire de Joomla

mon site web via WordPress

L installation a quelque peu changée depuis les derniers tutos, voici une actualisation.

Service Déposant: Procédure d installation. Page 1. Service déposant. Procédure d installation Version 2.3

Guide d utilisation. Table des matières. Mutualisé : guide utilisation FileZilla

sécurisé de l ENSMM Accès au serveur FTP - Microsoft Windows 7 École Nationale Supérieure de Mécanique et des Microtechniques

FileMaker Server 14. Guide de démarrage

Contrôle parental NOTE AUX PARENTS. Vita avant d autoriser votre enfant à jouer. Régler le contrôle parental sur le système PlayStation

Guide d'installation d'esprit Version 2014 R2

10 bonnes pratiques de sécurité dans Microsoft SharePoint

Choix du Logiciel WORDPRESS

Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.

Internet : Naviguer en toute sérénité

Le nettoyage et l optimisation de son PC

Dans nos locaux au 98 Route de Sauve NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

Procédure d installation :

Dans cette Unité, nous allons examiner

Tutoriel QSOS. Version /02/2013

Sécurité des systèmes d exploitation

QUESTIONS / REPONSES ESET Smart Security ESET NOD32 Antivirus V.3

Google Merchant Center

Protection pour site web Sucuri d HostPapa

Tutoriel de formation SurveyMonkey

Acronymes et abréviations. Acronymes / Abbréviations. Signification

3 Octobre Les Communautés MS

Manuel de l utilisateur

Certificats de signature de code (CodeSigning)

1. En moyenne, un ordinateur sans protection connecté à Internet est infecté après... quelques minutes heures 3 jours plus d une semaine

Transcription:

Document en cours d élaboration Août 2013 La sécurité et Joomla! Comment sécuriser son site? AllEvents, a Joomla Component by Christophe Avonture 1

Qui suis-je? Développeur de l extension AllEvents; gestionnaire d évènements pour Joomla! Modérateur Joomla!France Membre actif de la JUG! Wallonie Christophe Avonture /fr/qui-suis-je.html 2

Objectifs de cette présentation Vous trouverez dans cette présentation quelques conseils que tout un chacun peut appliquer et ne requérant que peu de connaissances techniques. Cette documentation ne se veut nullement exhaustive; juste être un recueil de trucs & astuces et de bonnes pratiques du web. Il s agit de partager mon expérience personnelle et des outils que j ai testé, le choix des outils proposés n est donc pas exhaustif ni qualitatif. N hésitez pas à me suggérer vos propres trucs : /fr/forum/articles/571 3

Prérequis 4

Protéger votre ordinateur «There is no point in following all the best Joomla! security advice you can find if you don t take the simple step of securing your own personal computer with up to date anti-virus software.» Brian Teeman, Co-founder Joomla! 5

Mots de passe 1/2 Planifier d oublier vos mots de passe : utilisez SuperGenPass qui permet de générer à la volée un mot de passe unique par sites web. Configurer SuperGenPass pour générer un mot de 20 caractères. Modifiez tous vos mots de passes Web par ceux de SuperGenPass. Au besoin, conservez une trace des mots de passe dans LastPass. Approfondir : «Et vous, c est quoi votre couple login-mot de passe?» 6

Mots de passe 2/2 Utilisez un mot de passe différent pour chaque sites web mais aussi chaque utilisateurs, chaque outil (FTP, ) et chaque base de données 7

Joomla! est-il à jour? Quelque soit la version majeure de Joomla! que vous utilisez (1.5, 2.5, ), songez toujours à installer la dernière mise-à-jour. Ainsi, ne restez pas avec un J1.5.22 alors que J1.5.26 est disponible. Si votre version majeure de Joomla! est ancienne, prévoyez dans votre agenda le temps nécessaire pour faire une mise-à-niveau. 8

Extensions, modules, Limitez le nombre au maximum; désinstallez tout qui n est pas utilisé. Mettez à jour vos extensions, plugins et modules. Consultez régulièrement les sites de leurs auteurs. Inscrivez-vous aux fils RSS. N oubliez pas non plus de mettre à jour votre template dès lors qu une nouvelle version est disponible. Utilisez cupdater pour vous y aider; il s agit d un plugin qui vous envoie un email pour vous avertir qu une mise-à-jour est disponible. 9

Configuration de votre site 10

Compte admin Veuillez à ne jamais utiliser un compte nommé «admin». Si vous en avez un, modifier son statut de «super admin» à «public» et désactivez-le. Limitez au maximum le nombre de comptes admin (super-admin). Apprenez à gérer les ACLs afin que les accès soient strictement ceux requis. 11

Lutter contre le spam Marre des inscriptions fantômes? Installez Community Builder et, dans les paramètres du gestionnaire des utilisateurs natifs de Joomla!, désactivez les inscriptions. Dans les paramètres de CB, activez les inscriptions indépendamment du paramètre global du site. Au besoin, achetez et installer le plugin CB Captcha. 12

Installation d extensions Jamais sans les avoir testé en local! Faites un backup de votre site auparavant Vérifier sur la Vulnerable Extensions List si l extension n est pas mentionnée. Limitez au maximum le nombre d extensions installées sur votre site de production. 13

Nettoyez, encore et toujours Supprimez régulièrement les extensions, modules et plugins que vous n utilisez plus. Supprimez les templates que vous n utilisez pas. Nettoyez régulièrement le dossier /tmp. Une tâche dans le crontab de votre hébergeur peut le faire automatiquement. 14

meta name="generator" Certains scripts tentent de repérer les sites Joomla!. Une des techniques est d analyser le code de la page à la recherche du "generator. En supprimant ce code, vous rendez donc un peu plus difficile de cibler votre site. Pour cela, éditer le fichier index.php de votre template et ajouter la ligne ci-dessous après la génération des metas de Joomla. <?php JFactory::getDocument()->setGenerator('');?> Si vraiment, vous n y arrivez pas, utilisez le plugin Generator Meta Tag for Joomla 15

Firefox - Addon Installez le plugin «Joomla-version-check» pour Firefox : si votre numéro de version est dévoilé, votre sécurité n est pas bonne. Interdisez l accès aux fichiers.xml de l administration. 16

Activez le mode SEF Lorsque vous activez le mode SEF, votre site n affiche plus des urls telles que index.php?option=com_user&view=login& qui donnent trop d informations et qui invitent à tenter de modifier au petit bonheur la chance les valeurs des paramètres. 17

Masquez un maximum d informations Moins l attaquant en sait sur votre site, plus difficile sera pour lui de cibler une attaque fructueuse. Ne laissez donc pas des fichiers.php qui pourraient p.ex. afficher un phpinfo() (parfois de tels fichiers sont créés par l hébergeur). Supprimez ces fichiers si vous en avez. 18

Outils 19

FTP De préférence, paramétrez vos connexions en SFTP (ou SSH). Si vous utilisez FileZilla, il est impératif de protéger l accès aux fichiers.xml. Cet article propose une solution : /fr/joomla/item/372-filezilla_secured 20

Akeeba Backup Si ce n est pas encore fait, installez sans tarder Akeeba Backup et faites un backup de votre site. Copiez régulièrement les fichiers.jpa vers un autre endroit (votre disque dur p.ex.) et testez-la sauvegarde afin de vous assurer qu elle est correcte. Sachez que la version Pro de Akeeba Backup permet de sauvegarder dans le cloud (Dropbox p.ex.) 21

Akeeba Admin Tools Admin Tools facilite la mise en œuvre de la protection de votre site. La version gratuite permet p.ex. de protéger votre dossier /administrator par un couple identifiant / mot de passe. Tutoriel video Si vous n aimez pas ce type de protection, vous pouvez opter pour JL Secure MySite qui ajoute une clef=valeur à l appel à l administration. Remarque : vous pouvez aussi générer manuellement un fichier.htpasswd (voir http://aspirine.org/htpasswd.html) 22

CrawlProtect CrawlProtect est un logiciel gratuit et externe à Joomla! et qui ajoute une couche de protection aux pages web de Joomla! CrawlProtect bloque un grand nombre d attaques type injection de code / SQL. Il ajoute un grand nombre de rules au fichier.htaccess ainsi que vous propose d ajouter une ligne de code dans le fichier index.php de votre site pour assurer le suivi des tentatives d attaque. 23

EyeSite EyeSite est un composant backend qui va stocker dans la base de données de votre site le CRC de chaque fichier présent sur le site à un moment T. Une seconde comparaison à un instant T2 permet alors de comparer la liste des fichiers ayant été modifiés. 24

jhackguard jhackguard est un plugin gratuit développé par l hébergeur SiteGroud.com et qui permet, à l instar de CrawlProtect, de protéger son site contre des tentatives d injection, des «remote URL/File inclusions», «remote code execution», 25

Outils de supervision JMonitoring (gratuit) permet de garder un œil sur tous vos sites Joomla! Watchful.li (payant) propose un dashboard online qui reprend tous vos sites et permets, entre autre, de les mettre à jour ainsi que de planifier l exécution de vos backups. 26

chmod 27

chmod - autres Le chmod d un dossier doit être 755 et celui d un fichier est généralement 644. Passez le chmod à 555 de votre dossier /templates/*yourtemplate* pour rendre impossible d écrire et créer un fichier dans ce dossier très sensible. Ne mettez jamais un chmod égal à 777. La version gratuite de Admin Tools permet de gérer facilement les chmods depuis Joomla!. CrawlProtect le permet aussi depuis son interface web. 28

configuration.php Changer le chmod du fichier en 444 afin que personne ne puisse écrire dedans. Si vous devez modifier la configuration générale de votre site, changez le chmod en 644 puis remettez 444 après votre changement. 29

index.php Ce fichier doit toujours être en chmod 444. Pensez que vous avez deux index.php : celui présent dans la racine de votre site et celui qui correspond à votre template utilisé (dans le dossier /templates) Si vous devez modifier le fichier, changer le chmod en 644 puis remettez 444 après vos changements. 30

.htaccess 31

.htaccess L auteur de Akeeba Backup et Admin Tools, Nicholas K. Dionysopoulos, propose un fichier.htaccess optimisé et apportant une excellente couche de sécurisation : https://github.com/nikosdion/master-htaccess Only a Ninja can kill an another Ninja : http://magazine.joomla.org/issues/issue-oct-2010/item/214-only-a-ninjacan-kill-another-ninja 32

.htaccess Interdire l accès aux fichiers xml Ne révèlez pas trop, interdisez que l on puisse consulter les fichiers.xml de votre administration. Cet article décrit comment faire : /fr/joomla/item/464-protection-xml.html 33

.htaccess Interdisez l exécution de code php Bloquez l exécution de code.php depuis certains dossiers où ce type de code n est pas supposé se trouver. Cet article en parle : /fr/joomla/item/468-no-php-allowed.html 34

.htaccess - Fingerprint Interdisez l utilisation de?tp=1,?templage=nom_template ou encore?tmpl=offile Ajoutez dans votre.htaccess si nécessaire ces lignes : RewriteCond %{QUERY_STRING} (& %3F){1,1}tp= [OR] RewriteCond %{QUERY_STRING} (& %3F){1,1}template= [OR] RewriteCond %{QUERY_STRING} (& %3F){1,1}tmpl= [NC] RewriteRule ^(.*)$ - [R=404,L] http://magazine.joomla.org/issues/issue-oct-2010/item/214-only-a-ninja-cankill-another-ninja 35

Trop tard, votre site a été hacké 36

Trop tard 1/2? Sucuri SiteCheck permet de scanner votre site web à la recherche de malware. Prenez connaissance de l article «Your site has been hacked or defaced» sur doc.joomla.org Nicholas K. Dionysopoulos, l auteur de Akeeba, explique donne aussi quelques conseils «Unhacking your site» 37

Trop tard 2/2? Réinitialisez le mot de passe de l admin (kiwik.net) et/ou créez un nouveau compte (kiwik.net) Si n avez pas accès à phpmyadmin mais à votre FTP, utilisez «Reset Admin Password» 38

Lectures additionnelles 39

Lectures additionnelles Forum Sécurité Joomla France Sécurité Joomla Aide-Joomla.com Votre site Joomla! est-il bien sécurisé? Joomla Security Checklist Fortifying your Joomla! Website Joomla Security Feed Simple Security Guide, part 1 & part 2 How to keep your Joomla-based website secure? Top 10 Stupidest Administrator Tricks 40

Questions, suggestions, partage d idées, contribution, /fr/forum/articles/571 41