i春秋百度杯CTF比赛2016年12月场writeup

第一场

传说中的签到题·进阶篇

题目:
没那么简单~
11101100101000110011111011000
tips1:big num
tips2: 496265176

  1. 二进制转十进制刚好和提示一样,
    1_1.png
  2. 搜索群号码,在群公告看到疑似base64编码的字符串
    1_2.png
  3. Python解码得到flag

    flag{b159028c-95ff-4f71-ad7b-cef510a22d00}


1_3.png

福尔摩斯

题目:
贝克街旁的圆形广场
·-· ·-· ·-· ·-· ·-· ·-· ·
flag格式:flag{***}

可以想到是摩斯电码,把’_’换成’-‘,手动添加分隔符, 在线解密即可得到flag内容

flag{RRRRRRE}

2_1.png

+ —— +

+++++ +++++ [->++ +++++ +++<] >++.+ +++++ .<+++ [->– -<]>- -.+++ +++.<
++++[ ->+++ +<]>+ +++.< +++++ +++[- >—- —-< ]>— –.+. —– -.<++
+++++ [->++ +++++ <]>++ ++.– –.<+ +++++ [->– —-< ]>— —– .—-
–.++ +++++ +.<++ +[->- –<]> –.++ +++.+ +++.- .<+++ +++[- >++++ ++<]>
+++++ +++.< +++++ ++[-> —– –<]> —.+ +++++ +.+++ ++.– —– .<+++
++++[ ->+++ ++++< ]>+++ .<+++ ++++[ ->— —-< ]>— —– .<+++ ++++[
->+++ ++++< ]>+++ .<+++ ++++[ ->— —-< ]>.++ ++.– -.— -.<++ +++++
[->++ +++++ <]>++ ++.<+ +++++ [->– —-< ]>— —– —.- –.<+ +++++
+[->+ +++++ +<]>+ ..<++ ++++[ ->— —<] >—- –.– -.+.+ ++.– —.+
++++. —– —-. <++++ ++++[ ->+++ +++++ <]>++ +++++ +++++ +.<

是Esolang的一种,brainfuck,写的程序,用解释器/或者在 线工具运行一下得到flag

flag{671fb608-265a-492f-a041-b30bb8569490}

3_1.png

第二场

一个十六岁的少年

题目:
有一天,表姐的好朋友贝丝远房的表亲,一个16岁的少年
给表姐递了一封情书,表姐看不懂,你能帮忙翻译下吗?
666C61677B65633862326565302D336165392D346332312D613031322D3038616135666137626536377D

贝丝、十六岁,容易猜想是base16编码,Python解码得到flag

flag{ec8b2ee0-3ae9-4c21-a012-08aa5fa7be67}

4_1.p ng

藏在邮件头里的秘密

flag{ichunqiu_=E6=8A=80=E6=9C=AF=E6=9C=89=E6=B8=A9=E5=BA=A6}

曾接触过类似特征的编码,判断为可打印字符编码(Quoted_Printable),在线解码即得到flag

flag{ichunqiu_技术有温度}

5_1.p ng
另外:

在所有邮件处理的各式各样的编码中,很多编码的目的都是通过编码手段使 得七位字符的邮件协议体系可以传送八位的二进制文件、双字节语言文字等等。 Quoted-Printable也是这样一些编码中的一个, 它的目的同样是帮助非ASCII 编码的信件传输通过 SMTP。Quoted-Printable 编码是字符对应的编码,每个未 编码的二进制字符被编码成三个字符,即一个等号和一个十六进制的数字,如“=A8”。
Quoted-Printable编码的源码样式如下: =D4=DA=CB=F9=D3=D0=D3=CA=BC=FE=B4=A6=C0=ED……

吃货

麻辣烫的标配
flag{abbab_babbb_baaaa_aaabb}

根据提示猜想是培根密码 解密得到两种可能,逐一尝试得正确flag

flag{N_X_Q_D}

6_1.png


第三场

misc1

话不多说,看图片
misc1

大概是隐写吧,先用winhex打开看看,拖到最后直接可以看到flag

flag{stego_is_s0_bor1ing}

7_1.png

misc2

misc2

很明显是猪圈密码,对照密码表手工解密得到flag

flag{NSN}

misc3

哒哒哒哒,你知道什么是键盘坐标密码吗?
11 21 31 18 27 33 34
flag格式:flag{*}

谷歌了键盘坐标密码,很浅显。看到出现数字7/8,判断数字应该是(行,列)组合,试了下qazijcv,不行,改大写即可。

flag{QAZIJCV}

第四场

misc1-纵横四海

题目:
有句话说的好
(大表姐最美)





天下分久必合,合久必分
附件下载

附件是一个压缩包,解压。按文件名称正序排列后打开前几个文件看到每个文件里有一个字符,诸如‘f’,‘l’,‘a’…云云,于是会心一笑。。。
//windows下命令行
**> cd tiaoxiwoya
**> type dabiaojie* >>flag.txt

然后去掉换行符就得到flag

flag{0a47061d-0619-4932-abcd-5426f4ea34aa}

8_ 1.png

misc2-对错

题目:
如果说1代表对,0代表错,那么-1代表?
附件下载

点开链接,跳转到一个静态页面,上面只有一个二进制串

011001100110110001100001011001110111101101111010011010000100010101100011001110010011000000110011001101000110101001101111011001000111001101101010011001100110111101110011011010110110111101111101

直接binary->ascii即可得到flag

flag{zhEc9034jodsjfosko}

misc3-枯竭

讲真的,才华已经枯竭
大家好好答题
也许这道题一点都不坑
也许。。。。。
附件下载

是一个加密的压缩包,用Ziperello爆破得到密码“12345”
解压后得到flag

flag{319b7f63-e17d-4ac5-8428-c2476c7ecce3}

1 2_1.p ng

总结

  1. 只会做misc。。。
  2. misc考点依次大概是base64,摩斯,brainfuck,base16,Quoted-Printable,bacon,简单隐写,pigpen cipher,键盘坐标密码,观察力,编码,zip爆破
  3. 为了写writup学了markdown,还找到一个厉害的图床 sm.ms

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
首先,我们需要分析题目所提供的代码: ```php <?php error_reporting(0); if ($_FILES["upload"]["error"] > 0) { echo "Error: " . $_FILES["upload"]["error"] . "<br />"; } else { echo "Upload: " . $_FILES["upload"]["name"] . "<br />"; echo "Type: " . $_FILES["upload"]["type"] . "<br />"; echo "Size: " . ($_FILES["upload"]["size"] / 1024) . " Kb<br />"; move_uploaded_file($_FILES["upload"]["tmp_name"], "upload/" . $_FILES["upload"]["name"]); echo "Stored in: " . "upload/" . $_FILES["upload"]["name"]; } ?> ``` 从上述代码中我们可以发现,这是一个文件上传的代码,该代码运行后会将用户上传的文件存储到 `upload` 目录下。 但是,该代码没有对上传的文件类型进行限制,这意味着我们可以上传任何类型的文件,甚至是一些恶意的文件。我们可以尝试上传一些常见的恶意文件,比如 `webshell`。 我们可以在本地创建一个 `webshell.php` 文件,然后上传到服务器上的 `upload` 目录。上传完成后,我们可以访问 `http://xxx.xxx.xxx.xxx/upload/webshell.php` 来执行我们上传的 `webshell`。 最后,我们需要注意的是,该上传脚本没有做任何安全性检查,这意味着我们可以上传任意大小的文件,这可能会影响服务器的性能,甚至导致服务器崩溃。因此,在实际应用中,我们应该对上传的文件大小进行限制,同时对上传的文件类型进行检查,从而确保服务器的安全性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值