XCTF攻防世界练习区-web题-simple_js

0x07 simple js

【题目描述】

小宁发现了一个网页,但却一直输不对密码。(Flag格式为 Cyberpeace{xxxxxxxxx} )

XCTF攻防世界练习区-web题-simple_js_第1张图片

【目标】

掌握有关js的知识。查看页面源码,了解js和读懂代码。

【解题思路】

F12查看网页源代码,找到index文件,仔细阅读js代码。(或者view-source:命令)

先输入一个password厂商一下返回的结果。

查看源码,读懂源码,发现函数并没有使用传入的参数的值。接下来的做法就是将参数pass_enc传入的值替换为pass值,然后保存源码后进行重新打开,点击提交,就获得了alert的值。

XCTF攻防世界练习区-web题-simple_js_第2张图片

 XCTF攻防世界练习区-web题-simple_js_第3张图片

(Flag格式为 Cyberpeace{xxxxxxxxx} )

尝试一下构造flag输入,发现还是错误的。很生气,刚开始使用的是火狐做的,发现不行,然后使用谷歌还是不行发现还是这个答案,貌似是没解码完全。

然后根据这段代码的意义,我就构造了个python脚本简单解析下。

string = "\x35\x35\x2c\x35\x36\x2c\x35\x34\x2c\x37\x39\x2c\x31\x31\x35\x2c\x36\x39\x2c\x31\x31\x34\x2c\x31\x31\x36\x2c\x31\x30\x37\x2c\x34\x39\x2c\x35\x30"
s_list = string.split(",")
res = ""
for i in s_list:
    i = chr(int(i))
    print(i)
    res += i
print res

XCTF攻防世界练习区-web题-simple_js_第4张图片

发现结果比上面多了个2,然后构造 flag,Cyberpeace{786OsErtk12},发现答案是对的。

不过还是不知道为啥直接在源码上修改,会少一个2?

查看我保存的页面的源码,发现没有少copy啊

XCTF攻防世界练习区-web题-simple_js_第5张图片

至今不知道是因为啥,欢迎知道的老铁留言。

 

参考链接:https://blog.csdn.net/God_XiangYu/article/details/100635198

 

 

你可能感兴趣的:(CTF)