2016-07-24 22 views
1

DOMを作成した後に何らかの形でDOMを「ロックアウト」することが可能かどうか疑問に思っています。DOM改ざんや改ざんを防止する

目的は、ウェブページの整合性を保つことです。

私はそれは不可能だと思っていますが、まだ誰かが興味深い考えを持っていることを願っています。

+0

私はそれが不可能だと思う。あなたはクライアント側を制御することはできません。 – StarsSky

+0

いいえ、要するにこれは不可能ですが、コンソールをロックアウトしようとすると暗黙のうちにセキュリティを試す人もいますが、経験豊富なハッカーを阻止するものではありません。 @StarsSkyが言及するようにクライアント側でレンダリングされるので、クライアントが実際に望む方法で操作することができます。 – Stu

+1

しかし、サイト/アプリをできるだけ多くの既知の攻撃ベクトルから保護するために、[コンテンツセキュリティポリシー](https://content-security-policy.com/)を調べることをお勧めします。 – CBroe

答えて

0

@Stuによってすでに述べたように短い答え:いいえ、それはできません。

免責事項を最初にしましょう:私は、Man-in-the-Browser(MitB)と呼ばれるようなDOMベースの攻撃について、最後の3回、 年を研究しています。 R & Dは、Webアプリケーションの整合性に重点を置いています。あなたはDOMを「ロックアウト」することはできませんのよう

は、あなたができる最善のは何ができる のアクセスを制限し、それを変更することです:@CBroesは、あなたのサーバが ブラウザに指示することができますので、Content Security Policy (CSP)で始めることができます言ったように何スクリプト/スタイルソースは許可されています。

HTTPヘッダーを取り除くことができるもの、またはmeta タグを使用して、CSPの目的をブラウザの解析前にHTTP応答から除外することができます。 MitBトロイの木馬。

Subresources Integrity (SRI)ブラウザに「おい、私はこの リソースが現在のハッシュと一致する場合に限り、これを欲しい」と伝えることができます。 integrity属性を使用して知っているハッシュを に提供する必要があります。これは、特に の場合、CDNのような遠隔地からリソースをロードしている場合です。 が侵害され、読み込んでいるスクリプトに悪質なペイロードが追加されると、アプリケーションが危険にさらされます。

CSPの場合、MitBトロイの木馬はブラウザの解析に先だって の属性を取り除くことができますが、SRIを使用するとバーが増えます。

Webページが合法的に変更したり、実行環境で実行されている 何かの干渉によって、私たち(と私のR & D)は、次のレベル に行くことを許可することができるという事実を受け入れる:DOMが改ざんし、約リアルタイムの知識を への機能は、 "自傷"と悪意のある/望ましくない改ざんを区別します。

私のR & Dは既に一歩進んでおり、このスレッドのコンテキストで間違って認識される可能性があるので、サイドチャネルで を共有してもうれしいです。

関連する問題