SlideShare a Scribd company logo
~ 1クリックの後悔~
※本稿の内容を管理下ではない環境に対して
実施しないでください。
自己紹介
Twitter: abend
Webセキュリティをメインでやってます。
本が出てます。
クリックジャッキングって
見た目上、無害に見せかけてた罠サイトに利用者を誘導
し、利用者が意図しない操作を正規サイトに対して実行
させる攻撃手法。
Robert Hansen & Jeremiah Grossmanに2008年にOWASP
で発表された。
IPA
http://www.ipa.go.jp/about/technicalwatch/20130326.html
StyleSheetを用いて正規サイトを透過させるため、見た目
では無害な罠サイトであると誤認識させて、利用者が正
規サイトで意図せず処理を実行してしまう。
罠サイト
クリックジャッキングって
罠ボタン
正規サイト
ボタン
正規サイトは
全く見えない
状態にする。
じゃあ、やってみる
<クリックジャッキングに必要なもの>
・攻撃対象サイト
・罠サイト
・攻撃者
・被害者
・被害者が利用するブラウザ
攻撃対象サイトの用意
脆弱性検証用に作成したショッピングサイトをターゲッ
ト。
会員制のショッピングサイトで、認証済みの利用者が商
品を購入可能なサイト。
罠サイトの用意
ネタを仕込み済みの罠サイトを使用。
罠サイトの中身
罠サイトでは2つのことをしています。
・ 埋め込まれたサイトのstyle属性を変更し、見えないようにする。
・ iframeを用いて、攻撃対象サイトを罠サイトに埋め込む。
罠サイトの中身
変更しているstyle属性は、以下の通り。
filter:alpha(opacity=0);
opacity: 0.0;
-moz-opacity: 0.0;
→IE6
→ほとんどのブラウザ
→古いFirefoxやNetscape
とりあえず、いろいろ仕込んでおけば、多くのブラ
ウザで有効化(見えなくなる)される。
罠サイトの中身
スケスケ度30%に設定
ああっ。
2クリックが紡ぐ新たなストー
リー
通常の退会処理手順
ログイン済みのユーザを誘導して・・・。
2クリックが紡ぐ新たなストー
リー
2クリックが紡ぐ新たなストー
リー
2クリックが紡ぐ新たなストー
リー
たとえば、「いいね」ボタンを押させるなど・・・
1クリックの後悔
アダルトサイトで「いいね」を連呼させられるな
ど・・・
攻撃対象サイト 罠サイト(スケスケ度3
0%)
どう守る?
サーバ側とユーザ側で対策を行う必要がある。
サーバ側
ユーザ側
守りたいサイトがiframeで表示できないようにX-FRAME-OPTIONS
ヘッダを埋め込む。
X-FRAME-OPTIONSヘッダを認識するブラウザを使用する。
どう守る?
攻撃対象サイトの対策実施前
HTTP/1.1 200 OK
Date: Sat, 06 Jul 2013 07:51:54 GMT
Set-Cookie: JSESSIONID=01081CAB2A51C5D0B2317A80B400E79E;
Path=/WithUS/; HttpOnly
Set-Cookie: cart=""; Path=/
Content-Type: text/html;charset=utf-8
Connection: close
Content-Length: 12802
どう守る?
攻撃対象サイトの対策実施後
HTTP/1.1 200 OK
Date: Sat, 06 Jul 2013 08:27:45 GMT
X-FRAME-OPTIONS: DENY
Set-Cookie: JSESSIONID=7C1504026774FBB9AB462F66D060251B; Path=/;
HttpOnly
Content-Type: text/html;charset=utf-8
Connection: close
Content-Length: 12802
DENY
サイト側の意図に関わらず、ページをフレーム内に表示することはできません。
SAMEORIGIN
自身と生成元が同じフレーム内に限り、ページを表示することができます。ALLOW-
FROM uri
指定された生成元に限り、ページをフレーム内に表示できます。
オプション内容
ユーザ側は、古いブラウザを使わないってのが一番の対策。
以下、記載よりも新しければOK。(リリース時期)
どう守る?
IE8.0(2009年3月)
Safari4.0(2009年6月)
Chrome4.1.249.1042(2010年4月)
Firefox3.6.9(2010年9月)
Opera10.5(2010年10月)
ちゃんとアップデートしましょう。
ブラウザでも動作の止め方が異なります。
以下は、スケスケ度30%でのブラウザごとの挙動。
どう守る?
IE Chrome、Firefox、Opera
IEの場合、エラーメッセージ表示される。それ以外のブラウザは、
特に何もなし。この点においては、IEの方が親切。
Chrome、Firefox、OperaもIE同様エラーメッセージを表示するよう
にしてほしい。クリックジャッキングのリスクはないにしても、被
害者にアクセスしているサイトが罠サイトであると気づいてもらえ
るようにした方がいいと思う。
いろいろと。
<ブラウザに関して>
サーバアプリは、デフォルトでX-FRAME-OPTIONS(値:DENY)を
セットするようにしてほしい。クライアントが最新ブラウザ使っても
サーバで何もしていなければ意味がないので。
<サーバに関して>
追加情報だよ。
http://www.sophos.com/ja-jp/press-office/press-releases/2013/06/ns-anatomy-of-
a-browser-trick.aspx
SOPHOSから新手のクリックジャッキングの手法に関してのレポート
が2013年6月29日に出てました。
不正なファイルを実行させるための方法で、EXEをダウンロードさせ、
CHAPCHAなどを用いて「E」を入力させることで実行させるというも
のです。
ブラウザの種類によって挙動が異なるため、有効性は不明。対策は前
述のとおり。

More Related Content

クリックジャッキング