タグ

JavaScriptとieに関するdenkenのブックマーク (20)

  • 教科書に載らないWebアプリケーションセキュリティ 第1回 [これはひどい]IEの引用符の解釈 − @IT

    XSSにCSRFにSQLインジェクションにディレクトリトラバーサル……Webアプリケーションのプログラマが知っておくべき脆弱性はいっぱいあります。そこで連載では、そのようなメジャーなもの“以外”も掘り下げていきます(編集部) 小さな話題が面白い 皆さん、はじめまして。はせがわようすけと申します。 「教科書に載らないWebアプリケーションセキュリティ」ということで、Webアプリケーションのセキュリティに関連する、普段あまり見掛けないような小さな話題を取り上げていきたいと思います。 セキュアなWebアプリケーションを実現するために、開発者の方だけでなく、Webアプリケーションの脆弱性検査を行う方々にも読んでいただきたいと思っています。重箱の隅を楊枝でほじくるような小さな話題ばかりですが、皆さんよろしくお願いします。 さて第1回は、Internet ExplorerがHTMLを解釈する際の引用

    教科書に載らないWebアプリケーションセキュリティ 第1回 [これはひどい]IEの引用符の解釈 − @IT
    denken
    denken 2009/03/05
    バッククオートの恐怖
  • IEでのテキストノード走査の高速化 - os0x.blog

    に釣られて。 HatenaStar.js 1380 行目 テキストノード走査 一番のボトルネックはやはりここですね。IEなので、こんな感じでベタに計測。 makeTextNodes: function(c) { if (c.textNodes || c.textNodePositions || c.documentText) return; if (Ten.Highlight.highlighted) Ten.Highlight.highlighted.hide(); c.textNodes = []; c.textNodePositions = []; var isIE = navigator.userAgent.indexOf('MSIE') != -1; var texts = []; var pos = 0; var st = new Date*1; (function(node,

    IEでのテキストノード走査の高速化 - os0x.blog
  • IEのよくわからない挙動 - smellman's Broken Diary

    仕事で、こんな要件があった。 あるリンクを押したらポップアップでhoge0001.htmlを表示して、同時に開いているブラウザの画面をhoge0002.htmlになるようにしてほしい。 というわけでこんなコードを書いた。 <a href="javascript:;" onClick="window.open('/popup/hoge0001.html','_blank','menubar=no,scrollbars=yes,resizable=yes,width=760,height=760'); document.location.href='/hoge0002.html';">hoge</a> Firefox 3.0.4で動作チェックをしてテスト環境に入れてみたらお客さんからIE6だと動かないと言われたので調査してみた。 とりあえずwindow.openで処理が止まってないか調べるため

    IEのよくわからない挙動 - smellman's Broken Diary
    denken
    denken 2008/12/06
    JS無効環境を無視する用件ならおk
  • IE の innerHTML や appendChild で要素が挿入された瞬間を取得する方法 - IT戦記

    要素が挿入された瞬間を取得する 今までは出来ないと思っていたのですが、今日いろいろ試していて出来る方法が分かりました。 ですので、ちょっと紹介したいと思います。今のところアイデアなので、実用性は?です。 方法 HTML に以下の style 要素を挿入することで実現することができます。 <style type="text/css"> * { display: expression(function() { if (!this.__mark) { this.__mark = true; alert('inserted node: ' + this.tagName); } return ''; }.apply(this)); } </style> 実際に例を見てみましょう http://amachang.art-code.org/ieexpression/000.html <!DOCTYPE

    IE の innerHTML や appendChild で要素が挿入された瞬間を取得する方法 - IT戦記
  • IE8 で実装された Selectors API とは何か? - IT戦記

    はじめに IE8 には Selectors API という新しい仕様が実装されました。 ということで、今後 DOM 操作 API の主流になるであろう Selectors API についてまとめておきます。 Selectors API が使えるブラウザ 2008 年 3 月 6 日現在の一覧 WebKit Build Archives | WebKit (開発版の Safari) Windows | Official Site for Microsoft Windows 10 Home & Pro OS, laptops, PCs, tablets & more (IE8 の Beta 版) Selectors API とは Selectors API とは W3C で定義された仕様です。詳細に関してはこちらをどうぞ 簡単に説明すると getElementsByTagName や getE

    IE8 で実装された Selectors API とは何か? - IT戦記
    denken
    denken 2008/03/08
    CSSセレクタを使って要素を指定できる。CSSなので擬似クラス
  • IE7.js登場 - IEのCSS/HTML非準拠はこれで対応 | エンタープライズ | マイコミジャーナル

    Dean Edwards氏は7日(米国時間)、IEの動作をW3C標準仕様へ準拠させるためのライブラリIE7.jsの最新版を公開した。IE7.jsはJavaScriptで開発されたMS Internet ExplorerのHTML/CSS表示を調整するライブラリ。IE7.jsを使うことでMSIEのHTML/CSSまわりの表示処理をよりW3C標準規約に準拠したものにする。IE5やIE6で透過PNGを表示できるようにもなる。 IE7.jsは基的にMSIE5/6向けに用意されていたライブラリをIE7に対応させたもの。これまでのモジュール構造は廃止され、IE7.jsやIE8.jsといったように個別のファイルに分離されている。ホスティング先もGoogle Codeへ変更された。IE7.jsはサイズも縮小され、圧縮した状態で11KBほど。またbase2.DOMのセレクタエンジンを使うことでより高速に動

  • IEにFirebugの機能を提供する - "DebugBar"登場 | エンタープライズ | マイコミジャーナル

    DebugBarの動作例 - DebugBarサイトから抜粋 Webアプリケーション開発に必須のツールといえばFirefoxとそのエクステンションFirebugだ。その機能は驚くべきものがあり、もはやFirebugなくてはWebアプリケーション開発はできないと考えるデベロッパやデザイナは少なくない。 エクステンションが豊富に用意されているFirefoxだが、ほかのWebブラウザでも似たような機能を提供するものがある。ここでは先日新しいバージョンが公開されたDebugBarを紹介したい。DebugBarはIEを対象として開発されたツールで、Firebugの機能をIEでも実現することを目指している。 今回公開されたバージョン(5.0 beta 1)では新しくDOMタブが追加されている。DOMツリー上のノードが選択されると、Source/Style/Comp.Style/Layout/Attrs

  • IEの気持ち - 最速チュパカブラ研究会

    amachang史上最多のブクマ数をマークした例のwindow.documentの高速化に関して、便乗してちょっと書いてみようと思います。 基礎知識 ブクマコメントで 2007年10月11日 b:id:staki vbやった事ある人なら自然に沸く発想だったりする。理屈も同じなんじゃなかろうかと妄想。五倍ってのは中々無かったけど。 * と指摘されているのは、たぶんCOMまわりの事だと思います。御存知のように、Windowsはシステム内のあらゆる部品をCOM(Component Object Model)オブジェクトとして実装しており、IE内のxxElementやDocument、Window、そしてIE自身もCOMです。 で、javascriptでよくやる window.document という操作も、(amachangのテクニックを使っていない場合は)COMを通して行うことになります。この

  • IEの気持ち(深入り編) - 最速チュパカブラ研究会

    昨日の続きです。昨日の記事がまったくデタラメだとさすがに気まずいので、Invoke が呼ばれてるよ、という事実ぐらいは確かめようと思いました。私はバイナリアンではないのですが、がんばってMSHTMLの中を追ってみることにします。 まず、C++からIDispatch::Invokeを呼んだ場合と、Javascriptから window.document を参照した場合の2つの処理が合流するところを探しました。 ↑ここです。 スタックの中を覗くと、引数が見えます。 window.document の dispid(呼び出したいメソッドのID)である0x47fが確認できます。 では、ここにブレークポイントを仕掛け、amachangのハックをしない状態で、以下のコードを実行してみます。 alert(document); するとブレークポイントがヒットします。 dispid は 0x47f なので、

    IEの気持ち(深入り編) - 最速チュパカブラ研究会
  • IT戦記 - 一行で IE の JavaScript を高速化する方法

    以下の一行をすべての JavaScript の前に読み込む /*@cc_on _d=document;eval('var document=_d')@*/ この一行を読み込むことによって IE での document へのアクセスが 5 倍速くなります。 たとえば 以下のように、読み込む前と読み込んだ後を比較してみます。 // Before var date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date - date); // 643 /*@cc_on _d=document;eval('var document=_d')@*/ // After date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date -

    IT戦記 - 一行で IE の JavaScript を高速化する方法
    denken
    denken 2007/10/11
    5倍速いvs10万ループで0.5秒速い
  • はてなブログ | 無料ブログを作成しよう

    空き地の気になる植物〈前編〉 はじめに 野生化した園芸種の花、地表を覆い尽くすツル植物、シンボルツリー化した雑木など、空き地を訪れる中で印象的な植物に出会うことがある。 これらの姿を観察していると、その土地の管理方法が窺えたり、自然の力強さをあらためて認識させられたりする。 記事…

    はてなブログ | 無料ブログを作成しよう
    denken
    denken 2007/09/26
    IEでmin-widthとかmax-widthを再現するJavaScript
  • JavaScriptを埋め込んだ画像を作ってみました

    補足 この記事は旧徳丸浩の日記からの転載です。元URL、アーカイブはてなブックマーク1、はてなブックマーク2。 備忘のため転載いたしますが、この記事は2007年7月17日に公開されたもので、当時の徳丸の考えを示すものを、基的に内容を変更せずにそのまま転載するものです。 補足終わり 寺田さんの日記に触発されて、JavaScriptを埋め込んだPNG画像を作ってみました。 注意:この画像にはJavaScriptが埋め込んであります。 ここをクリックすると、JavaScriptが発動し、あなたのクライアント上でCookieの値を表示します(IE限定です) 追記 ImageMagic の convertコマンドでPNG→GIF→PNGと変換しても、JavaScriptは削除されませんでした。これは、T.Teradaさんの解説の追試に過ぎませんが、一応ご報告まで。 追記(2007/10/10)

    JavaScriptを埋め込んだ画像を作ってみました
  • JavaScriptでIEかどうかをたったの1行で判別する方法:phpspot開発日誌

    Dean Edwards: Sniff! My current frog exaggerator of choice JavaScriptでIEかどうかをたったの1行で判別する方法。 なんと、次の1行だけで、isMSIE 変数に、IEで見れば true 、そうでなければ false を代入することが出来ます。 var isMSIE = /*@cc_on!@*/false; 次のサンプルコードで確認しました。 <html> <script language="javascript"> var isMSIE = /*@cc_on!@*/false; if (isMSIE) { alert('IE!'); } else { alert('not IE!'); } </script> <body> </body> </html> IEであれば IE! を alert し、そうでなければ not I

    denken
    denken 2007/04/05
    document.documentElement.getAttribute("style")とdocument.documentElement.styleを比較する方法よりもコードが短くてすむが、ここまでくると暗号臭が強い。
  • IEの落し方 - Thousand Years

    id:starocker:20060901:p1で紹介されている”たった1行のJavaScriptコードでInternet Explorerをクラッシュさせる方法”で昔同じようにクラッシュしたがことがあったのでそのときのコードのいくつかのサンプル。 紹介されているコード もっと短くなりますね。これ一瞬無限ループ(?-?)みたいに思えてこないでもないけど無限ループではないです。最近のブラウザは無限ループで落ちるようには設計されていないです。 for(w in document.write){ document.write(w); }; これもクラッシュします for(i in document.write); for(i in alert); for(i in print); 検証その1 種あかしはあとでするとしてまず以下のコードを実行してみます。 alert(document.write)

    IEの落し方 - Thousand Years
  • sta la sta - たった1行のJavaScriptコードでInternet Explorerをクラッシュさせる方法

    注意! IEを使用中の方は、リンク先の記事内にクラッシュコードのあるサンプルページへのリンクがあるので、クリックしないようにくれぐれもお気をつけ下さい! 「you can find the code here」の「here」にあります。クラッシュをテストしたい方は別ですが。 http://www.modernlifeisrubbish.co.uk/how-to-crash-internet-explorer.asp 普段、ネットサーフィンでIEを使用している方にとっては、あまり嬉しくない話だろう。 こちらの記事の方がIEとFireFoxの両方で動作するJavaScriptコードを書く仕事をしている最中に、偶然にも、IEをクラッシュさせるコードを見つけてしまったそうな。 そのコードは複雑怪奇なものではなく、以下のようなたった1行のコードのようだ。 記事内に、上記コードを仕組んだサンプルページ

    sta la sta - たった1行のJavaScriptコードでInternet Explorerをクラッシュさせる方法
    denken
    denken 2006/09/03
    「実際にIEで試してセキュリティに恐怖を感じた方は、これを機にブラウザの乗り換えを検討されてはいかがだろうか。」←まぁ広い意味ではセキュリティの話になるのだろうけど、ちょっと引っかかる言い回し
  • 最速インターフェース研究会 :: IEはwindow.openでリファラを送らない

    River nastro adesivo personalizzato bingo brescia http://lazzero.info/immagini/74.html molle ad aria alto adige quotidiano http://miniato.info/sommario/26.html hotel 2 stella canazei tuttosport sito ufficiale http://bindo.info/contatto/81.html alan sorrenti vendo maggiolino http://bindo.info/registrati/60.html ufficio arredati imperia agriturismo civate http://cenni.info/scuola/47.html vendita dvd

    denken
    denken 2006/08/21
    「内輪なページからのリファラ隠しにwindow.openを使ってたりしたこともあるのですが、他のブラウザだと普通に送るので使えません。」
  • IEにもFirefoxにもJavaScript処理の脆弱性--次期リリースで修復へ

    MicrosoftとMozillaが、両社のウェブブラウザに存在するセキュリティホールが侵入者によって悪用され、ファイルを盗まれるおそれがあることを認めた。だが、こうした悪用は条件的に難しく、リスクはそれほど大きくないとも話している。 セキュリティ専門家は今週に入って、「Internet Explorer(IE)」および「Firefox」、そしてMozillaのその他のブラウザでJavaScriptを処理する方法に脆弱性があると警告していた。攻撃者がこうした問題を悪用して、ファイルを不正にアップロードする可能性があり、マシンユーザーの個人情報が危険にさらされるというのである。 しかし、ユーザー側が多くの操作を行わなければ同脆弱性の悪用は難しいことから、MicrosoftおよびMozillaは差し迫った危険はなく、修正パッチをすぐにリリースする必要もないと考えている。関係者によれば、両社はブ

    IEにもFirefoxにもJavaScript処理の脆弱性--次期リリースで修復へ
    denken
    denken 2006/06/10
    なんかCPU資源を全部持ってかれるバグとかこれ関係? 違う?
  • 4月の月例パッチ前に、Webコンテンツを修正する

    マイクロソフトの4月の月例セキュリティ修正プログラム(パッチ)に関しては、日7日に事前通知が公開された。今回のパッチについては、「MSRC(Microsoft Security Response Center)Blog」などでもいくつかの情報を掲載している。 日時間の4月12日未明に公開されるパッチは、Windowsの5つの脆弱性に対してのものだ。注目されるのは、Internet Explorer(IE)の危険な脆弱性に関する修正パッチ。これは、俗に「createTextRange()問題」と呼ばれているもので、細工されたWebページを表示させるだけで、悪意の第三者によって、Webページを閲覧したPC上で任意のコードが実行させられる恐れがある。 すでに、脆弱性を悪用したexploitコードやトロイの木馬など悪意のプログラムがインターネット上に出現していることが確認されており、できるだけ

    denken
    denken 2006/04/22
    「なお、このActiveXの挙動の変更だが、特許権侵害であるとして米Eolas Technologiesが訴訟した件に対応するもので、本来、セキュリティの問題とは関係ない。」
  • 2log.net

    This domain may be for sale!

    denken
    denken 2006/03/27
    コメント欄にも使えるJavaScriptが
  • IE が onload="window()" で死ぬ話 | 水無月ばけらのえび日記

    と書いてあると、それだけで IE が死ぬという話。うまくすると任意のコードが実行できる模様です。既に PoC が公開されていますが、残念ながら私の環境ではうまく動作しませんでした。あるいは日語環境だと駄目なのかもしれませんが……日語環境でも IE が死亡することは確認できたので、しっかり影響は受けるようです。 「IE が onload="window()" で死ぬ話」へのコメント (7件)関連する話題: セキュリティ / Internet Explorer

    denken
    denken 2005/12/04
    「<body onload="window()">と書いてあると、それだけで IE が死ぬという話。」
  • 1