Pour sécuriser votre site Joomla!, l’un des moyens est de configurer le filtre de texte. De quoi s’agit-il exactement ? Les hackers et petits escrocs du web, mais aussi les étudiants en informatique – à qui on a donné comme devoir de hacker un site – cherche à s’introduire sur les sites pour y implanter des publicités, des virus dans les liens et dossiers de téléchargement. Grâce aux filtres de textes, vous allez pouvoir définir pour chaque type d’utilisateurs du site (Super-utilisateurs, Administrateurs, Gestionnaires, Invités, etc) le type de texte que les rédacteurs et commentateurs vont pouvoir enregistrer dans la base de données de votre site.

A noter qu’il est préférable de configurer le filtre de texte en même temps que la configuration générale du site afin de ne pas l’oublier.

Configurer le filtre de texte

Dans le menu Système, sélectionnez l’option Configuration. Cliquez sur l’onglet Filtres de texte. Vous obtenez l’écran suivant :

Le filtre de texte de Joomla!

 

Comprendre que le texte c’est du code HTML dans un site Web

Par exemple, pour que vos visiteurs puissent laisser un commentaire, vous mettez à leur disposition un champ dédié en fin d’article dans lequel ils peuvent écrire et mettre en forme leur texte avec des balises HTML (<h1>, <strong>, <em>, etc.). Si vous paramétrez un éditeur de texte pour écrire les commentaires, les rédacteurs de commentaires saisissent leur texte et sélectionnent ensuite les parties de contenu qu’ils veulent mettre en gras, en italique, etc. C’est l’éditeur qui insérera les balises.

  • balise h : quand vous choisissez de mettre un texte en titre, dans le code, il est borné par les balises h – exemple : le titre d’un article est un titre de niveau H1  :
<h1>Comment écrire en html dans Joomla! ?</h1>
  • balise p : pour écrire un paragraphe :

<p>Comment écrire en html dans Joomla! ?</p>

  • balise strong : pour mettre dans le paragraphe l’expression “en html” en gras :
<p>Comment écrire <strong>en html</strong> dans Joomla! ?</p>
  • balise texte en italique : pour mettre dans le paragraphe l’expression “en html” en italique :
<p>Comment écrire <em>en html</em> dans Joomla! ?</p>
  • etc.

Interdire la possibilité d’introduire des liens hypertextes et le téléchargement de données dans votre site

Avec le filtre de texte, vous pouvez leur interdire certaines balises et attributs HTML qui pourraient perturber votre site, voire en faire un contenu dangereux pour vos visiteurs et vous.

Comme vous pouvez le constatez sur la copie d’écran en début de cette partie ou en vous rendant sur la page Système > Configuration > Onglet Filtre de texte, Joomla! vous propose un paramétrage par défaut de ces filtres.

Par exemple, dans notre copie d’écran, le groupe Public n’a pas l’autorisation de saisir du HTML.

Vous noterez aussi que cet écran est déjà pré-paramétré.Ces paramétrages ont été réalisés par l’équipe Joomla! pour optimiser la sécurité avec cette fonctionnalité pour les débutants. Vous pouvez donc laisser ainsi cette configuration, la rendre plus stricte ou plus laxiste selon votre stratégie et votre connaissance en développement et code.

Vous remarquerez que pour chaque groupe, vous pouvez opter pour une stratégie différente :

  • liste noire par défaut,
  • liste noire personnalisée,
  • liste blanche,
  • pas de HTML, aucun filtre…

Une liste noire est une liste d’exclusion. Une liste blanche est une liste d’autorisation.

L’équipe Joomla! a prédéfini une Liste Noire Par Défaut qui interdit les balises ‘applet’, ‘body’, ‘bgsound’, ‘base’, ‘basefont’, ’embed’, ‘frame’, ‘frameset’, ‘head’, ‘html’, ‘id’, ‘iframe’, ‘ilayer’, ‘layer’, ‘link’, ‘meta’, ‘name’, ‘object’, ‘script’, ‘style’, ‘title’, ‘xml’ et les attributs ‘action’, ‘background’, ‘codebase’, ‘dynsrc’, ‘lowsrc’.

Si cette définition des restrictions ne vous convient pas, vous pouvez constituer vous-même votre liste noire (termes à exclure) ou votre liste blanche (termes autorisés), interdire totalement le HTML ou au contraire, configurer “aucun filtre”.

Précautions à prendre vis-à-vis des internautes

Ce filtrage de texte est opéré au moment de l’enregistrement d’un contenu (article, page, commentaire, etc.). Ainsi, le texte laissé par un commentateur peut se retrouver tronqué. Il est donc important de ne pas oublier de mentionner aux internautes qui souhaitent vous laisser un commentaire que certains termes sont interdits sous peine que leur texte soit coupé.



Pour aller plus loin : 

Le guide officiel pour les débutant Joomla!