別のjavascript純文字操作
3619 ワード
変換元:http://tmxk.org/thread-637-1-1.html
試合をする時、jsコードがあることを発見して、とても奇抜で、それからその原理を探して、この転載を残して記念の下にしましょう.
Ps:jsを実行して、chromeブラウザで、F 12を押して、枠を出てからConsoleを選択して、jsコードを貼ればいいです.
【前提】
javascriptでは、
若し
s="abcdefg";
則
s[0]=a;s[1]=b;s[2]=c;s[3]=d;s[4]=e;s[5]=f;s[6]=g;
ブラウザのスクリプト解釈エンジンは、スクリプトに異常が発生した場合に特定の文字を返します.単語を保持します.上記の方法でこれらの保持単語を取得すると、いくつかのアルファベットが得られます.
【ルール】
1.値がtrueの式の前に+という記号を付けると1になります.
2.偶数個~ないに相当し、奇数個は1個に相当し、現在値に1を加えた後に逆をとる.
3.+[]は、演算ではなく数字を接続するためのハイフンに相当します.
4.()同様に演算の優先度を区別することができ、括弧内は括弧の外より先である.
【基本文字】
【数字】
【リザーブワード】
【形成関数】
上記の方法で得られたものは
数字、スペース、"-",[","],"a","b","c","d","e","f","i","j","l","n","N","o","O","r","s","t","u"
海外のハッカーの考え方は、既存のアルファベットでfunctionなどの保留字を構築し、alert(location)でhttp://のpと/文字を取得することで、escapeとunescape関数ですべてのアルファベットを構築し、javascriptの文法に従って体系を形成することができる.
既存:
試合をする時、jsコードがあることを発見して、とても奇抜で、それからその原理を探して、この転載を残して記念の下にしましょう.
Ps:jsを実行して、chromeブラウザで、F 12を押して、枠を出てからConsoleを選択して、jsコードを貼ればいいです.
【前提】
javascriptでは、
若し
s="abcdefg";
則
s[0]=a;s[1]=b;s[2]=c;s[3]=d;s[4]=e;s[5]=f;s[6]=g;
ブラウザのスクリプト解釈エンジンは、スクリプトに異常が発生した場合に特定の文字を返します.単語を保持します.上記の方法でこれらの保持単語を取得すると、いくつかのアルファベットが得られます.
【ルール】
1.値がtrueの式の前に+という記号を付けると1になります.
2.偶数個~ないに相当し、奇数個は1個に相当し、現在値に1を加えた後に逆をとる.
3.+[]は、演算ではなく数字を接続するためのハイフンに相当します.
4.()同様に演算の優先度を区別することができ、括弧内は括弧の外より先である.
【基本文字】
[]= // ""
~[]=-1
![]=false
!![]=true
!+[]=true
【数字】
+[]=0
+!![]=1=+!+[]
!+[]+!![]=2=!![]=!![]+!![]
!+[]+!![]+!![]=3=!![]+!![]+!![]
!+[]+!![]+!![]+!![]=4=!![]+!![]+!![]
!+[]+!![]+!![]+!![]+!![]=5=!![]+!![]+!![]+!![]+!![]
!+[]+!![]+!![]+!![]+!![]+!![]=6=!![]+!![]+!![]+!![]+!![]+!![]
!+[]+!![]+!![]+!![]+!![]+!![]+!![]=7=!![]+!![]+!![]+!![]+!![]+!![]+!![]
!+[]+!![]+!![]+!![]+!![]+!![]+!![]+!![]=8=!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]
!+[]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]=9=!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]
【リザーブワード】
(~[]+[])[+[]]=-
![]=false
(![]+[])[+[]]=f
(![]+[])[+!![]]=a
(![]+[])[!![]+!![]]=l
(![]+[])[!![]+!![]+!![]]=s
(![]+[])[!![]+!![]+!![]+!![]]=e
!![]=true
(!![]+[])[+[]]=t
(!![]+[])[+!![]]=r
(!![]+[])[!![]+!![]]=u
(!![]+[])[!![]+!![]+!![]]=e
{}=[object Object]
({}+[])[+[]]=[
({}+[])[+!![]]=o
({}+[])[!![]+!![]]=b
({}+[])[!![]+!![]+!![]]=j
({}+[])[!![]+!![]+!![]+!![]]=e
({}+[])[!![]+!![]+!![]+!![]+!![]]=c
({}+[])[!![]+!![]+!![]+!![]+!![]+!![]]=t
({}+[])[!![]+!![]+!![]+!![]+!![]+!![]+!![]]=
({}+[])[!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]]=O
({}+[])[!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]]=b
...
({}+[])[(!+[]+!![]+!![]+!![])*(!+[]+!![]+!![]+!![])+~!![]]=]
+{}=NaN
(+{}+[])[+!![]+[]]=a=(+{}+[])[+!![]]
(+{}+[])[+[]]=N=(+{}+[])[!![]+!![]]
(+!![])/(+[])=Infinity
((+!![])/(+[])+[])[+[]]=I
((+!![])/(+[])+[])[+!![]]=n
((+!![])/(+[])+[])[!![]+!![]]=f
((+!![])/(+[])+[])[!![]+!![]+!![]]=i
((+!![])/(+[])+[])[!![]+!![]+!![]+!![]]=n
((+!![])/(+[])+[])[!![]+!![]+!![]+!![]+!![]]=i
((+!![])/(+[])+[])[!![]+!![]+!![]+!![]+!![]+!![]]=t
((+!![])/(+[])+[])[!![]+!![]+!![]+!![]+!![]+!![]+!![]]=y
{}[[]]=undefined
({}[[]]+[])[+[]]=u
({}[[]]+[])[+!![]]=n
({}[[]]+[])[!![]+!![]]=d
({}[[]]+[])[!![]+!![]+!![]]]=e
({}[[]]+[])[!![]+!![]+!![]]+!![]]]=f
({}[[]]+[])[!![]+!![]+!![]]+!![]]+!![]]]=i
({}[[]]+[])[!![]+!![]+!![]]+!![]]+!![]]+!![]]]=n
({}[[]]+[])[!![]+!![]+!![]]+!![]]+!![]]+!![]]+!![]]]=e
({}[[]]+[])[!![]+!![]+!![]]+!![]]+!![]]+!![]]+!![]]+!![]]]=d
【形成関数】
上記の方法で得られたものは
数字、スペース、"-",[","],"a","b","c","d","e","f","i","j","l","n","N","o","O","r","s","t","u"
海外のハッカーの考え方は、既存のアルファベットでfunctionなどの保留字を構築し、alert(location)でhttp://のpと/文字を取得することで、escapeとunescape関数ですべてのアルファベットを構築し、javascriptの文法に従って体系を形成することができる.
既存:
Function=array["sort"]["constructor"]
Array=array["constructor"]
Bolean=false["constructor"]
Number=0["constructor"]
Object = {}["constructor"]
String = string["constructor"]
Function.prototype.call=f["call"]
String.prototype.concat=string["concat"]
Array.prototype.join=array["join"]
Array.prototype.slice=array["slice"]
Array.prototype.sort=array["sort"]