1. Web ディレクトリからの飛び出しを防止する
まず、httpd.conf を変更します。PHP スクリプト プログラムが Web ディレクトリ内でのみ動作することを許可する場合は、httpd.conf ファイルを変更して操作パスを制限することもできます。 phpの。たとえば、Web ディレクトリが /usr/local/apache/htdocs の場合、次の行を httpd.conf に追加します:
php_admin_value open_basedir /usr/local/apache
/htdocs
このように、スクリプトが /usr/local/apache/htdocs 以外のファイルを読み取ろうとした場合、エラー表示が開いていると、次のようなエラーが表示されます。
警告: open_basedir 制限が有効です。ファイルは
/usr/local/apache/htdocs/open.php の 4 行目
などに間違ったディレクトリにあります。
2. php トロイの木馬が Webshell を実行しないようにします
safe_mode を開きます、
php.ini で設定します
disable_functions= passthru、exec、shell_exec、system
2 つのうちの 1 つ、または両方を選択できます
3. php トロイの木馬が php.ini のファイル ディレクトリ
を読み書きできないようにします
disable_functions = passthru、exec、shell_exec、system
に続く PHP ファイル処理関数
には、主に
fopen、mkdir、rmdir、chmod、unlink、dir
fopen、fread、fclose、fwrite、file_exists
closedir、is_dir、readdir.opendir
fileperms.copy、unlink、delfile
は
disable_functions になります= パススルー、exec、shell_exec、システム、fopen、mkdir、rmdir、chmod、unlink、dir
、fopen、fread、fclose、fwrite、file_exists
、closedir、is_dir 、readdir.opendir
、fileperms.copy、unlink、delfile
ok、完了しました。残念ながら、この場合、php トロイの木馬は私たちを奪うことはできません。動作しません。
Apache が Windos プラットフォーム上に構築されている場合は、もう 1 つ注意する必要があります。Apache はデフォルトでシステム権限で実行されます。これは恐ろしいことであり、人々に不快感を与えます。その場合は、Apache の権限を下げる必要があります。 。
net user apache funkmicrosoft /add
net localgroup users apache /del
ok。どのグループにも属さないユーザー apche を作成しました。
コンピューターマネージャーを開き、サービスを選択し、Apache サービスのプロパティをクリックし、ログオンを選択し、このアカウントを選択し、上で作成したアカウントとパスワードを入力し、Apache サービスを再起動します。 Apache は低権限で実行されています。
実際、Apache ユーザーが実行したいことのみを実行できるように各フォルダーの権限を設定し、ディレクトリごとに個別の読み取り/書き込みユーザーを作成することもできます。これは、多くの仮想ホスト プロバイダーで使用される一般的な構成方法でもありますが、これを防ぐために使用すると過剰になります。