DedeCms, en tant que l'un des CMS les plus utilisés en Chine, souffre souvent de vulnérabilités. Chaque vulnérabilité a un impact énorme, allant des publicités et pop-ups au serveur devenant une machine à viande, la perte de données précieuses. Alors, existe-t-il un moyen d'améliorer la sécurité de DedeCms ?
Regardons d'abord les raisons pour lesquelles les programmes PHP ont souvent des failles. En fait, cela est déterminé par le programme PHP lui-même.
PHP a une faible réutilisabilité, ce qui entraîne une structure de programme complexe et un code redondant partout, ce qui facilite non seulement la génération de vulnérabilités, mais affecte également la réparation des vulnérabilités
Les programmes PHP sont faciles à utiliser ; commencez avec et sont généralement open source, permettant à de nombreuses personnes de lire directement le code et de rechercher des vulnérabilités de cette manière, un flux constant de vulnérabilités est découvert, réparé et découvert...
Le système PHP populaire actuel est habitué à utiliser des fichiers comme cache, ce qui nécessite d'ouvrir l'autorisation d'écriture du fichier, ce qui devient sans aucun doute la faiblesse du système PHP.
À l'heure actuelle, en plus des attaques par "injection" qui se produisent rarement, la plupart des attaques actuelles sur les systèmes PHP proviennent d'une certaine vulnérabilité du système, en insérant un cheval de Troie dans un fichier inscriptible pour obtenir le fichier. coquille.
La sécurité du site Web a toujours été la coopération de la configuration du serveur, du contrôle des autorisations de fichiers et du programme du site Web. Aujourd'hui, nous examinerons principalement comment améliorer le programme du site Web DedeCms pour améliorer la sécurité. "Les fichiers exécutables ne peuvent pas être modifiés et les fichiers inscriptibles ne sont pas autorisés à être consultés." C'est le principe fondamental du contrôle des autorisations des sites Web. Les programmes de sites Web peuvent effectuer beaucoup de travail dans "l'accès aux fichiers inscriptibles n'est pas autorisé". .
Prenons DedeCMS comme exemple. Nous pouvons le protéger des manières suivantes.
1. Renommez le répertoire de données sous le répertoire racine, ou déplacez-le en dehors du répertoire du site Web
Le répertoire de données est l'endroit où vivent la plupart des méchants et des malfaiteurs. et le système doit souvent y accéder. Écrivez des données dans ce répertoire, et n'importe quel fichier de ce répertoire est accessible via une URL. Par conséquent, si le navigateur ne peut pas accéder aux fichiers qu'il contient, vous devez renommer ce répertoire ou le déplacer en dehors du répertoire. du site Internet. Même si quelqu'un écrit un cheval de Troie dans un fichier via une vulnérabilité, il ne peut pas trouver le chemin du fichier où se trouve le cheval de Troie et ne peut pas poursuivre l'attaque. Parce que le programme DedeCMS est déraisonnable, l'action de renommer le répertoire de données sera relativement importante. Les méthodes spécifiques sont les suivantes :
a. Migrez le contenu public vers le répertoire pub (ou d'autres répertoires personnalisés), tel que. comme rss, sitemap, js, enum, etc. Cette étape nécessite de déplacer les dossiers et de modifier les chemins de génération de ces fichiers
b. Modifier le répertoire du programme référencé
Rechercher et remplacer "DEDEDATA. "/data/" par "DEDEDATA ."/", remplacez environ cinquante ou soixante places ;
Recherchez et remplacez "DEDEDATA.'/data/" par "DEDEDATA.'/", remplacez environ cinquante ou soixante places ;
Recherchez "/data/", selon la situation spécifique, le chemin modifié est similaire à : "$DEDEDATA."/" (notez que le répertoire d'inclusion et le répertoire de gestion en arrière-plan ont tous deux des dossiers de données et n'ont pas besoin de être modifié);
c. Modifiez le nom du dossier de données et modifiez la valeur de "DEDEDATA" dans le fichier include/common.inc.php, puis modifiez le répertoire de cache du modèle dans les paramètres système en arrière-plan " Parameter Settings" pour terminer la modification. Vous pouvez également suivre cette étape pour changer le nom du dossier de données à l'avenir. .
2. Renommez le répertoire de gestion "dede" et renforcez-le
Si l'arrière-plan est masqué, même si quelqu'un d'autre obtient votre compte administrateur et votre mot de passe, il le fera. Il n'y a aucun moyen de se connecter.
Dans /dede/config.php, recherchez le ligne suivante :
Ce qui suit est le contenu cité :
//检验用户登录状态 $cuserLogin = new userLogin(); if($cuserLogin->getUserID()==-1) { header("location:login.php?gotopage=".urlencode($dedeNowurl)); }
Apprentissage recommandé : dedecms use Tutorial
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!