0

コンテンツ配信セキュリティの単一レイヤーを実現するために、.htaccess RewriteRule を介してリソース URL を隠す可能性を調べています。

RewriteEngine on
RewriteBase /js/
RewriteRule obscure-alias\.js http://example.com/sensitive.js

もちろん、次のように実装されます。

<script type="text/javascript" src="obscure-alias.js"></script>

これは 301 リダイレクトではなく、現在使用している多くのフレームワークと同様のルーティング シナリオであるため、この RewriteRule は、このリソースが配置されている実際の URL を適切に難読化していると言えます。

  1. 何らかの HTTP ヘッダー スニッフィング ユーティリティを介して宛先 URL を見つけることはできますか
  2. 「ダウンロード URL」を Web ブラウザーで明らかにできる可能性があります。

「内部プロキシ」はクライアント側ではなくサーバー側で行われているため、正しく理解している場合は、両方にノーと言って、自分の質問に事前に答えます: http://httpd.apache. org/docs/current/mod/mod_rewrite.html . Apache が宛先 URL を提供するときに、元のリクエストを書き換えた URL が何であるかという情報をユーザー エージェントに渡していないことを確認したかっただけです。

4

2 に答える 2

0

リダイレクト先の指定方法によって異なります。

が同じサーバー上で実行されている場合http://example.com/、クライアントには見えない内部リダイレクトがあります。マニュアルから:

絶対 URL

絶対 URL が指定されている場合、mod_rewrite は、ホスト名が現在のホストと一致するかどうかを確認します。存在する場合、スキームとホスト名は取り除かれ、結果のパスは URL パスとして扱われます。それ以外の場合、指定された URL に対して外部リダイレクトが実行されます。外部リダイレクトを現在のホストに強制的に戻すには、以下の [R] フラグを参照してください。

絶対 URL がリモート ドメインを指している場合、ヘッダー リダイレクトが実行されます。ヘッダー リダイレクトクライアントに表示され、重要な場所が明らかになります。

外部リダイレクトが発生しないようにするには、次のような相対 URL を指定します。

RewriteRule obscure-alias\.js sensitive.js

機密性の高い JS ファイルの URL は引き続き推測できることに注意してください。

リクエストの結果がヘッダー リダイレクトになるかどうかを確認するには、端末 (Linux サーバーなど) にログインして、次のようにします。

wget --server-response http://www.example.com

最初のHTTP/....行 (複数ある場合があります) が で始まる3xx場合、

HTTP request sent, awaiting response... 
  HTTP/1.1 302 Moved Temporarily

ヘッダーのリダイレクトを見ています。

于 2012-11-20T08:51:05.317 に答える
0

プロキシ スループットを使用して可能。

http://httpd.apache.org/docs/2.4/rewrite/proxy.htmlを参照してください。

ここでもほのめかされています:mod_rewriteが内部プロキシとして機能しない

于 2012-11-20T09:08:51.477 に答える