查看源码,发现有个链接链接到first.php,进入第1关
1-http://monyer.com/game/game1/first.php
1 | <script type="text/javascript"> |
发现密码是两个空格,意思就是说我们在id=txt那一栏填入两个空格,就可以跳转到hello.php;或者直接改URL到hello.php
2-http://monyer.com/game/game1/hello.php
1 | <script type="text/javascript"> |
Math.floor()向下取整,JavaScript的/运算符算到小数5/2=2.5
。
把那一串代码改改随便拿去哪个语言环境跑跑得出结果。
3-http://monyer.com/game/game1/424178.php
1 | <script type="text/javascript"> |
fromCharCode()将Unicode编码转为一个字符,静态 String.fromCharCode()
方法返回由指定的 UTF-16 代码单元序列创建的字符串。将里面的代码找个在线JavaScript一转,摇身一变代码:
1 | console.log(String.fromCharCode(102,117,110,99,116,105,111,110,32,99,104,101,99,107,40,41,123,13,10,09,118,97,114,32,97,32,61,32,39,100,52,103,39,59,13,10,09,105,102,40,100,111,99,117,109,101,110,116,46,103,101,116,69,108,101,109,101,110,116,66,121,73,100,40,39,116,120,116,39,41,46,118,97,108,117,101,61,61,97,41,123,13,10,09,09,119,105,110,100,111,119,46,108,111,99,97,116,105,111,110,46,104,114,101,102,61,97,43,34,46,112,104,112,34,59,13,10,09,125,101,108,115,101,123,13,10,09,09,97,108,101,114,116,40,34,23494,30721,38169,35823,34,41,59,13,10,09,125,13,10,125)); |
4-http://monyer.com/game/game1/d4g.php
输入d4g
时,看到URL转到d4g.php
又很快回到了第3关的URL,那只能抓包来看看它返回了什么东西。
1 | <html> |
可以看到有两段script,分别将两段script解密:
1 | <script type="text/javascript"> |
在URL上跟上3bhe.php
不行,再来看下第二段JS:
1 | <script type="text/javascript"> |
toUpperCase() 方法用于把字符串转换为大写。
1 | var a="3bhe" |
URL跟上3BHE1.php
成功跳转到第5关
5-http://monyer.com/game/game1/3BHE1.php
1 | <script type="text/javascript"> |
页面提示说藏在了页面里,就按F12到处找,看到消息头的响应头里这样一句话:monyer: the password for the next level is asdf
;或者抓包在响应报文里也可以看到。
6-http://monyer.com/game/game1/asdf.php
1 | <script type="text/javascript"> |
在图片里找线索,主要是考信息搜索,从图片看出有magazine,用引号将从图片知道的内容包起来搜索,容易找到一家seventeen杂志。
7-http://monyer.com/game/game1/seventeen7.php
1 | <script type="text/javascript"> |
它给了几个提示,是关于社工的(感觉我什么都不能信了怎么办)
提示1:这关需要简单的社会工程学,请联想本关特点进入下一关。
提示2:不要被你的所见、经验及习惯蒙蔽了你的双眼,看不到的正是你想要的。
提示3:与社会工程学相仿的是暴力破解,所以Monyer给你MD5:5e023995fb3f5e840ee684784f8f0799(小于10的数字+字母)
它说联想本关,我就顺其自然地想到eighteen8
但出现了Not Found,去解密了MD5发现也是eighteen8
,我只能看看抓包能有什么效果,还是eighteen8
,看它会不会有啥302跳转啥的,结果一抓发现Not Found是假的!我再回头看发现它的title就写着第8关,我因为看到Not Found就没注意到title。
1 | <html> |
8-http://monyer.com/game/game1/eighteen8.php
1 | # -*- coding: utf-8 -*- |
直接在URL上改5736396.php
9-http://monyer.com/game/game1/5736396.php
认认真真看了美女许久一无所获,图片下载下来用notepad++打开发现最后有信息。
那句广告词叫什么来着?
对,“在这里,在这里,在这里……”
恭喜你!
第十关密码为:MonyerLikeYou_the10level
从现在开始涉及到少许的动态东西,但你都可以按提示线索完成的!
相信自己,没错的!
10-https://www.monyer.com/game/game1/MonyerLikeYou_the10level.php
当前用户身份为simpleuser 不是admin,无法显示下一关密码
抓包,改cookie中的username为admin,GET地址就是第10关的地址。
页面跳转https://www.monyer.com/game/game1/admin.php
好聪明哦!下一关密码为:doyouknow
11-https://www.monyer.com/game/game1/doyouknow.php?action=show_login_false
你的session不是passer,不能查看下一关密码
session在哪找不到,我把URL的false改为true就可以通过了。
您的session为passer,所以您可以查看下一关密码:smartboy
12-https://www.monyer.com/game/game1/smartboy.php
JTRBJTU0JTYzJTdBJTRBJTU0JTVBJTQ3JTRBJTU0JTU5JTc5JTRBJTU0JTU5JTMxJTRBJTU0JTU5JTc4JTRBJTU0JTYzJTMxJTRBJTU0JTYzJTMwJTRBJTU0JTU5JTM1JTRBJTU0JTU5JTMyJTRBJTU0JTYzJTMxJTRBJTU0JTVBJTQ0JTRBJTU0JTRBJTQ2JTRBJTU0JTYzJTc3JTRBJTU0JTU5JTM0JTRBJTU0JTYzJTc3
有大小写、数字,猜测base64解码:
%4A%54%63%7A%4A%54%5A%47%4A%54%59%79%4A%54%59%31%4A%54%59%78%4A%54%63%31%4A%54%63%30%4A%54%59%35%4A%54%59%32%4A%54%63%31%4A%54%5A%44%4A%54%4A%46%4A%54%63%77%4A%54%59%34%4A%54%63%77
URL解码:
JTczJTZGJTYyJTY1JTYxJTc1JTc0JTY5JTY2JTc1JTZDJTJFJTcwJTY4JTcw
base64解码:
%73%6F%62%65%61%75%74%69%66%75%6C%2E%70%68%70
URL解码:
sobeautiful.php
1 | <form action="?" method="post"> |
在以上源码中改为action="sobeautiful.php"
,再次点提交,进到13关。
13-https://www.monyer.com/game/game1/sobeautiful.php
本页禁止盗链!
顺便一说,如果直接在URL上改sobeautiful.php就会出现上面提示,进了第13关又没全进,反正就是做不了题。
查看源码:
1 | dim connect |
可知我们填入的”pwd”放进select语句查询,可以试试SQL注入。
试' or 1=1
就试出来了密码:whatyouneverknow
14-https://www.monyer.com/game/game1/whatyouneverknow.php
下载下来是一个exe文件,打开要我们输入16位注册码。先把它放进IDA看看,只有一个函数,用ID5反编译不了,有可能是被加壳了。用查壳软件exeinfope
看看,被加了upx壳。
1 | upx -d crackme.exe //脱壳 |
脱壳后再放进IDA,好大的文件。。。试一下动态调试用OD,载入文件后右键->中文搜索引擎->智能搜索,在文本字符串中可以看到ipasscrackme.asp
文件。
1 | <script type="text/javascript"> |
由于它后面规定了是以.php
结尾,所以改为ipasscrackme.php
15-http://monyer.com/game/game1/ipasscrackme.php
你最终没能把cookies设为admin
最后抓包将cookies设为admin就可以了。
1 | Cookie: username=admin; PHPSESSID=967sro4f61krddtkgkihm6jj68 |