思路
obfuscation的意思混淆,以为是js代码进行了加密。题目整体还是比较简单的。
My Writeup
访问题目,页面提示输入密码:
先随便输入一个。发现页面没有加载比较有用的JS代码:
既然打开页面有弹窗,那就肯定有交互,使用burp进行抓包,响应包中发现了解题关键:
其中escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。
该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: * @ - _ + . / 。其他所有的字符都会被转义序列替换。unescape()则是对escape()编码的字符串进行解码操作。
所以最后对pass参数进行解码得到h为cpasbiendurpassword:
关于解码这里写下我的两种方法:
在runoob查看escape()函数的解释时都会有对应的实例,类似一个js编译器:
另一种就是在工具网站有专门的解码工具提供:
Others Writeup
主要描述了如何对escape()编码字符串解码的过程,我这边也补上吧。