This domain may be for sale!
ヌルい勉強会(仮称)に参加してきました。参加したみなさま、電車が遅延してるなかお疲れ様でした。首謀者の mincemaker さん、大赤字でご苦労様でした。次回は特定個人に負担がかかりすぎないようにもうちょっと考えましょう。 セキュリティホール memo につながらない件がすかさずネタになっていたり、ドキドキするのに合わせて初音ミクがネギを振り回したりと、非常に楽しかったです。 とりあえず、私のプレゼンをあげときます。 http://openmya.hacker.jp/hasegawa/public/20071107/s6/h6.html?file=data.txt なんだか攻撃者指向なプレゼンで申し訳ないです…。あと、最後のページは SEO(Sekoi Ego Optimize)してますので、検索結果は適当です。 id:amachang さんのS6 を初めてつかってみたんですけど、あまり
WebOS Goodies へようこそ! WebOS はインターネットの未来形。あらゆる Web サイトが繋がり、共有し、協力して創り上げる、ひとつの巨大な情報システムです。そこでは、あらゆる情報がネットワーク上に蓄積され、我々はいつでも、どこからでも、多彩なデバイスを使ってそれらにアクセスできます。 WebOS Goodies は、さまざまな情報提供やツール開発を通して、そんな世界の実現に少しでも貢献するべく活動していきます。 本日は、codeなにがしウィジェットを作る過程で思いついた、ちょっとしたネタをご紹介。外部から API などで取得したテキストを安全に自サイトで表示するための Tips です。 codeなにがし API のレスポンスに含まれるデータは、ほとんどが HTML エスケープされた状態で渡されます。ですので、基本的にはそのまま HTML に挿入できます。これはこれで便利な
http://d.hatena.ne.jp/hoshikuzu/20060130#P20060130BARSFAKE http://d.hatena.ne.jp/amachang/20071010/1192012056 (IT戦記 - 一行で IE の JavaScript を高速化する方法) はじめに 次のような限定されたケースにおいてなのですが。説明上の都合でこれを課題Aと呼ぶこととします。 <SCRIPT TYPE="text/javascript"> <!-- var strA = "$data"; // ・・・以下サイト運営者による処理記述例 alert(0); //--> </SCRIPT>上記のようなケースに限定してのオハナシですけれど、$dataをエスケープする方向でのXSS対策として金床さんなどによってかつて論議されて、このままでは使えそうにないと棄却されたJavaScr
このページは? アークウェブのスタッフが、システム開発についての “個人メモじゃもったいないけどブログ未満”的コンテンツをまとめているWiki。 お役に立てば幸いです。B^) 今までは、 var animal = new Object(); animal.Human = function (name) { this.name = name; } のように、クラス定義&コンストラクタを書いてたけど、 var animal = new Object(); animal.Human = function Human(name) { this.name = name; } var className = animal.Human.toString(). match(/function[ ]+([a-zA-Z0-9_]+)/)[1]; console.log(className); // Human
バージョン Firefoxの1.508ぐらいの古いもので考えてみました。 background:url("javascript:ほえほえ") background:url("javascript:ほえほえ");Firefoxでは上記のようなスタイル記述をほどこしたbody要素内の各要素で、ほえほえを安易に書いたときに、documentオブジェクトには手が出せません。つまりcookieを単純に盗み出すことが出来ないのかもしれません。権限がないというエラーメッセージが出るのです。また、JavaScriptの組み込み関数も利用できません。alert()とか。XSSされにくい感じです。windowオブジェクトにも制限がかかっているかもしれません。 でもでもでも locationオブジェクトそのものに値を設定はできます。 location="attacker.example.com";これでURLの
SEの進地です。 2007年1月に投稿した「Web 2.0的アプリのセキュリティ:機密情報にJSONPでアクセスするな」は多くの方にお読みいただきました。誤りも指摘され、元エントリーに改修を加えましたが、かなり読みづらい状態になってしまっています。また、JSON、JSONPのセキュリティに関する新たな話題もSea Surfers MLで議論されているのを読み、自分自身の認識や理解も変化しているので、このエントリーでもう一度JSON、JSONP(+JavaScript)に機密情報を含めることの是非と方策を整理、検討したいと思います。 ○JSON、JSONP、JavaScriptによるデータ提供時にセキュリティ対策上留意すべき特徴 JSON、JSONP、JavaScriptによるデータ提供時に留意すべき特徴としてあるのが、「クロスドメインアクセス可能」というものです。JSONPだけでなく、JS
AOL OpenAuthがすごいとか、JSONPによる認証だとか騒いでたけど、もう去年の11月にAOL Web AIM APIが公開されていたということについて、なんで気づいてなかったのか。一年近くもこれを正当に評価してこなかったことは、恥ずべきことだ。 Web AIM APIは、以下の理由で画期的、あるいはちょっとネガティブな側から見れば問題児なAPIである。そして、これからWebサービスAPIを設計/開発する人、およびWebのセキュリティを考える人にとっては、少なくとも現在こういったWebサービスの実装が存在していることについては、ちゃんと注視しておかなければならない。 1. サーバレスでメッセンジャーアプリを構築できる これがとりあず一番目に重要なポイント。これはAPIリクエストとしてJSONP形式のバインディング(運搬方法)を採用していることによる。サーバレスでアプリが作れることの
Kris Zyp now works for SitePen , an extremely forward-thinking company who has enabled Kris to continue developing next generation web technologies. Kris Zyp blogs on JSON here , Comet here , Open Web and SitePen backed development here , and various other topics here . Xucia is an software development company that encompasses a number Kris Zyp's open source software projects including Persevere ,
補足 この記事は旧徳丸浩の日記からの転載です。元URL、アーカイブ、はてなブックマーク1、はてなブックマーク2。 備忘のため転載いたしますが、この記事は2007年7月17日に公開されたもので、当時の徳丸の考えを示すものを、基本的に内容を変更せずにそのまま転載するものです。 補足終わり 寺田さんの日記に触発されて、JavaScriptを埋め込んだPNG画像を作ってみました。 注意:この画像にはJavaScriptが埋め込んであります。 ここをクリックすると、JavaScriptが発動し、あなたのクライアント上でCookieの値を表示します(IE限定です) 追記 ImageMagic の convertコマンドでPNG→GIF→PNGと変換しても、JavaScriptは削除されませんでした。これは、T.Teradaさんの解説の追試に過ぎませんが、一応ご報告まで。 追記(2007/10/10)
JavaScriptTaken SPC : JavaScript の除去には nsIScriptableUnescapeHTML を使え(?)もか日記 - html テキストを DOMDocument にする 上記そのままです。ありが10匹。 確かめました。 is(unescapeHTML( ''), ''); is(unescapeHTML( 'TEXTHELLO BLOG'), 'TEXT'); is(unescapeHTML( 'yahoo'), 'yahoo'); is(unescapeHTML( 'CODE'), 'CODE', '誤ったpreタグ'); is(unescapeHTML( 'YAHOO'), 'YAHOO', '数値実体参照を使ったスクリプトの埋め込み'); is(unescapeHTML( 'YAHOO'), 'YAHOO', '数値実体参照を使っ
Explore Recent Photos Trending Events The Commons Flickr Galleries World Map Camera Finder Flickr Blog Prints The Print Shop Prints & Wall Art Photo Books Get Pro Pro Plans Stats Dashboard Get Auto-Uploadr Log In Sign Up Log In Explore Trending Events The Commons Flickr Galleries Flickr Blog The Print Shop Prints & Wall Art Photo Books Get Pro About Jobs Blog Advertise Developers Guidelines Help H
http://ajaxian.com/archives/subspace-enabling-trusted-cross-domain-ajax http://www2007.org/papers/paper801.pdf これ読んだときは単純に「へー、これでJSONPみたいなのを気軽にできるんだったらまあいい話なのかなあ」とか思ったんだけど、あくまでJavaScript読み込み元のページへの無制限リソースアクセスができちゃうのをSandboxにとどめるための手法ってだけなんで、たとえばブラクラみたいなコードをダウンロードしちゃったときはブラウザ全体でアウトになるから、やっぱそのレベルまで考えるんであれば使えないよなあ。 まあ言ってることの有用度はともかく、さまざまなクロスドメインコミュニケーションの手法とかが整理されていて、そういう意味でいい資料だとおもう。 とりあえずCross Doma
昨日の日記に対して、id:ikepyonさんからトラックバックを頂戴した。内容はそちら(Tipsと考え方とXSS対策)を読んでいただくとして、興味深いテーマなので少し突っ込んでみたい。 # 日によって「です・ます」で書いたり、「だ・である」で書いているのは気分の問題なので、あまり気にしないでいただきたい Tipsだけでなく、物事の本質を見極め、何が危険で、何が安全なのかということを考える必要があると思う。 昨日の記事は、(一般的な)XSS対策として、どの文字をエスケープするのが「本質的」だったかを考えたかったのであって、あれをTipsととらえると確かに失敗する。 JavaScriptのスクリプトなどが入っている場合も昨日と同じ方法論で考えることは可能である。まずはこれを検討してみよう。 スクリプトがonXXXのイベントハンドラとして記述されている場合 この場合は、HTMLタグの属性値として
5/11の日記XSS対策:JavaScriptなどのエスケープ - ockeghem(徳丸浩)の日記に対する金床さんのコメントに触発されて、JavaScriptのエスケープについて検討してみよう。ただし、現実のアプリケーション開発においては、私はJavaScriptの動的生成を推奨していないが、これはエスケープ処理をどのように考えるかと言うレッスンのつもりで検討することにする。 金床さんのコメントで紹介されたリンクには、以下のようなガイドライン案が提案されている。 JavaScriptの文字列でのエスケープ手順としては、以下が今のところ正解っぽい感じです。 1. 「\」を「\\」に置換する 2. 「"」を「\"」に置換する 3. 「'」を「\'」に置換する 4. 「/」を「\/」に置換する 5. 「<」を「\x3c」に置換する 6. 「>」を「\x3e」に置換する 7. 「0x0D(CR)
2007年5月8日 怪しいJavaScriptの挙動を安全に試す方法 http://pmelson.blogspot.com/2007/05/quick-dirty-javascript-sandbox.html 『Quick & Dirty JavaScript Sandbox』(Paul Melson's Blog より) 怪しいJavaScriptに対してIPSのアラートがあがったとき、どうするか。VMware内からサイトにアクセスし、何が起こるか試すのもアリだが、unescape() が多用されているような場合だと、Mwareを使用する方法では確認が難しいため、別の方法をとる必要がある。 Paul氏のブログでは、JavaScriptのサンドボックスを作ってJavaScriptの挙動を確認する方法を紹介している。サンドボックスの実行に関しては、everyoneにも属さないローカルユー
悪質な「JavaScript」が、ますます狡猾になっている。Arbor Networksの上級セキュリティエンジニアであるホセ・ナザリオ博士によれば、今日のJavaScriptは、標的のWebブラウザや脆弱なコンポーネント、アクセス可能なクラス識別子(CLSID)を特定したり、個別にカスタマイズした攻撃を仕掛けたりすることも可能だという。 ナザリオ氏は、「NeoSploit」と呼ばれる新たなマルウェアツールが、少なくとも7種の異なる手段の中から標的の弱点を衝くものを選択し、PCへの感染を広げている事実を把握したと述べている。 「過去数カ月の間に、この種の攻撃や悪質なJavaScriptが大量に出回った。JavaScriptがより自己防衛的に、なおかつ攻撃的に悪用されるケースが増えている」(ナザリオ氏) ナザリオ氏は4月18日に現地で開かれたセキュリティイベント「CanSecWest」に出席
「http://d.hatena.ne.jp/brazil/20070420/1177060289」でFirefox専用の第二引数に環境の指定をとるevalの使い方について説明されています。その元はこちら「http://www.tom.sfc.keio.ac.jp/~sakai/d/?date=20070414#p02」で、僕もこれを見たときに初めてしりました。そのころ僕はグリモンのスクリプトをいじっていたので、ちょっと気になっていくつか試してみて、ネタ元のページに以下のようなブクマコメントをしました。 evalの第2引数しらなかった。これを応用すると、GreasemonkeyでusafeWindow.xxx() とする場合、xxx内部からeval("GM_xmlhttpRequest", arguments.callee.caller)でGM_xmlhttpRequestが取得されてして
Microsoftの.Net Passportを初めとして、いわゆるシングル・サインオンという分野で大成功を収めたものはあまり聞かない(僕が知らないだけ説)わけですが、手軽にシングル・サインオン的なことを実現できるシステムをJavaScriptで実現してみたとかそんなものが、Simple Single Sign-onです(リンク先はFlashムービー)。 技術的には単純明快で、マスター・パスワードとサイトのURL(やドメイン)をコロン(:)で連結した文字列をMD5を利用して(デフォルトでは)8文字のパスワードを生成するというもの。つまり、あるURL(やドメイン)やドメインに対するパスワードを自動生成するシステムなわけです。 Bookmarkletという手軽な手段だけでも実現可能になっているので、パスワードが必要なあるサイトにアクセスした時、パスワード入力フォームにフォーカスをあわせてBoo
Enterprise Strategy Group: Go-to-market Expertise to Help You Win
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く