暗号化されたjavaacript(.js)ファイルを複号化する方法を知りたいです。

そのファイルはおそらくXORHTMLで暗号化されているのですが、
http://www7.big.or.jp/~fujiko/php/xorhtml.phpを使ってもできませんでした。
.jsファイルをメモ帳で開くと、
s="~中略~";k=115;t="";r=0;for(i=0;i<s.length;i++){a=s.charCodeAt(i);if(a==36){++i;r=1;a=s.charCodeAt(i);}if(a==32){++i;a=(s.charCodeAt(i)-48)^k;}else if(a==33){++i;a=(s.charCodeAt(i)+77)^k;}else if(a==35){++i;a=(s.charCodeAt(i)+141)^k;}else a=a^k;if(r==1){r=2;e=a;}else if(r==2){r=0;t=t+String.fromCharCode(a*256+e);}else t=t+String.fromCharCode(a);}document.write(t)
のようになっています。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2008/01/05 21:45:57
  • 終了:2008/01/12 21:50:02

回答(3件)

id:tatsu___kun No.1

tatsu___kun回答回数230ベストアンサー獲得回数272008/01/05 22:01:08

ポイント27pt

暗号化されてない、javascriptのソースファイルだと思うのですが。。

所謂外部ファイルだと思われます。

http://allabout.co.jp/internet/javascript/closeup/CU20030521/ind...

id:y-kawaz No.2

y-kawaz回答回数1420ベストアンサー獲得回数2252008/01/05 22:15:17

ポイント27pt

ぱっと見で、実行後のtに復号されたソースコードがscriptタグ付きで入っていることが予想できます。

document.write(t)の後に alert(t) などとすればソースが拝めると思います。


または、Firefox の DOM Inspector や Firebugs 拡張などで javascript 実行後のソース(DOMツリー)を確認するだけでも見られると思います。

http://q.hatena.ne.jp/answer

id:ardarim No.3

ardarim回答回数892ベストアンサー獲得回数1422008/01/06 12:25:45

ポイント26pt

どんなに複雑な暗号化でも、実行する際には最終的に平文化されます。

こういうものを解析する場合は、そこを突きます。


この場合、最終的に実行可能な状態にしているのは、

document.write(t)

の部分です。ここを、例えば

alert(t)

に変更したり、TEXTAREA内に流し込むようにしてからjsを含むページを読み込めば、勝手に平文にしてくれて、表示してくれます。


urlはダミー

http://q.hatena.ne.jp/1199537155

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません