1

私は数人の友人と小さなプロジェクトに取り組んでおり、特定のユーザーだけがアクセスできる非常に単純なPHPアップロードスクリプトを設定しました。これは楽しみのためなので、サーバーに対するいかなる種類の攻撃についても心配していませんが、質問があります。

アップロードしたファイルの移動先となるサブドメイン(static.foo.bar)を作成しました。このサブドメインでは、phpスクリプトの悪意のあるアップロードと実行を防ぐために、mod_phpがオフになっています。このスクリプトは、ファイル拡張子とmimeコンテンツタイプもチェックしますが、これらは簡単にバイパス/なりすましできると思います。

ただし、ユーザーは.htmlファイルを簡単にアップロードして、別の場所にリダイレクトさせることができます。同様に、画像のダウンロードを求められる代わりに、画像ファイルをアップロードしてブラウザに画像を表示させることもできます。

これはブラウザの動作だと思いますが、ファイルをsendspace(またはその他のサービス)にアップロードすると、ファイルが.html(および有効なhtml)であっても、ユーザーにダウンロードを求めるようになることにも気づきました。 Webサイトに表示する代わりに。

CentOSでApacheを実行しています。

どうすればこれを達成できますか?

4

1 に答える 1

1

ForceTypeはおそらくあなたが探しているものです。

# In your .htaccess file
<Location /uploads_directory>
    ForceType application/octet-stream
</Location>

すべてのファイルのmimeタイプをに設定しapplication/octet-streamて、ブラウザがコンテンツを表示しようとする代わりにそれらをダウンロードするようにします。

于 2012-08-16T05:41:44.037 に答える