CTFでよく見られる復号化(クラシック)

8321 ワード

ASCIIコード
ASCIIコードは、指定された7ビットまたは8ビットのバイナリ配列を使用して128または256種類の可能な文字を表す.標準ASCIIコードは基礎ASCIIコードとも呼ばれ、7ビットのバイナリ数(残りの1ビットのバイナリは0)を使用してすべての大文字と小文字、数字0から9、句読点、およびアメリカ英語で使用される特殊な制御文字を表す.
次のようになります.
0~31および127(計33個)は、制御文字または通信専用文字(残りは表示可能文字)であり、例えば、制御文字:LF(改行)、CR(リターン)、FF(ページング)、DEL(削除)、BS(バック)、BEL(鳴動ベル)等;通信専用文字:SOH(文頭)、EOT(文末)、ACK(確認)などです.ASCII値は8、9、10、13でそれぞれチェックアウト、タブ、改行、およびリターン文字に変換されます.これらは特定のグラフィック表示はありませんが、異なるアプリケーションによってテキスト表示に異なる影響を及ぼします.
32~126(95個)は文字(32はスペース)で、48~57は0~9のアラビア数字です.
65~90は26文字の大文字、97~122文字は26文字の小文字、残りは句読点、演算記号などである.
また、標準ASCIIでは、その最上位(b 7)がパリティビットとして用いられる.パリティとは、コード転送中にエラーが発生したか否かを検証するための方法であり、一般的には、パリティとパリティの2つに分けられる.
奇数検査規定:正しいコードの1バイト中の1の個数は奇数でなければならず、奇数でなければ最上位b 7に1を追加する;偶数検査規定:正しいコードの1バイト中の1の個数は偶数でなければならず、偶数でなければ最上位b 7に1を追加する.
後128個を拡張ASCIIコードと呼びます.x 86ベースの多くのシステムでは、拡張(または「高」)ASCIIの使用がサポートされています.拡張ASCIIコードを使用すると、各文字の8番目のビットを使用して、追加の128個の特殊記号文字、外来語アルファベット、グラフィック記号を決定できます.
符号化例:明文:hello ascii 16進法:0 x 680 x 650 x 6 c 0 x 6 c 0 x 6 f 0 x 610 x 730 x 630 x 690 x 69 10進法:101011081081119711599105105バイナリ:1100101001111 1101001010001
オンライン復号化:http://www.ab126.com/goju/1711.html
XXencodeコード
符号化例:明文:Be slow to promise and quick to perform.符号化後:cEIUQqljRm-oPm-kQaxhOLBZ 643 iN 0-lRKZXOm-oPm-kNL 7 aPr 7 h 9 U++
UUencode符号化
符号化例:明文:Be slow to promise and quick to perform.符号化後:H 0 F 4@VQO=R!Tより小さい;R!PはF]M:7-E(&%N 9"!Q=6 EC:R!T;R!P 97)F;W)M+@`.
aaencode符号化
エンコーディングの例:
明文:alert(「Hello,JavaScript」)符号化後:


゚ω゚ノ=/`m´)ノ ~┻━┻//´∇`/[’’]; o=(゚ー゚) ==3; c=(゚Θ゚) =(゚ー゚)-(゚ー゚); (゚Д゚) =(゚Θ゚)= (o_o)/(o_o);(゚Д゚)={゚Θ゚: ‘’ ,゚ω゚ノ : ((゚ω゚ノ==3) +’’) [゚Θ゚] ,゚ー゚ノ :(゚ω゚ノ+ ‘’)[o_o -(゚Θ゚)] ,゚Д゚ノ:((゚ー゚==3) +’’)[゚ー゚] }; (゚Д゚) [゚Θ゚] =((゚ω゚ノ3) +’’) [c_o];(゚Д゚) [‘c’] = ((゚Д゚)+’’) [ (゚ー゚)+(゚ー゚)-(゚Θ゚) ];(゚Д゚) [‘o’] = ((゚Д゚)+’’) [゚Θ゚];(゚o゚)=(゚Д゚) [‘c’]+(゚Д゚) [‘o’]+(゚ω゚ノ +’’)[゚Θ゚]+ ((゚ω゚ノ3) +’’) [゚ー゚] + ((゚Д゚) +’’) [(゚ー゚)+(゚ー゚)]+ ((゚ー゚3) +’_’) [゚Θ゚]+((゚ー゚3) +’’) [(゚ー゚) - (゚Θ゚)]+(゚Д゚) [‘c’]+((゚Д゚)+’’) [(゚ー゚)+(゚ー゚)]+ (゚Д゚) [‘o’]+((゚ー゚3) +’’) [゚Θ゚];(゚Д゚) [’’] =(o_o) [゚o゚] [゚o゚];(゚ε゚)=((゚ー゚3) +’’) [゚Θ゚]+ (゚Д゚) .゚Д゚ノ+((゚Д゚)+’’) [(゚ー゚) + (゚ー゚)]+((゚ー゚3) +’_’) [o_o -゚Θ゚]+((゚ー゚3) +’’) [゚Θ゚]+ (゚ω゚ノ +’’) [゚Θ゚]; (゚ー゚)+=(゚Θ゚); (゚Д゚)[゚ε゚]=’\’; (゚Д゚).゚Θ゚ノ=(゚Д゚+ ゚ー゚)[o_o -(゚Θ゚)];(o゚ー゚o)=(゚ω゚ノ +’’)[c_o];(゚Д゚) [゚o゚]=’"’;(゚Д゚) [’’] ( (゚Д゚) [’’] (゚ε゚+(゚Д゚)[゚o゚]+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o_o) +(o_o))+ ((o_o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o_o) +(o_o))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ (c_o)+ (゚Д゚)[゚ε゚]+(゚ー゚)+ ((o_o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ (c_o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ ((゚ー゚) + (o_o))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚ー゚)+ (c_o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚Θ゚)+ ((o_o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o_o) +(o_o))+ ((o_o) +(o_o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o_o) - (゚Θ゚))+ (o_o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ (o_o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o_o) +(o_o))+ ((o_o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o_o) +(o_o))+ (c_o)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o_o) +(o_o))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚ー゚)+ ((o_o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ (゚Θ゚)+ (゚Д゚)[゚o゚]) (゚Θ゚)) (’’);

url  


url符号化
エンコーディングの例:
明文:睡眠コード後:%e 7%9 d%a 1%e 8%a 7%89
jjjencode符号化
エンコーディング例:明文:alert(「Hello,JavaScript」)エンコーディング後:
$=~[];$={___:++$,$$$$:(![]+"")[$],__$:++$,$_$_:(![]+"")[$],_$_:++$,$_$$:({}+"")[$],$$_$:($[$]+"")[$],_$$:++$,$$$_:(!""+"")[$],$__:++$,$_$:++$,$$__:({}+"")[$],$$_:++$,$$$:++$,$___:++$,$__$:++$};$.$_=($.$_=$+"")[$.$_$]+($._$=$.$_[$.__$])+($.$$=($.$+"")[$.__$])+((!$)+"")[$._$$]+($.__=$.$_[$.$$_])+($.$=(!""+"")[$.__$])+($._=(!""+"")[$._$_])+$.$_[$.$_$]+$.__+$._$+$.$;$.$$=$.$+(!""+"")[$._$$]+$.__+$._+$.$+$.$$;$.$=($.___)[$.$_][$.$_];$.$($.$($.$$+"\""+$.$_$_+(![]+"")[$._$_]+$.$$$_+"\\"+$.__$+$.$$_+$._$_+$.__+"(\\\"\\"+$.__$+$.__$+$.___+$.$$$_+(![]+"")[$._$_]+(![]+"")[$._$_]+$._$+",\\"+$.$__+$.___+"\\"+$.__$+$.__$+$._$_+$.$_$_+"\\"+$.__$+$.$$_+$.$$_+$.$_$_+"\\"+$.__$+$._$_+$._$$+$.$$__+"\\"+$.__$+$.$$_+$._$_+"\\"+$.__$+$.$_$+$.__$+"\\"+$.__$+$.$$_+$.___+$.__+"\\\"\\"+$.$__+$.___+")"+"\"")())();

Unicodeコード
エンコーディング例:明文:hello
4種類の符号化方式:[Hex]:hello[Decimal]:hello


\U [Hex]:\U0068\U0065\U006C\U006C\U006F\U+ [Hex]:\U+0068\U+0065\U+006C\U+006C\U+006F
Escape/Unescape
Escape/Unescape暗号化復号/符号化復号は、%u符号化とも呼ばれ、UTF-16 BEモードを採用し、Escape符号化/暗号化は、文字対応UTF-16進数表現方式の前に%uを加算する.Unescape復号/復号は、"%u"を除いた16進数文字を復元し、utf-16から自分のターゲット文字に符号化することです.例えば、文字「中」、UTF-16 BEは「6 d 93」であるため、Escapeは「%u 6 d 93」である.
符号化例:明文:就寝符号化後:%u 7761%u 89 c 9
ノックコード
ノックコード表:1 2 3 4 5 1 A B C/KD E 2 F G H I J 3 L MN O P 4 QR S T U 5 V WX Y Z
モールスコード
モルスコープ:A.-N-...-.-.-.-.-+.-.-.-.-.1.----B-...O-,------------2 …— C -.-. P .–. : —… $ …-…- 3 …– D -… Q --.- ".-…-. & .-… 4 …- E . R .-. ’ .----./-…-. 5 … F …-. S … ! -.-.-- 6 -… G --. T - ? …–… 7 --… H … U …- @ .–.-. 8 —… I … V …- - -…- 9 ----. J .— W .-- ; -.-.-. 0 ----- K -.- X -…- ( -.–. L .-… Y -.-- ) -.–.- M – Z --… = -…-
JSfuck
JSFuckでは6文字!+だけでJavaScriptプログラムを作成できます.
符号化例:明文:alert(1)符号化後:
[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[+[]]+(![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]+[+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]])()


オンラインエンコーディング
brainfuck
Brainfuckは極小化したコンピュータ言語であり、「Turing complete」の思想に基づいて設計された言語であり、その主な設計構想は、最小の概念で「簡単」な言語を実現することであり、BrainFuck言語は8つの記号しかなく、すべての操作はこの8つの記号(><+,[])の組み合わせで完成している.
符号化例:明文:hello符号化後:+++++++++++++++++++++++++++++++++.—+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
オンラインコーディング:https://www.splitbrain.org/services/ook
jother
jotherはjavascript言語で少量の文字で簡略化された匿名関数を構築する方法で文字列を符号化する方法である.そのうち8つの少量の文字には:!+()[]{}が含まれる.これらの文字だけで任意の文字列の符号化を完了することができる.
符号化例:明文:hello符号化後:
([]+[][(![]+[])[!![]+!![]+!![]]+({}+[])[+!![]]+(!![]+[])[+!![]]+(!![]+[])[+[]]][({}+[])[!![]+!![]+!![]+!![]+!![]]+({}+[])[+!![]]+({}[[]]+[])[+!![]]+(![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+({}[[]]+[])[+[]]+({}+[])[!![]+!![]+!![]+!![]+!![]]+(!![]+[])[+[]]+({}+[])[+!![]]+(!![]+[])[+!![]]]((!![]+[])[+!![]]+(!![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+({}[[]]+[])[+[]]+(!![]+[])[+!![]]+({}[[]]+[])[+!![]]+({}+[])[!![]+!![]+!![]+!![]+!![]+!![]+!![]]+(![]+[])[!![]+!![]]+({}+[])[+!![]]+({}+[])[!![]+!![]+!![]+!![]+!![]]+(![]+[])[+!![]]+(!![]+[])[+[]]+({}[[]]+[])[!![]+!![]+!![]+!![]+!![]]+({}+[])[+!![]]+({}[[]]+[])[+!![]])())[+[]]+(!![]+[])[!![]+!![]+!![]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]+({}+[])[+!![]]

オンラインコーディング:http://tmxk.org/jother/