DedeCms は、中国で最も広く使用されている CMS の 1 つであるため、多くの場合脆弱性があります。すべての脆弱性は、広告やポップアップ ボックスでハングアップするものから、サーバーをミート マシンにするものまで、多大な影響を及ぼします。貴重なデータが失われます。では、DedeCms のセキュリティを向上させる方法はあるのでしょうか?
まず、PHP プログラムに抜け穴がよくある理由を見てみましょう。実際、それは PHP プログラム自体によって決まります。
PHP は再利用性が低いため、プログラム構造が複雑になり、随所にコードが冗長になります。これにより、脆弱性が発生しやすくなるだけでなく、脆弱性の修復にも影響を及ぼします。
PHP プログラムは、簡単に実行できます。で始められ、一般にオープンソースであるため、多くの人がコードを直接読んで脆弱性を検索できます。このようにして、脆弱性が次々と発見され、修復され、発見されます...
現在一般的な PHP システムは、ファイルをキャッシュとして使用することに慣れており、オープン ファイルへの書き込み権限が必要になります。これが間違いなく PHP システムの弱点になります。
PHP システムに対する現在の攻撃手法は、まれに出現する「インジェクション」攻撃に加え、システムの特定の脆弱性を利用し、書き込み可能なファイルに文型トロイの木馬を挿入する攻撃がほとんどです。貝殻を入手するため。
Web サイトのセキュリティは、常にサーバー構成、ファイル許可制御、Web サイト プログラムの組み合わせで構成されてきましたが、今日は主に DedeCms Web サイト プログラムを改善することでセキュリティを向上させる方法について説明します。 「実行可能ファイルの変更は許可されておらず、書き込み可能ファイルへのアクセスは許可されていません。」これが Web サイトのアクセス許可制御の基本原則です。Web サイト プログラムは、「書き込み可能ファイルへのアクセスは許可されていない」という条件下で多くの作業を行うことができます。 。
DedeCMS を例に挙げると、次の方法で保護できます。
1. ルート ディレクトリの下にあるデータ ディレクトリの名前を変更するか、Web サイトのディレクトリの外に移動します。
データ ディレクトリは、最も悪意のある行為が行われる場所です。このディレクトリにデータを書き込むと、このディレクトリ内のすべてのファイルに URL 経由でアクセスできます。したがって、ブラウザが内部のファイルにアクセスできないようにしたい場合は、このディレクトリの名前を変更する必要があります。または、Web サイトのディレクトリの外に移動します。たとえ誰かが脆弱性を利用してファイルにトロイの木馬を書き込んだとしても、トロイの木馬が配置されているファイル パスを見つけることができないため、攻撃を続行することはできません。 DedeCMS プログラムは無理があるため、データ ディレクトリの名前を変更するアクションは比較的大規模になります。具体的な方法は次のとおりです:
a. パブリック コンテンツを pub ディレクトリ (またはその他のカスタム ディレクトリ) に移行します。この手順では、フォルダーを移動し、これらのファイルの生成パスを変更する必要があります
b. 参照されるプログラム ディレクトリを変更します
「DEDEDATA.」を検索して置換します。 "/data/" を "DEDEDATA ."/" に置き換え、約 50 または 60 桁を置換します。
"DEDEDATA.'/data/" を "DEDEDATA.'/" で検索して置換し、約 50 または 60 桁を置き換えます。
「/data/」を検索します。特定の状況に応じて、変更されたパスは「$DEDEDATA."/」のようになります (インクルード ディレクトリとバックグラウンド管理ディレクトリの両方にデータ フォルダーがあり、データ フォルダーを作成する必要がないことに注意してください)変更する必要があります);
c. データ フォルダー名を変更し、include/common.inc.php ファイル内の「DEDEDATA」の値を変更してから、バックグラウンド システム設定のテンプレート キャッシュ ディレクトリを変更します。パラメータ設定」を参照して変更を完了します。将来的にデータ フォルダーの名前を変更する場合にも、この手順に従ってください。
2. "dede" 管理ディレクトリの名前を変更し、それを強化します
背景が非表示になっている場合、他の人があなたの管理者アカウントとパスワードを取得したとしても、ログインする方法はありません。
/dede/config.php で、次の行:
以下は引用された内容です:
//检验用户登录状态 $cuserLogin = new userLogin(); if($cuserLogin->getUserID()==-1) { header("location:login.php?gotopage=".urlencode($dedeNowurl)); }
推奨される学習: dedecms use Tutorial
以上がDreamWeaver を使用して構築された Web サイトは、マルウェアのハッキングをどのように防ぐことができますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。