【SNCTF】write up

前言

雪姐姐主办的比赛,有的题目挺搞的,不过难度不大。

WEB

real_flag

这题把我整麻了,进去看源码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 <?php
error_reporting(0);
highlight_file(__FILE__);
$action = $_GET['a'];
$waf = $_GET['waf'];
if($action==='SNCTF'){
die('oh???');
}elseif($action==='phpinfo'){
phpinfo();
}
if (isset($_GET['env']) && $waf == "Snowywar" && $action == 'SNCTF') {
foreach ($_GET["env"] as $k => $v) {
putenv("{$k}={$v}");
}
system('echo hello');
}
?>

我横竖看了半天,都想不到这题怎么打,条件完全无法满足,后来群里的师傅说,看phpinfo搜索real就可以了,解base出flag,我谢谢他。

CRYPTO

F

看描述一眼希尔加密,上网址:
Hill Cipher

直接按照格式解密就可以拿到flag了。

MISC

到达世界最高城

给一个wav和压缩包,压缩包是flag但加密了,另一个wav一听是zood,先溜一会(bushi

binwalk发现藏了zip,直接foremost分离出来另一张图,看那张图的hex有提示:

1
#Can you see me:afZ_`AJB

根据提示,这里是变异凯撒,exp:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<stdio.h>
int main()
{

int i;
char c[]="afZ_`AJB";
for(i=0;c[i]!='\0';i++)
{

c[i]=i+5+c[i];
}
printf("%s",c);
}

//flagiKUN

跑出来这个就是压缩包密码,解压压缩包拿到flag。

派蒙的宝藏

给了一张图片,结合题目标题猜测是原神的文字,一通找找到了:
【原神考据】提瓦特通用文

解密后是12个单词:

1
AREA DWARF BARREL CAN LANGUAGE REUNION HAMMER UNUSUAL EPISODE SIBLING EXPIRE FLIP

不出意外的话这些是助记词,接下来就是区块链登录查合约一气呵成了。flag在合约里:1145141919810