将题目的附件文件下载,可以看到是一个以web100命名的文件,因此,我们猜测可能是php。
将该文件放到apache中合适的位置,查看是否可以正确打开该文件(需要正确配置PHP的实验环境环境,可以参考我写的PHP专栏中的关于如何配置PHP和Apache。)
网页打开,仅仅只可以查看到一个表单,并没有其它信息。
查看页面源代码,发现有部分乱码,需要我们去掉乱码信息,让其恢复正常。
eval函数,这是执行函数;这里执行了_变量中的内容也就是''中的内容,但是,要注意的是,它并没有执行$()函数,仅仅执行了字符串而已(从而导致乱码),因而页面html页面没有任何显示,只显示了input标签的内容,但是我们想让源代码正常显示出来,不进行执行,那么,我们就用到了alert弹窗(将eval函数改为alert),将乱码的$()函数源码完整显示出来
这里可以使用浏览器打开,也可以将修改后的源代码放入控制台执行(放入控制台需要注意删除script前后标签)
新建文件,将上述代码复制为js文件中。在下图可以看出并没有乱码。
根据js代码,需要我们对规则进行匹配,构建一个长度为16,并且包含be0f23、233ac、e98aa、c7be9字段。并且以b为始,以a为末。
因此构建出了be0f233ac7be98aa
得到flag{it's_a_h0le_in_0ne}