AからZへのクリックジャック

親愛なる友人、こんにちは!
この投稿では、クリックジャック攻撃の性質、ユーザーに影響を与え、この脆弱性に対抗する方法について説明します。





クリックジャックとは何ですか?



クリックジャッキング(クリックジャッキング)は、インターネットユーザーを欺くためのメカニズムです。攻撃者は、明らかに無害なページに誘導するか、安全なページに悪意のあるコードを挿入することにより、機密情報にアクセスしたり、ユーザーのコンピューターにアクセスしたりすることができます。 Wiki

ロシア語で言えば、iframeまたは同様の方法を使用してページを作成し、完全に透明にし、その上に特定のテキストを配置します。 したがって、ユーザーを誤解させ、特定のアクションを実行させることができます。

対策



「攻撃方法を知らなくても、なぜ攻撃に対抗する方法を学ぶのですか?」 しかし、攻撃を使用するには、関心のあるホストが脆弱であることを確認する必要があります。そうしないと、脆弱性を使用できません。

保護する方法はいくつかあります。 まあ、少なくとも一部の人々はそう思う。

実際、2008年に彼らはこのタイプの攻撃を公開しました(これはナンセンスで、以前は著者の人気が低かったため、この方法は大衆に行きませんでした)、彼らはこれに対抗する簡単な修正を使用し始めましたが、これは疑似保護です。 そしてしばらくして、ブラウザは特別なヘッダーをサポートするようになりました。これにより、これ以外のホストにiframeをダウンロードすることを制限したり、禁止したりすることさえできます。 したがって、生きた例を使用してこれら2つの防御を分析します。

top!=自己保護または擬似保護



すでに述べたように、この方法はほとんどすぐに登場し、最近まで少なくとも何らかの保護でした。

「保護」の例を考えてみましょう。 iframeにロードされたページがあります。



ここで、コードを挿入し、動作しているように見えることさえ確認します。



しかし、HTML5の出現とすべての最新ブラウザーのサポートにより、この保護は単にバイパスされます。



HTML5は、 sandbox属性のサポートをもたらしました。

これだけがそのような「防衛」ではないことを言ってみましょう。 すべてはJSに基づいており、簡単にバイパスされます。

X-Frame-Optionsヘッダー



このヘッダーにより、iframeでのリソースの読み込みを完全または部分的に制限できます。 ブラウザはヘッダーを直接処理し、バイパスはブラウザの脆弱性であるため、回避することは非常に困難です。 この方法は、今日最も受け入れられています。

google.ruのヘッダー作業



Clickjacking VK



さて、私たちは知識の実用化に着手しました。

pentesterが最初に確認する必要があるのは、ヘッダーの存在です。



ご覧のとおり、X-Frame-Optionsヘッダーがありません。つまり、サイトは脆弱です。

iframeでサイトをロードしようとすると、ロードされていないページが表示されます。



サンドボックスを追加して、ページをリロードします。



そして、ここに犯人がいます



「グループに参加」ボタンの下にテキストを配置します。



あなたが私が意味することを理解している場合、私たちはページ、ウェル、またはビットコイングループを持っています:)

<html> <head> <title>Clickjacking vk.com</title> <style> iframe { position: absolute; opacity: 0.2; z-index: 2; } </style> </head> <body> <iframe sandbox width='400' height='500' src='http://m.vk.com/drinkingandcats'></iframe> <a id='a' style='position:relative;left:140px;top:127px'>Click to WIN!</a> </body> </html> 


まあ、それがすべてです。 ページの外観はどのようなものでもかまいませんが、攻撃する最善の方法は、十字架の写真を吊るし、バナーを閉じてページの上部に置くことです。 最良の方法。

Source: https://habr.com/ru/post/J186616/


All Articles