2017-02-21 17 views
3

私はColdfusion Webアプリケーションを持っています。 Cross-Frame Scripting攻撃から自分のサイトを保護するために、私の '.htaccessファイル'に「SAMEORIGIN」の値を持つHTTP応答ヘッダー「X-Frame-Options」を追加する予定です。コードの下 https://www.garron.me/en/bits/apache-htaccess-add-cache-control-header-file-type.html「ClickJacking」攻撃から保護するために.htaccessファイルに「X-Frame-Options」ヘッダーを追加する方法

が働いていない

https://geekflare.com/secure-apache-from-clickjacking-with-x-frame-options/、:これは私が参照しています記事です。

<FilesMatch "\.(cfm)$"> 
<ifModule mod_headers.c> Header append X-FRAME-OPTIONS 'SAMEORIGIN'</ifModule> 
</FilesMatch> 

私はこれに新しいです、誰かがそれを正しく行うにはどのように助けてくださいすることができます。

ありがとうございます。

答えて

2

あなたの例では、参照した2つの記事の両方を組み合わせたようです。

Geekflare.com articleは、Apacheのため、この例を示します:

Header always append X-Frame-Options SAMEORIGIN 

Garron.me articleは、Apacheのために、この例を示します:

<filesMatch ".(html|htm)$"> 
Header set Cache-Control "max-age=14400, must-revalidate" 
</filesMatch> 

X-フレーム・オプションのヘッダーのための私の心の中でこれに変換することになりますColdFusionページ:

<filesMatch ".(cfml|cfm)$"> 
Header always append X-FRAME-OPTIONS SAMEORIGIN 
</filesMatch> 

通知thaあなたのコードのように正規表現に先行スラッシュ\がなく、引用符はSAMEORIGINの周りに必要ではなく、alwaysというキーワードを省いています。また、私はあなたが必要と思わないことを確認する追加の<ifModule mod_headers.c>があります。これらのページリクエストのヘッダを送信するために、ColdFusionとHTML拡張をこのような条件に組み合わせます(<filesMatch ".(cfml|cfm|html|htm)$">)。

あなたが参照した記事からそれを得ていますが、あなたの質問にColdFusionでタグを付けましたので、いくつかのオプションがあります。実際、ColdFusionのそれ以降のバージョン(バージョン10で導入されたと思います)には、何らかの保護機能が備わっています。また、ニーズに合わせてカスタマイズすることもできます。

ColdFusionの管理者X-フレーム・オプションを使用して、クリックジャッキングからの保護:その文書からSecurity improvements in ColdFusion 10

- この記事の "クリックジャッキング" を参照してください。

  1. オープン<Server-doc-root>/WEB-INFにあるweb.xmlファイル:次のようにも、あなたのアプリケーションを保護するために、さらに、このオプションを拡張することができます。

  2. URLフィルタの追加既に指定されている2つのフィルタ(CFClickJackFilterSameOriginまたはCFClickJackFilterDeny)の1つを使用してアプリケーションにマッピングします。

さて、あなたはアプリケーションのためのフレームを拒否することにより、クリックジャッキングから保護したいアプリケーションtestClickを、持っているとしましょう。これを行うには、web.xmlファイルに次の行を追加します。私のサーバーのいずれかのボックスのうち、次のものが含まからweb.xmlファイルを見てみると

<filter-mapping>
<filter-name>CFClickJackFilterDeny</filter-name>
<url-pattern>/testClick/*</url-pattern>
</filter-mapping>

(彼らは、ColdFusion Administratorの保護を追加している様子がわかり) :

<!-- CF ClickJacking deny protection Filter --> 
<filter> 
    <filter-name>CFClickJackFilterDeny</filter-name> 
    <filter-class>coldfusion.bootstrap.BootstrapFilter</filter-class> 
    <init-param> 
     <param-name>filter.class</param-name> 
     <param-value>coldfusion.filter.ClickjackingProtectionFilter</param-value> 
    </init-param> 
    <init-param> 
     <param-name>mode</param-name> 
     <param-value>DENY</param-value> 
    </init-param> 
</filter> 

<!-- CF ClickJacking same origiin protection Filter --> 
<filter> 
    <filter-name>CFClickJackFilterSameOrigin</filter-name> 
    <filter-class>coldfusion.bootstrap.BootstrapFilter</filter-class> 
    <init-param> 
     <param-name>filter.class</param-name> 
     <param-value>coldfusion.filter.ClickjackingProtectionFilter</param-value> 
    </init-param> 
    <init-param> 
     <param-name>mode</param-name> 
     <param-value>SAMEORIGIN</param-value> 
    </init-param> 
</filter> 

<!-- CF ClickJacking Filter mapppings starts. For ColdFusion Administrator we are allowing 
sameorigiin frames. Use Deny or some other mode of this filter as appropriate for the 
application and add required url pattern 
--> 
<filter-mapping> 
    <filter-name>CFClickJackFilterSameOrigin</filter-name> 
    <url-pattern>/CFIDE/administrator/*</url-pattern> 
</filter-mapping> 
<!-- End CF ClickJacking Filter mappings --> 

ColdFusionサイト全体を保護するには、サイトのルートにfilter-mappingを追加することができます。/*私はこれを修正した

<cfheader name="X-FRAME-OPTIONS" value="SAMEORIGIN" /> 
0

あなたも、レスポンスヘッダを含めるように<cfheader>タグを使用することができます(ただし、など、すべてのページ上またはApplication.cfcの中にこれを実行する必要があります)

<filter-mapping> 
    <filter-name>CFClickJackFilterSameOrigin</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 

.htaccessファイルの "IfModule mod_headers.c"の外に "Header set X-Frame-Options DENY"を追加し、Apacheのmod_headers.soファイルのヘッダモジュールを有効にしてください。

関連する問題