第3回 Ajaxのセキュリティ、特殊なものだと思ってました
杉山 俊春
株式会社ユービーセキュア
技術本部 テクニカルサービス部
セキュアオーディットコンサルタント
2007/12/7
| HTTPの基本は(なんとなく)分かった! と満足のクウ。そこにジュンさんから思いもかけない提案のメッセージが飛んできました。今回は気になるAjaxのセキュリティで気をつけるべきポイントを解説します(編集部) |
HTTP基礎、もう一度成果をまとめてみよう!
| クウ | 「今日も疲れたなー。一応メールチェックだけして寝ようかな」 |

仕事を終え、家に帰ったクウはPCを立ち上げた。疲れていたのでメールチェックだけ、というつもりであったが、PCが立ち上がると、メッセンジャーでジュンさんが話し掛けてきた。
@IT messenger v1.31b |
ジュン:こんばんはー。 クウ:あっ。ジュンさんこんばんはー。 ジュン:こないだは、ちょっと中途半端な感じになったけど大丈夫だった? HTTPとかいろいろやってみた? クウ:telnetで簡単なのはできたんですけど、Webアプリとかなると大変で……。 ジュン:ああー。そうだよねー。 クウ:全部打ち込むとなるとかなり時間がかかっちゃって、しかも間違えたりして〜。 ジュン:そっかー。取りあえず基本の動作だけ、って思ってたからtelnetでのアクセス方法教えたけど、ちょっと足りなかったねぇ。 クウ:大変だーっ! って思ったのでツールとか探しちゃいました♪ ジュン:どんなツール? クウ:えっと、なんか、プロキシっぽくなってて、ブラウザからのHTTP通信を途中で捕まえて書き換えができたりするやつです。 ジュン:おおっ。プロキシのツール使うところまでやったのね。えらいえらい。telnetしか教えてなかったからあの後どうしたのかなーと密かに思ってたの(笑)。 クウ:いくつか見つけていろいろ試してはみたんですけど、まだ始めたばかりでよく分かってないかもデス……。 ジュン:ほうほう。なるほど〜。 |
クウはすぐに寝るはずだったのだが、つい話が弾んでしまい結局話し込んでしまった。
Ajaxのセキュリティって、何をすればいいんだろう?
@IT messenger v1.31b |
クウ:あっ。もうこんな時間なんですね。そろそろ寝ないと……。 ジュン:そうだ。今週末だけど、ちょうど勉強会やるからおいでよ。 クウ:ホントですか? それって私が行っても大丈夫なのかな……。 ジュン:大丈夫大丈夫♪ 結構気楽な感じでー。Webアプリのセキュリティに興味がある人のオフ会みたいなもんだよ。 クウ:でも、興味はあるけど、知識とかないので行ってもおジャマになるだけのような……。 ジュン:そんなことないよー。全然開発とかしたことない人とかも参加する感じだし。 クウ:じゃあ、行ってみようかなぁ。 ジュン:ぜひぜひ来てくださいなー。詳細はメールかなんかで送っておくね。ほいじゃ、おやすみー。 クウ:おやすみなさいー。 システム:ジュンはオフラインになりました |
後日、ジュンさんから勉強会についての詳細がメールで届いた。勉強会のテーマとしては、「Web 2.0のセキュリティ」を取り上げる予定のようだ。といっても、「Web 2.0」というくくりではあまりに広すぎるため、特にその中で代表的な「Ajax」に話題を絞った形で議論を行うらしい。
Ajax(Asynchronous JavaScript and XML)とは、JavaScript(主にXMLHttpRequestを利用)によりサーバと通信を行い、その通信結果に応じてダイナミックHTMLで動的にページの一部を書き換える手法である。画面遷移を伴わずにサーバと通信を行うため、利用者は、いつサーバと通信を行い、どういった結果が返ってきているかを意識する必要がなく、従来のWebアプリケーションに比べて操作性が高い特徴がある。
![]() |
| 図1 Ajaxの基本的な動作 |
クウもWebアプリケーションの開発でAjaxを使ったことはあるが、Ajaxのセキュリティというと何を考えなければいけないのかという段階では理解できてはいなかった。
| クウ | (Ajaxとセキュリティかぁ。気にはなってたんだよなぁ。ちょうどよかったかも……) |
勉強会のその日は参加ができそうだったので、クウは参加申し込みをした。クウにとってこういった勉強会は初めてであったため、少し不安もあったが、ネット上だけで知り合ったジュンさんと会ってみたいという動機もあった。
勉強会、参加することに意義があります!
勉強会当日、会場に着いたクウは、案内の張り紙を見つけると、勉強会が行われる会議室へと向かった。
会議室にはすでに何人か来ているようだ。クウはドキドキしながらも、さっそく受付を行うことにした。
| クウ | 「こんにちは。クウという名前で申し込んだ者ですけど……」 |
| 受付の人 | 「クウさん……。あ! クウさんですね! いらっしゃいー」 |
| クウ | 「え? あ、はい。よろしくお願いします」 |
| ジュン | 「あは。初めまして、ジュンです」 |
| クウ | 「あー! ジュンさん! 初めまして! まさか受付やってるとは思わなくってー」 |
| ジュン | 「うん。言わない方が面白いかなって思って」 |
| クウ | 「そうだったんですか〜。今日はよろしくお願いします!」 |

クウは受付を済ませ、席に着いた。勉強会が始まる前にジュンさんとちょっと会話をしたいと思っていたのだが、受付で忙しそうなので、勉強会のスケジュールと資料を眺めながら始まるまで待つことにした。スケジュールといっても、あまり堅苦しいものではなく、くだけた言葉でおおよその流れが書いてあるだけで、実際には時間に縛られずに自由に議論をしようという趣向のようだ。
| クウ | (なんかセミナーとかと違うみたいでドキドキするなぁ……。どんな感じでやるんだろ) |
最終的に30人くらい集まったようだ。受付が一段落すると、クウにジュンさんが話し掛けてきた。
| ジュン | 「受付終わったー。隣の席って空いてるよね? あらためてよろしくね」 |
| クウ | 「はいっ! よろしくお願いします」 |
| ジュン | 「ま、気楽にいきましょ!」 |
開始時刻になると、司会の人がマイクを持って話し始めた。
| 司会 | 「えー。それではそろそろ始めますねー。ま、気楽にいきましょう」 |
1/3 |
| Index | |
| Ajaxのセキュリティ、特殊なものだと思ってました | |
| Page1 HTTP基礎、もう一度成果をまとめてみよう! Ajaxのセキュリティって、何をすればいいんだろう? 勉強会、参加することに意義があります! |
|
| Page2 通信タイミングが見えづらくなるAjaxのインターフェイス 名前に惑わされてはならない? AjaxとHTTP通信の関係 Ajaxの正体って、HTTPと変わらない? |
|
|
Page3 マッシュアップはAjaxの醍醐味――しかし? あなたの提供しているコンテンツは安全か? 利用しようとしているそのコンテンツは安全か? |
もいちどイチから! HTTP基礎訓練中 バックナンバー
| もいちどイチから! HTTP基礎訓練中 連載インデックス |
ホワイトペーパー(TechTargetジャパン)
- この脆弱性対策エンジンは“永遠に完成しない” (2010/3/9)
パターンファイルに頼らず防御する「要の技術」は、いまも完成にはいたっていない。その理由とは―― - Gumblarがあぶり出す 「空虚なセキュリティ対策」 (2010/3/1)
ガンブラーの脅威は、組織の構造や外部委託問題をあぶり出します。そのセキュリティ対策、建前論になっていませんか? - 決済アプリのセキュリティ基準、PA-DSSとは (2010/2/24)
“ペイメントアプリケーション”のセキュリティ基準を定めたPA-DSS。厳密に定められた14の要件を、PCI DSSと対比させつつ解説します - 「鍵は“J”の中にあるよ」CTF by ダークナイト解答編 (2010/2/22)
ダークナイトからの挑戦状、いかがだっただろうか。WiresharkにNetworkMiner、WinRARを駆使し、“J”に隠された秘密を解き明かせ!
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
| 「いつかは壊れるサーバ」そんな故障に 迅速で安価に手軽に対応する方法とは? New! |
| 「特権ユーザー」の事件を防げ! 万能権限を持つユーザーの管理方法とは? New! |
| 仮想環境の構築とデータ保護の特効薬?! 実績と信頼性の高いパッケージで安心運用 |
| 仮想環境のバックアップもこれまでどおり 「まるごと取ってまるごと戻す」簡単運用 |
| おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |
| その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |
| 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |
| 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | TomcatやJBossなどAPサーバ環境に関する 情報を集約! “業務”用APサーバ大百科 New! |
| ◆ | 一気に解説! 最新のクラスタストレージ 「RAIDを超えたストレージ基準」……など New! |
| ◆ | クラウド的ユーザー体験の変化は脅威か? 仮想化技術を使いこなす運用管理術を紹介 New! |

| ◆ | 上司や部下、部署内メンバーとの情報共有 を“ガラッ”と変えるコラボツールとは? New! |
| ◆ | おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| ◆ | 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |

| ◆ | Twitterのアカウントはなぜ突破された? メールによる新手の攻撃手法とその対策 |
| ◆ | もう仮想化のお試しフェイズは終わりだ! Hyper-V 2.0が基幹システムも仮想化 |
| ◆ | 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |

| ◆ | クライアント企業から求められる人材 ⇒IT技術と経営戦略を併せ持つ「戦略家」 |
| ◆ | .NET編集長が実践する「技術情報検索術」 サンプル・コードを簡単に探す“技”は? |
| ◆ | 業務効率と情報セキュリティ対策を両立! 手間なく確実に機密情報を守る方法とは? |

| ◆ | 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |

| ◆ | 【CTC事例】約30の基幹システムを統合! 膨大なバッジジョブを制御した方法は? |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |
| ◆ | その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |







