3

私は.htaccess(単純なmod_rewriteと基本的なdeny / access以外)の経験がなく、次の問題に取り組む方法がわかりません。

私は次のようなディレクトリ構造を持っています:

/parentDirectory
    /childDirectoryOne
    /childDirectoryTwo

/ parentDirectoryを指すドメイン(これをparent.comと呼びます)があり、子ディレクトリごとに個別のサブドメインがあります(それぞれone.parent.comとtwo.parent.comと呼びます)。

これらはすべて共有ホスト上にあります。サブディレクトリへのftpアクセスを許可する必要がありますが、問題は現在、誰かがphpファイルをchildDirectoryOneにアップロードして、親ディレクトリをスキャンし、それによってその兄弟ディレクトリを検出して、兄弟ディレクトリに移動してファイル(dbConfigファイルなど)から機密情報を取得します。

私がやろうとしていたこと(これまでのところ成功していません)は、子ディレクトリのスクリプトが親ディレクトリまたは兄弟ディレクトリにアクセスできないようにする一連の.htaccessファイルを開発することです。これが可能かどうかさえわかりません。残念ながら、私の共有ホストはchroot jailの設定をサポートしていないため、これが解決策を見つけるための最後のオプションです(ftpユーザーごとにホスティングを購入して他の情報にアクセスできないようにすることの次に)。

4

2 に答える 2

1

ノート!

あなたも利用する必要がありsafe_modeます。そうしshell(),exec()...ないと、ハッキングされます....しかし!! それでは十分じゃない。ここで完全に読む - https://puvox.software/blog/restrict-php-access-upper-directory/

于 2015-05-27T19:27:05.623 に答える
1

フォルダーへの読み取り、書き込み、および実行のアクセス許可を、絶対に信頼していない人に許可することは、悪い習慣と見なされます。

任意のスクリプトをアップロードしてサーバー上で実行できることは非常に重要です (別のフォルダーにアクセスすることは心配する必要はありません)。人々はあなたのサーバーとその上のすべてのサイトを完全に破壊し、あなたのデータベースにアクセスし、任意のサイトの他のページを上書きする可能性があり、リストは続きます.

アップロードされたファイルに対して php を完全に無効にすることをお勧めします。これを に入れることができます.htaccess

php_flag engine off

そうは言っても、本当にこのようにしたい場合は、open_basedir.

<Directory /parentDirectory/childDirectoryOne>
  php_admin_value open_basedir "/parentDirectory/childDirectoryOne"
</Directory>
于 2013-02-19T21:43:58.340 に答える