Home > 技術情報 > WEBアプリ全般

WEBアプリ全般

投稿タイトル IE6のロールオーバーボタンのちらつきを解消する・・・の巻

こんにちは。miyoshiです。

今さらですがIE6ってバグ多いですよね?

最近はIE7が出回って久しくもあり、またfirefoxその他ブラウザを愛用の方も多数いらっしゃることと思います。
ですが、IE7がwindows2000には対応していないかったり、社内のブラウザは統一したいという思惑があったりで、企業ではまだまだIE6が人気のようです。
私の知っているお客様企業でもIE6が社内で推奨(強制)されていて、開発時にはIE6に合わせたcssを書いたりしています。

今日はそのようなIE6のバグの中から一つの対策tipsを紹介します。

Continue reading

投稿タイトル ウェブアプリケーションの脆弱性、XSIO を知っていますか?

もしもしかめYO!かめさんYO!

みなさん、どうも初めまして。
ヒップホップでの初登場と相成りましたtatsumiでございます。
本日はみなさんとウェブアプリケーションの脆弱性について
少しお勉強していこうかなと思っております。
よろしくお願い致しますー。

1.XSIOとは

突然ですが、みなさんは XSIO をご存知ですか?
「既に知っているよー」という方は以下を読む必要はありませんが、
「新しいデジカメだよね」と笑顔で答えてくれたそこのあなた!
あなたの作ったウェブアプリケーションには危険が潜んでいるかも知れませんので
ここでしっかりと押さえていきましょう。

XSIO とは Cross Site Image Overlaying の略で
その名前の通りに画像を使用した攻撃手法のことです。
具体的にはCSSを使って画像を任意の場所に配置・参照させるのですが、
実際どのように攻撃されるのか?また、それがどのような問題を引き起こすのか?
それらについて基本的な仕組みが同じである XSS(Cross Site Scripting) と比較して説明します。

2.基本的な仕組み

下記のような、フォームから入力された情報を動的に表示するページがあり、
そこで適切なエスケープ処理が施されていないときに発生します。

<span>(入力された情報)</span>

●XSSの場合

このとき、フォームにて

<script>
alert(’スクリプト実行’);
</script>

を入力すると、実際に生成されるのが

<span>
<script>
alert(’スクリプト実行’);
</script>
</span>

となり、スクリプトが実行されてしまいます。

●XSIO場合

このとき、フォームにて

<a href=”http://www.phishing.com” >
<img src=”http://www.sample.com/logo.jpg” style=”position:absolute;top:10px;left:10px;” alt=”fake” />
</a>

を入力すると、実際に生成されるのが

<span>
<a href=”http://www.phishing.com” >
<img src=”http://www.sample.com/logo.jpg” style=”position:absolute;top:10px;left:10px;” alt=”fake” />
</a>
</span>

となり、画像の表示位置を自由に指定されてしまいます。

3.何が悪いのか?

両者の例を見てどのように感じられたでしょうか?
XSS は動きがあるため直感的に危険だと分かりますが、
XSIO はいまいち何が悪いのか分からない人もいるかと思います。
「ただ画像の表示位置を指定できただけだよね?」と。

しかし、表示位置を指定できることが状況によっては大きな問題につながります。
例えば、このミュートスラボの画面左上には
ブログTOPへのリンクが含まれている
「ミュートス・ラボ Mythos-labo」というタイトルが表示されているのですが、
この上に

logo.jpg

のような画像をかぶせたらどうなるでしょう?
いとも簡単にリンク先を変更できますよね。

つまり、しかるべき場所でこのような性質を利用されるとフィッシング詐欺の踏み台になりますし、
いかにも運営者からのお知らせのようにして偽の情報を表示することも可能ですし、
もちろんサイト改変が行なわれる可能性もあるということです。

4.対策

では、どうすればこの XSIO を防ぐことができるのか?
基本的には「style属性をエスケープしてしまうこと」「CSSを編集できるような状態にしないこと」です。

しかし、注意して頂きたいのがこれだけで安全になる訳ではないということです。
言うまでもないと思いますが、ウェブアプリケーションの脆弱性はこれだけはありません。
本当の安全を維持するためには、他の脆弱性にも対策を施していくことが重要です。
自分の作ったウェブアプリケーションが悪用されないためにも、
しっかりとこういったセキュリティのお話にアンテナをはりましょう。

5.参考

もう少し詳しく知りたい方はXSIO - Cross Site Image Overlaying(PDF)を読んでみてください。

Home > WEBアプリ全般

ページ
メタ情報

Page Top