这是2025昌吉州“天山固网·庭州杯” 网络安全技能竞赛解析wp,完整的解析和wp,这个比赛是分职工组和学生组,我这边参加的职工组的比赛,不过,学生组的题,我也拿来做了一下,所以这个解析里面职工组,学生组的解析都有,需要的来学习一下吧。
本次参赛我们的信息:
参加组别 职工组
代表企业:新疆幻城网安科技有限责任公司
最终分数:满分一百我们获得70
最终获奖:二等奖 1000元
那么在本wp开始之前,还是要先说一下一个喜报
喜报!!!新疆幻城网安科技有限责任公司在近日举办的昌吉州“天山固网·庭州杯”网络安全技能竞赛中脱颖而出,荣获二等奖的佳绩!此外,公司还获得了丰厚的奖金。
多年来,我们一直渴望以公司名义参加职工组比赛,然而在以往的一些赛事中,由于种种原因,报名职工组均以失败告终。此次能够成功参赛并取得佳绩,我们深感荣幸与激动。这离不开昌吉州网信办的鼎力支持与悉心指导,在此,我们谨向昌吉州网信办表示最诚挚的感谢!是你们的支持与帮助,让我们有机会在这个舞台上展现实力,收获荣誉。再次感谢昌吉州网信办的辛勤付出与大力扶持!

我先来说一下职工组的题,然后再写学生组的解析,学生组有几道题和职工组一模一样,其他的三道题和职工组还不太一样。下面是职工组
- banana
这道题简称香蕉题,这个题真的是快难死我了,比赛的时候,我感觉有机会做出来,但是很费劲,最后先不做这个了,后面比完用了两个多小时才又做出来,这个题确实很难。

附件给了三个文件香蕉图片

key.txt

LOL文件

先解key.txt AAencode解密

得到
banana!
steghide隐写

查看香蕉图片属性发现密钥

DES解密

do you try stegosaurus
提示是pyc隐写也叫剑龙隐写,意思是那个LOL文件是pyc文件,加后缀.pyc进行剑龙隐写

最后flag为
flag{be7bc38e8fb00d7b8541367648047d81}
2.Ssl

首先通过ftp导出文件

导出之后,有个key.txt 和私钥test.key
—–BEGIN RSA PRIVATE KEY—–
MIICXgIBAAKBgQD0UN0A+70iM0VCJ1ni0n/U1BRj0u8yMWH4Qi+xTbjHgbE7wOuk
OaO+2PyQXiqIzZnf5jCkJuVDYjALGcKrZM4OCQBBd85B/LTc36XZ7JVfX5kGy5tI
R3tquuPIVKNdAsHlSqh9S7YSS39RdnSa5rOUyGhrLzxwzzM9IO4e+QQ+CQIDAQAB
AoGADiaw5mGubtCxbkeBOVYf+V/fXnjVSf76QbrzsD1kOooUjfV6sKR2C5Pd7S7H
H+1owENBBgEKvoBtb/cqA2tvU9vQ4l5TMBJcHv6LEcb9WPpnMxPV2GNjO+DTPGPy
Xnu1UZlZjwx+NaF5rESoSSVS2ZaaIixBs4RWRXk+lHEbTFECQQD6Rp6jMweRgPHO
pR3mgIK83zL+kzqYM5isIPv3DIC5JQN2kXqK73IDQCFVlfXnr9lAAVRzLDsAXLqv
le/o6yQLAkEA+edY+GERlLuD1t2k9Js0Dc7EwnLcxoFUE60ivj8Gf9jzLskGHxsv
0IV6J5OHwPh54kAxAnqCjSqNRAWGNzr+uwJBALYEjDUm1LdGrxXZ0jAkgHC6Z0zs
aK3uwHdXGcinqCp+t9EQpq3KzQF+L4AeKxRQONEq5m9I2LQ/vGocwrmD4dcCQQDb
rTyOinWz8upAFPKOe2hUwvA/pkzgyosoCMhDyI9kD0gmVlvlODbd7Jem9o8dWM97
zcXHUf41LbSkmN6U6m1FAkEAqmZbr35bPfkeoiikwNl6OVQytg12TZjw2vIbvfub
f9Rvti8Lh/tbrmhZroiz8/l3aAZmugI1NBcbeZR0gz8ggg==
—–END RSA PRIVATE KEY—–
可以直接解rsa

将flag进行md5编码提交即可
3.sql注入
这个题也真的很难,准确的说,是不容易想到哪里,当时做题的时候,各种注入都尝试了,这个玩意不能直接跑sqlmap,只能手工注入,后来实在没办法,用burp抓包放在爆破模块来注入,到比赛结束也没做出来,但是第二天发现人家没并没有关闭靶场,然后尝试了一下,发现用这个简单的方法直接做出来了。

查看源代码分析,在url后加入/112.txt和/,访问后它与index.php相同


其存在POST请求的sql注入,纯在表名flag1

因为环境关了,我说一下解题思路:
通过SQL注入从flag1表中提取flag是主要方法。以下是攻击步骤(基于SQL注入原理):
确定SQL查询的列数:
在表单的user_id输入框中,提交以下payload,使用ORDER BY子句探测列数:
‘ ORDER BY 1– (如果页面正常显示,则列数至少为1)
‘ ORDER BY 2– (继续测试,直到页面出错或显示“Hacker!”)
测试发现,当输入’ ORDER BY 3– 时,页面返回正常;输入’ ORDER BY 4– 时,页面显示“Hacker!”或错误。这表明主查询列数为3。
确认可输出列的位置:
使用UNION SELECT payload,填充3个位置(因为列数为3),并观察输出中哪些位置显示数据:
Payload: ‘ UNION SELECT 1,2,3–
提交后,页面可能显示数字(如2或3),这些数字表示该列在输出中可见。测试发现第2列和第3列可输出数据(第1列可能用于ID,不显示)。
获取表结构和列名:
利用information_schema数据库查询flag1表的列名:
Payload: ‘ UNION SELECT 1, column_name, 3 FROM information_schema.columns WHERE table_name = ‘flag1’–
提交后,页面输出列名(如flag或id)。测试显示flag1表只有一个列,名为flag。
提取flag:
使用UNION SELECT直接查询flag1表:
Payload: ‘ UNION SELECT 1, flag, 3 FROM flag1–
提交后,页面在商品查询结果中显示flag内容。

下载附件发现是一个流量包,然后wireshark开始找,找一去圈并没有发现flag,但是看题目可以看出来,这个题不是很难,只要找能找到,我将这个数据包用文本形式打开,然后去里面找

通过找字串符来搜索,发现这里有flag
在C:/Users/HelloCTF_OS/Desktop/up.pcapng找到字符串: *{wpxaml0pru\zgdpv)ee@@*{wpxaml0prxeget/flag.phphttp/1.1
在C:/Users/HelloCTF_OS/Desktop/up.pcapng找到字符串: ‘adobephotoshopcs5windows2014:05:0809:39:1802218jzgspv)eeg@@*wwpxvip(hh”photoshop3.08bimz%g9h8bim%d@vd-8bim:printoutputclrsenumclrsrgbcinteenuminteimgmpblboolprintsixteenbitboolprinternametext8bim;printoutputoptionscptnboolclbrboolrgsmboolcrncboolcntcboollbloolngtvboolemldboolintrboolbckgobjcrgbcrddoub@ogrndoub@obldoub@obrdtuntf#rltblduntf#rltrsltuntf#pxl@rzgpv)eeg@@*wwpxvipr
提交,然后成功拿下

一眼是base64编码,但是使用base64却无法解码,解码解出来的都是空白的东西都是乱码,然后想了一下,试试base32解码

解码成功,但是解出来的还是编码,我再次尝试使用base32继续解码,发现解码失败,那么认真看一下,发现这个编码好像是base64,直接用base64解码

成功解出来flag,但是提交显示不对,后面发现删除最后的感叹号正确了
学生组
题有一些题和职工的不一样,这些题我也让别人参加了学生组的人给我带出来的题,然后我做了一下,一样的题我不再复述了,把不一样的题说一下。
- 香蕉的题,和上面职工组一样,不说了。
- Ssl的题和职工组一样
5.一道命令执行的题
5.分析解题思路

通过分析这串php代码我们可以得到多个条件
- 首先传入参数code
- 字符串的长度限制要求<20
- 其次是字符串类型限制,这里可以看到限制的非常严格,26个英文字母是不能使用的,以及数字。
- 最后是eval()函数直接执行了
所以我们可以有思路来进行构造poayload
最简单的思路是cat flag.php
但是被限制了,所以我们要剑走偏锋
字母和数字都被限制,那我们只能使用短标签
构造出这个poayload
?code=?><?=`/???/???%20/*`;
其中?><?分别用于闭合php标签,打开短标签

打到最底下会看到

Flag出来了
这些题我这边也都打包了一下,放在百度网盘里面了,大家也可以下载一下题,做一下。

- 最新
- 最热
只看作者