第一题:签到题 链接:http://chinalover.sinaapp.com/web1/

直接右键查看源码,拿到flag。

第二题: md5 collision 链接:http://chinalover.sinaapp.com/web19/

题目给了源码:

$md51 = md5('QNKCDZO');
$a = @$_GET['a'];
$md52 = @md5($a);
if(isset($a)){
if ($a != 'QNKCDZO' && $md51 == $md52) {
    echo "nctf{*****************}";
} else {
    echo "false!!!";
}}
else{echo "please input a";}

大意就是通过get传一个a,a的MD5值要==QNKCDZO的MD5值且a不等于QNKCDZO,用在线工具得到QNKCDZO的MD5值为 0e830400451993494058024219903391 ,随后百度了一下php,MD5,发现在php中,若是采用==来比较两个字符串,且==两端都是以0e开头且其后仍为数字的字符串的话,字符串会被解释成科学计数法,即0的n次幂,显然,n不为0时,0的n次幂为0。而源码中判断md5的时候用的是==, 既然QNKCDZO的MD5值已经是0e开头且其后为数字的字符串 ,那么接下来只要找出另一个MD5值是0e开头且其后为数字的字符串就行,百度一下,发现在这篇文章中有https://blog.csdn.net/bestlzk/article/details/77994272,令a=其中任意一个不为QNKCDZO的字符串即可。

 

第三题: 签到2 链接:http://teamxlc.sinaapp.com/web1/02298884f0724c04293b4d8c0178615e/index.php

将口令复制到输入框发现最后一个m被吃掉了,于是在输入框里乱敲一串字符,发现最大可输入10个字符,但是口令有十一个字符,点击输入框右键审查元素,将maxlength=”10″中的10删去(或者改成比11大的数字也行),再将口令复制到输入框,点击开门得到flag。

 

第四题: 这题不是WEB 链接:http://chinalover.sinaapp.com/web2/index.html

点开之后是这样的:

我一脸懵逼,f12也没得到更多提示,不知道咋做,遂查看大佬们的题解,这才知道要把图片给存下来,好了,图片是存了还是不知道有啥名堂,百度图片ctf,看了一堆相关信息,猜测这玩意儿可能是个图片隐写(毕竟这才第四题,太难也不怎么可能,另,题目名称果然没骗我,这玩意儿是misc。)然后txt打开图片,拉到最底下,发现flag。(有一说一,这图里的猫是真可爱。)

 

第五题:层层递进 链接:http://chinalover.sinaapp.com/web3/

点进去是个像模像样的网页:

一开始在搜索那里试了一下,发现不对,于是无脑f12一下,发现SO.html,访问还是个看不出什么名堂的网页继续f12,发现S0.html,继续访问,f12,SO.htm,访问(第一次做的时候到这里就快发疯了),S0.htm,访问,这次f12出现的是404.html,我仿佛看到了希望的曙光,呜呜呜,访问,然后我傻了

???这是啥?行吧,我继续f12看看你还有啥名堂,于是看到了如下内容:

<!--  
<script src="./js/jquery-n.7.2.min.js"></script>
<script src="./js/jquery-c.7.2.min.js"></script>
<script src="./js/jquery-t.7.2.min.js"></script>
<script src="./js/jquery-f.7.2.min.js"></script>
<script src="./js/jquery-{.7.2.min.js"></script>
<script src="./js/jquery-t.7.2.min.js"></script>
<script src="./js/jquery-h.7.2.min.js"></script>
<script src="./js/jquery-i.7.2.min.js"></script>
<script src="./js/jquery-s.7.2.min.js"></script>
<script src="./js/jquery-_.7.2.min.js"></script>
<script src="./js/jquery-i.7.2.min.js"></script>
<script src="./js/jquery-s.7.2.min.js"></script>
<script src="./js/jquery-_.7.2.min.js"></script>
<script src="./js/jquery-a.7.2.min.js"></script>
<script src="./js/jquery-_.7.2.min.js"></script>
<script src="./js/jquery-f.7.2.min.js"></script>
<script src="./js/jquery-l.7.2.min.js"></script>
<script src="./js/jquery-4.7.2.min.js"></script>
<script src="./js/jquery-g.7.2.min.js"></script>
<script src="./js/jquery-}.7.2.min.js"></script>
-->

这么长一串注释还这么整齐,肯定有鬼,于是仔细看,发现flag就藏在里面,从上至下阅读得flag。

这是关于CG-CTF Web部分的第一篇WP,作为整理记录写下来,本来想6题一起发,后来想想还是5题5题来吧。

Categories:

Tags:

No responses yet

发表评论

电子邮件地址不会被公开。 必填项已用*标注

闽ICP备19027300号