全国高校网安联赛Web专场~WriteUp

时间:2023-11-24 19:23:26

1、Sign

题目:Good Luck!flag{X-nuca@GoodLuck!}

Flag直接写在题目上了,flag{X-nuca@GoodLuck!}

2、BaseCoding

提示:这是编码不是加密哦!一般什么编码里常见等号? 题目:这一串字符好奇怪的样子,里面会不会隐藏什么信息?http://question1.erangelab.com/ Base64……

访问后得到一串含有等号的字符,然后base64解码得到flag

3、BaseInjection

提示:试试万能密码 题目:不知道密码也能登录。http://question2.erangelab.com/

万能密码 1‘or'1'='1' 轻松拿到flag

4、BaseReconstruction

提示:对数据包进行重构是基本技能 题目:此题看似和上题一样,其实不然。http://question3.erangelab.com/

全国高校网安联赛Web专场~WriteUp

flag{Cr05sthEjava5cr1pt}

5、CountingStars

提示:一不小心Mac也侧漏 题目:No more $s counting stars. http://question4.erangelab.com/ 查看源码可以看到有个提示是说mac系统的,所以直接下载DS_Store,里面可以看到有一个zip

http://question4.erangelab.com/.DS_Store查看源码,发现这么一个名字的压缩包 把压缩包下载来后。

全国高校网安联赛Web专场~WriteUp

<?php
$S="song";
$song="says";
$says="no";
$no="more";
$more="d0llars";
$d0llars="counting";
$counting="star";
$star="S";
echo '<div style="text-align:center">What is $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$S</div>';
?>

应该是变量覆盖,直接echo $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$S解出来是d0llars

全国高校网安联赛Web专场~WriteUp

6、Invisible

题目:隐藏IP来保护自己。http://121.195.186.234

发包时直接改X-Forwarded-For:127.0.0.1

全国高校网安联赛Web专场~WriteUp

7、Normal_normal

提示:phpwind 后台getxxxxx 题目:又是一个bbs。http://question6.erangelab.com/

126邮箱社工拿到后台用户名和密码:zhangrendao zhang2010

全国高校网安联赛Web专场~WriteUp

登录后台 翻了下XML 最后拿到Flag

全国高校网安联赛Web专场~WriteUp

flag{n0rmal_meth0d_n0rmal_l1fe}

8、DBexplorer

提示:a.SELECT @@datadir 。。。mysql/user.MYD b.user.MYD 题目:Where is my data。http://question7.erangelab.com/(请不要修改密码!)

提示vim,看db.php.swp文件,找到了用户名和密码ctfdb ctfmysql123,还有phpmyadmin的地址。但权限不够。

全国高校网安联赛Web专场~WriteUp

无意中,看到大牛们导出时出现了这个:

全国高校网安联赛Web专场~WriteUp

然后用topsec topsec123456登陆进去拿到flag

全国高校网安联赛Web专场~WriteUp

9、RotatePicture

提示:urlopen file schema 题目:转转转。http://question8.erangelab.com/picrotate

全国高校网安联赛Web专场~WriteUp

首先可以看源码,得到 http://question8.erangelab.com/getredisvalue 
然后找了个paperhttp://www.tuicool.com/articles/fE7nMv3,是Python urllib HTTP Header Injection。 方法就是先设置uuid,然后再get uuid。 这样get uuid 就等于get flag flag{url0pen_1s_1nterest1ng}

10、AdminLogin

题目:On the way in。http://121.195.186.238/index.php

点击进去好像有个链接 然后是我队友注入跑出来了账号密码

全国高校网安联赛Web专场~WriteUp

解出来是 Ctfadmin admininistrat0r 然后尝试去登陆 发现死活登陆不了 看看返回信息。经师傅提示,找到了svn目录,找到了路径。

全国高校网安联赛Web专场~WriteUp

好吧 要伪造IP 那简单啦 X-Forwarded-For 轻松解决一切

全国高校网安联赛Web专场~WriteUp

返回了一个图片的包 这个图片base64 那么用base64解出来图片应该就能看到flag了 拿到火狐解一下

全国高校网安联赛Web专场~WriteUp

11、WeirdCamel(白师傅做的)

提示:a.小骆驼的%和@真是蛋疼 b.嗯……URL转义有时候会失效 c.也许变量能够覆盖哦 题目:欢迎报名夏令营,请您仔细阅读公告,之后我们将会审核您的报名信息。http://question10.erangelab.com/

这个一开始完全没思路,500太坑,最后又来了个提示,变量覆盖(post:name=a&name=STATEMENT&name=register.pl),直接拿到了源码

全国高校网安联赛Web专场~WriteUp

全国高校网安联赛Web专场~WriteUp

可以直接命令执行(post: name=1&name=STATEMENT&name=|ls|) 然后翻了下目录,没找到flag,不过有个xnuca_looktheregisternews.pl

全国高校网安联赛Web专场~WriteUp

源码:

全国高校网安联赛Web专场~WriteUp

然后就是弹shell了,上py脚本,直接反弹shell出来 登mysql提示: Access denied for user 'xnucauser'@'localhost' to database 'xnucanews_db' when using LOCK TABLES 
我服,写了个py脚本去读所有字段,提示: ImportError: No module named MySQLdb 
我服,还打算写个php的,后来发现内核版本有点老啊,ubuntu的,上exphttps://www.exploit-db.com/exploits/37292/

全国高校网安联赛Web专场~WriteUp

我服,又穿了,中午穿过一次了…… 最后看师傅们都在使劲传脚本,弹shell,无奈了,太菜害怕被超,最后十几分钟干了点缺德事,抱歉抱歉……

全国高校网安联赛Web专场~WriteUp

不过最后发现,删了以后有点亏,因为拿到了root密码xgsqggxwalspassw0rd,不知道是否通用啊,如果通用的话,那500也就可以拿下了……Orz

12、OneWayIn

题目:How can I get in。http://question11.erangelab.com/

查看源码,发现crc32($_POST['0kee_username']) === crc32($_POST['0kee_password']),弱类型数组绕过。 全国高校网安联赛Web专场~WriteUp,url有一个任意文件读取,file参数值需要base64编码一下,num参数是读取第几行数,尝试着读取index.php源码,得到:

全国高校网安联赛Web专场~WriteUp

做一下代码审计,发现,当cookie设置role_cookie=flagadmin时,才可以读取flag.php文件。读了一下发现flag.phpphpjiami加密了

全国高校网安联赛Web专场~WriteUp

于是解密得:

<?php

    $iipp=$_SERVER["HTTP_HOST"];
    if ($iipp === '127.0.0.1') {
        echo 'ADwAcwBjAHIAaQBwAHQAPgBmAGwAYQBnAHsATAB6AFUAVgB6AEQATwBvAHgAeQBlAG4AYwA4AHAAagBUADkAdwBlAG8AUgB1AE4ATgBJAE8ATQA0AGIAUQAyAH0APAAvAHMAYwByAGkAcAB0AD4';
    }else{
        echo 'We need local...';
    }
?>

直接base64解密一下,得到flag

全国高校网安联赛Web专场~WriteUp