i春秋 第二届春秋欢乐赛
Hello-World:
题目类型:web
题目描述:Hello-World,打开靶机得一个Hello-World的界面:
解题方法:首先查看一下网页源码:
这里看到一个src="flag.xmas.js",点击访问一下:
404 Not Found,然后去扫描一下他的目录文件:
这里发现扫出了大量的.git文件,说明存在git源码泄露,然后使用Git_hack来hack一下:
python GitHack.py http://47.104.129.38:9005/.git
获取了三个源码文件,来分别查看一下:
flag.php:
发现里面并没有有用的信息,只有个假的flag信息
flag.js:
里面全是这种摆成心形的php代码,看了没有找到有用的信息
再换成Git_Extrack来扫扫一下看看(注意Git_Extrack要在python2的环境下才可以运行):
python2 git_extract.py http://47.104.129.38:9005/.git/
发现好像多扫出来一样东西,查看一下:
打开看到里面的内容和flag.js基本都是一样的,本想着扫出点新东西出来会有点思路,但看到你们的内容就又没有思路了,最后上网看了一下Wp,flag就在这两个文件里面,要仔细比对他们的差别,然后用linux命令里面的diff命令比较两个文件的差别:
diff flag.js flag.js.04bb09
果然一比较就发现还是有许多的不同,然后仔细的查看不同的地方,差异的地方刚好拼凑出flag,多找几个就可以发现选取字符的规则:
1.比较不同,找到不同的地方取下面绿色的字符(比如:o和f不同,取f)
2.要是下面的字符在上面缺少了,就取下面缺少的那个字符(比如:append和ppend,下面缺少了a就取a)
最后顺着取下去,就可以得到完整的flag,最后的时候没有后花括号},取完要自己补后花括号
得到flag:
flag{82efc37f1cd5d4636ea7cadcd5a814a2}
总结:难度到是不大,但是很脑洞大开的一道web题
标签:git,春秋,js,flag,World,Hello From: https://www.cnblogs.com/xyweiwen/p/18141770