Javascript 终级“解密”

解密加上引号,因为并不是真正的解密。

现在很多网站不让你看js源码,就想办法变形,最后再document.write出来。

显然不管它怎么变形,最后总要调用document.write,我们直接在document.write的实现处,

用native调试来下个断点,不就可以读出来了?

找到document.write函数:

 
C:\>syminfo /S E:\symbol C:\WINDOWS\ie7\mshtml.dll | grep ::write
7DDA72FB[+   0] ?writeln@CDocument@@QAGJPAUtagSAFEARRAY@@@Z             public:long __stdcall CDocument::writeln(struct tagSAFEARRAY *)
7DCE0741[+   0] ?write@CDocument@@QAGJPAUtagSAFEARRAY@@@Z               public:long __stdcall CDocument::write(struct tagSAFEARRAY *)

显然,直接在这两个函数下断点就可以了。

下完需要读一个VARIANT结构,里面是一个VT_I8的safearray,需要了解safearray的结构,就不赘述了。

 因为还有更好的办法!
用firebug直接看就是了。原来也不清楚,原来firebug看时,一个javascript段里调用了document.write之后,就会在dom树里紧跟着看到另一个<script></script>的段。所以,直接用firebug翻看就行了。真是简单啊。

翻看后可以找个工具把代码格式化一下。

有个软件叫sourceformatx,好像已经有四年没有更新了。找了一下crack的文章,说这个软件破解不好会直接破坏系统,因此没有人破解。由于四年过了,现在已经可以搜到完美破解版,但是不是真的完美呢?要是有一点不完美,系统就要挂了,怕怕。所以先不用了,要用也在vmware里用。

thank creese@newsmth.

 

此条目发表在开发分类目录,贴了标签。将固定链接加入收藏夹。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

*