当前位置: 首页 > 技术干货 > 简单的CTF-从JS中获取flag

简单的CTF-从JS中获取flag

发表于:2021-01-20 13:54 作者: mtr 阅读数(2301人)

本文是一篇从蚁景网安实验室进行实验操作的笔记,一次非常简单地从JS中获取到flag的操作。

实验地址:https://www.yijinglab.com/expc.do?w=exp_ass&ec=ECID9d6c0ca797abec2016092313300000001


1.   进入题目页(10.1.1.219:20123)看到一段话,还有一句很明显的提示语句“The evil url is the passkey”,翻译出来就是损坏的url就是flag。下面的英文有兴趣的也可以解读一下,对于解题没什么用,别问我怎么知道的。

题目页

页面没什么其他有用的信息了,我们直接看一下源码,看有没有什么发现。在页面源代码中发现了一段可疑的js代码

可疑的js代码

对代码进行解读,可以知道,这段代码的功能是对页面写入内容,这个内容由变量P表示,P的内容是多个ascii码,我们可以自己翻译,看这些ascii码的内容是什么,也可以直接在浏览器的console中进行运行,得到新的页面。

浏览器的console中进行

打开浏览器,访问题目页面,按f12打开开发者工具,我们将js代码粘贴到console中,回车进行运行,发现运行错误,这应该就是损坏的,将中间的空行等处理一下之后运行发现获得了一个新的页面。

新的页面

然后会发现页面变成了空白,但是还是有一点不引人注意的地方:

翻看页面源代码,发现了一个隐藏的php页面:  隐藏的php页面

我们访问这个php页面,发现有一个变量名为flag:

      变量名为flag

但是查看页面源代码中,并没有flag的内容,查看请求头部时,发现cookie中存在flag获取flag

接下来把这个flag提交到实验的答题中,这个实验就完成了,也是一次非常简单的获取flag。

提交答案