昨日の日記の続きで、Ajaxに固有なセキュリティ問題について検討します。今回はJSON等の想定外読み出しによる攻撃です。これら攻撃手法は本来ブラウザ側で対応すべきもので、やむを得ずWebアプリケーション側で対応する上で、まだ定番となる対策がないように思えます。このため、複数の候補を示することで議論のきっかけにしたいと思います。 まず、作りながら基礎から学ぶPHPによるWebアプリケーション入門XAMPP/jQuery/HTML5で作るイマドキのWeから、Ajaxを利用したアプリケーションの概念図を引用します(同書P20の図1-23)。 前回、前々回は、(5)のHTTPレスポンスの前後で、JSON等のデータ作成(エンコード)に起因するevalインジェクションや、(5)のレスポンスを受け取った後のHTMLレンダリングの際のXSSについて説明しました。 しかし、問題はこれだけではありません。正常
昨日の日記の続きで、Ajaxに固有なセキュリティ問題について検討します。タイトルはXSSとなっていますが、今回紹介する脆弱性はXSSではありません。 作りながら基礎から学ぶPHPによるWebアプリケーション入門XAMPP/jQuery/HTML5で作るイマドキのWeから、Ajaxを利用したアプリケーションの概念図を引用します(本書P20の図1-23)。 Ajaxのアプリケーションでは、XMLHttpRequestメソッド等でデータを要求し、サーバーはXML、JSON、タブ区切り文字列など適当な形式で返します。ブラウザ側JavaScriptでは、データ形式をデコードして、さまざまな処理の後、HTMLとして表示します。以下に、Ajaxのリクエストがサーバーに届いた後の処理の流れを説明します。 サーバー側でデータを作成、取得 データ伝送用の形式(XML、JSON、タブ区切り文字列等)にエンコード
このエントリでは、あるPHPの入門書を題材として、Ajaxアプリケーションの脆弱性について検討します。全3回となる予定です。 このエントリを書いたきっかけ twitterからタレコミをちょうだいして、作りながら基礎から学ぶPHPによるWebアプリケーション入門XAMPP/jQuery/HTML5で作るイマドキのWeという本を読みました。所感は以下の通りです。 タレコミ氏の主張のように、本書はセキュリティを一切考慮していない 主な脆弱性は、XSS、SQLインジェクション、任意のサーバーサイド・スクリプト実行(アップロード経由)、メールヘッダインジェクション等 脆弱性以前の問題としてサンプルスクリプトの品質が低い。デバッグしないと動かないスクリプトが多数あった 上記に関連して、流用元のソースやデバッグ用のalertなどがコメントとして残っていて痛々しい 今時この水準はないわーと思いました。以前
JavaScriptから外部ドメインにあるAPIを呼び出すために使われるJSONPですが、scriptタグを動的に追加する方法(下記の記事など)JSONPの取得時にサーバ過負荷などでエラーが出た場合、エラー処理ができないという欠点がありました。 クロスドメインJavaScript呼び出しをクラス化, クロージャにも対応 - Okiraku Programming scriptタグに onerror= という属性を付加するとエラー発生時にスクリプトを実行させることができるブラウザもあります。しかし試してみると、 Firefox: サーバがステータス4xx, 5xxを返した際にonerrorが実行される。 Safari: サーバがステータス404を返した際にのみonerrorが実行される。 Opera: 実行されない IE: 実行されない といったように、ブラウザごとに挙動がまちまち。 またス
CPI x CSS Nite「After Dark」(1) HTML5と、CSS3やSVG、webSocket等の周辺技術のことを 指します。 これらを使って我々ができるようになっていることはものすごくたくさんあり ますが、ご存知の通り、それらは、まだ仕様策定・実装が完全とは言えない段 階ということもあり、現実的に考えると、利用できる場面は非常に限られてい ます。 しかしながら、JavaScriptを使うことで、対応していないブラウザ でもなんとか利用することが可能です(完全ではありません)。こういった新 しい技術を利用するためにも、JavaScriptの利用は必要不可欠なも のになっています。このセッションでは、JavaScriptを使ってHT ML5周辺技術を利用するための方法を紹介します。 “ ”
If you're running an AJAX application with content that you'd like to appear in search results, we have a new process that, when implemented, can help Google (and potentially other search engines) crawl and index your content. Historically, AJAX applications have been difficult for search engines to process because AJAX content is produced dynamically by the browser and thus not visible to crawler
Getting Started This document outlines the steps that are necessary in order to make your AJAX application crawlable. Once you have fully understood each of these steps, it should not take you very long to actually make your application crawlable! However, you do need to understand each of the steps involved, so we recommend reading this guide in its entirety. Overview of Solution Briefly, the sol
これのこと。 AJAXサイトをスピード化するMXHR - huixingの日記 Digg the Blog » Blog Archive » DUI.Stream and MXHR どこにも解説が無かったので、詳しく読んだ。 上の記事から引用すると、「サーバーとクライアント間で、ただひとつだけのHTTPコネクションを開く。これによりサーバーがページのどのパーツを先行して読み込むかをコントロールすることが可能になり、ユーザーにとってはページ読み込みがほぼ一瞬で済むことを意味する。」という技術。XMLHttpRequest を使って複数のデータを受信する場合に効果がある。 まずデモから デモ1は10個のテキストをダウンロードして表示するもの。 デモ2は300個の画像をダウンロードして表示するもの。 どちらも左側 (MXHR 有効) が完了した後に右側 (MXHR 無効) を開始するので驚かない
Last week's news about Apple's use of SproutCore triggered a lot of discussion about the future of rich Internet applications, run-time environments, and JavaScript frameworks. While SproutCore has been referred to as "Cocoa for the web," its developer Charles Jolley says that the framework was "inspired by Cocoa," not really a port of Cocoa. But what if someone ported not just Cocoa, but also an
Webアプリケーションの操作性を向上させるために、いまや欠かすことのできないJavaScript。Prototype.jsやjQueryといった各種フレームワークを使用して、ユーザビリティを高めている開発者も少なくないだろう。 ここ数年の間でYahoo! UI LibraryやExt JS、Dojo Toolkitといった、開発のしやすさや・操作性の向上はもちろんのこと、綺麗なデザインも兼ね備えているライブラリが増えてきた。既存のWebアプリケーションに少しのコードを追加するだけで、機能もデザインも付加できるこれらのライブラリは非常に魅力的だ。 ここではテーブルで組んだリストに対して、まるで表計算ソフトのような操作性を提供するFlexigridライブラリを紹介したい。 ネイティブアプリケーション並みのリストを実現 FlexigridとはPaulo P. Marinas氏が開発・公開している
時代はサーバ仮想化からコンテナへ あらためて整理したい企業ITにおける コンテナ活用の基礎と採用メリットを紹介 RPAによる自動化を年30万で実現 小さな投資が目に見える大きな効果に! デジタル化によるわかりやすい業務効率向上 ITインフラ運用からの解放 HCI+JP1による統合運用による負荷激減で 次世代IT部門への役割変革へ一歩前進 ものづくり現場の情報セキュリティ インダストリー4.0は製造業の変革期 工場のデジタル化によるリスクへの対応 身近な改善の第一歩! ニューノーマルな働き方を前提にした これからの時代のWi-Fi環境構築のポイント データ活用は次のステージへ トラディショナルからモダンへ進化するBI 未来への挑戦の成功はデータとともにある 今を知り、未来を見据える 培ってきたノウハウを最新技術へ対応させる レガシーシステムのモダン化実現への道 サーバースペシャリストへの道
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く