2005年6月7日(火曜日)
竜槍ケレンドロウズ
ロマサガ (www.amazon.co.jp)、邪教の廃墟でレッドドラゴンを倒したら、狙ってもいなかったのに「竜槍マリストリク」が一発で出て超ラッキー。
せっかくなのでもう一本の方も揃えようかと思い、シルバーさんを倒す倒す倒す。かなり強化してあるので2ターンで倒せるのですが、出るのは自然銀ばかり。倒しまくること一時間三十分にしてようやく「竜槍ケレンドロウズ」をゲットしました。
ちなみに、シルバードラゴンのブレスは術法防御が 133あればノーダメージになるようです。131だと 3ダメージ受けました。
- 「竜槍ケレンドロウズ」にコメントを書く
動かすのは簡単だが、安全に動かすのは難しい
「言葉は知られていても危険性までは認識されていない「SQLインジェクション」 (www.itmedia.co.jp)」より。
「最近のWebアプリケーションは、いわゆるCやC++などによるアプリケーションとは異なり、比較的簡単に書ける。経験の少ないプログラマが、『とりあえず動くこと』を前提にセキュリティのことを考えずWebアプリケーションを作ってしまうケースが多いのが原因だと思う」(笠原氏)。
御意。反射的に "PHP" という三文字が脳裏をよぎりましたが……。
関連する話題: セキュリティ / SQLインジェクション
直しても直しても直らない
JVN に新ネタ、「JVN#0DC004F6 desknet's におけるクロスサイトスクリプティングの脆弱性 (jvn.jp)」というものがでています。
この問題は、JVN#F88C2C13 (JVN#89DE2014の情報を追加) で対応されたパターン以外のスクリプトが実行可能である問題です。
以前指摘されて修正したはずの問題が別のパターンで可能だったという話のようです。実のところ、ブラウザベースのアプリケーションで HTML メールを安全に表示するというのはメチャクチャ大変なことなので、仕方ないのかなという気もします。
私が経験した事例では、HTML メールではありませんが、こんなケースがありました。
まずは HTML が添付できる掲示板の事例。
- 添付された HTML は本文の一部として表示されるが、<script> などの危険なタグは削除されるというサニタイズ処理
- しかし <<script> などと書くと何故か貫通
- 修正されたが、今度は <scr<script>ipt> などと書くと貫通
- 修正されたが、また別の方法でスクリプトが書ける事が発覚 (これは修正されていないので方法は伏せておきます)
それから、また別の HTML が書ける掲示板の事例。
- HTML が書けるが、使用できる要素はいくつかに限定されている。a要素が使用できる
- <a href="javascript:alert()"> などと書くと、タグ全体がエスケープされる。属性値に "script" という文字列が含まれているとエスケープされるというサニタイズ処理
- しかし <a href="javascript:alert()"> などと数値文字参照で書くと貫通
- 修正されたが、<a href="javascript:alert()"> として文字参照末尾のセミコロンを省略すると貫通
- これは非公式に修正されたらしい (修正はアナウンスされていないし私も正式な報告を受けていないのですが、いつのまにかできなくなっていました)
- しかし、実はまだ別の方法でスクリプトが書ける (これも修正されていないので方法は伏せておきます)
どちらも「修正しました」「修正できていません」と泥沼としか言いようのない経緯をたどり、結局修正できていません。
これらはそもそも「HTML が添付できる」「HTML が書ける」という仕様ですので、危険でない HTML は使用できるようになっていなければなりません。そして特定の危険な組み合わせだけをサニタイズしようとしているわけですが、それがもう茨の道なわけです。後者のケースでは、「HTML では REFC (参照終了区切り子、セミコロン) が省略可能なケースがある」などという知識が要求されているわけですが、そんなマニアックなところまで把握しているプログラマはどのくらいいるのでしょうか。さらには、HTML の仕様書には出ていない MSIE の怪しい挙動に至るまで理解している必要があります。
というわけで、「危険な記述だけをサニタイズする」という発想はもう物凄い茨の道です。直しても直しても次から次へと貫通方法が発見されるというのは、ある意味当然だとさえ思います。
そして思うのですが、上で軽く触れたような「こういうサニタイズではこういう貫通方法があるので駄目」というノウハウがどこかに蓄積されていて、ウェブアプリケーションを作ろうという人たちが自由に参照できる形になっていると、いろいろな人が幸せになれるのかもしれません。「IPA ISEC セキュア・プログラミング講座 (www.ipa.go.jp)」などに出ている事もあるのですが、もっと詳細に知らないと駄目な事ってあると思うのですよね。
……まあ、現状では「そういうのを公開すると一般ユーザが真似する」などと言う人が出てくるのは目に見えているので、難しいのでしょうけれど。
関連する話題: セキュリティ / クロスサイトスクリプティング脆弱性 / IPA / JPCERT/CC / JVN / 情報セキュリティ早期警戒パートナーシップ
カカクコム批判はボツ?
こんなお話がでています……佐々木俊尚の「ITジャーナル」:波紋を広げるカカクコム問題 (blog.goo.ne.jp)。
言及は避けるが、「セキュリティ」というものに対する無理解は相変わらずひどいとしか言いようがない――そんな感想を抱いた。
なんというか、「相変わらず」という言葉にすべてが集約されている感じですね。
- 前(古い): 2005年6月6日(Monday)のえび日記
- 次(新しい): 2005年6月8日(Wednesday)のえび日記