齐鲁师范学院2025级新生CTF网络安全练习平台 Week1 WriteUP

齐鲁师范学院2025级新生CTF网络安全练习平台 Week1 WriteUP
Xiaozhi_z2025.10.8 17:58 记录: 要开始了,希望自己能ak吧((((
2025.10.9 22:01 记录: 居然暂时ak成功啦!!应该没多少题了吧(?
2025.10.12 18:44 记录: 前几天又上了三道题做完力,应该没有题辣。这周ak成功捏
除了新上了两道Osint的题,其余全都为Week1的题目~
Crypto
[WEEK1]GGBond
1 | 出题人: Camille | 难度: 基础 |
使用猪圈解密即可
[WEEK1]didadi-fix
1 | 出题人: Camille | 难度: 基础 |
打开发现是莫斯电码 一一映射即可
-..
→ D.----
→ 1..--.-
→ 下划线_
(在莫尔斯扩展中,..--.-
是下划线)-..
→ D.--.-.
→@
(某些扩展莫尔斯中.--.-.
是 @)..--.-
→_
-..
→ D-.-.--
→!
(莫尔斯中-.-.--
是感叹号)..--.-
→_
.-...
→&
(某些扩展中.-...
是 &,但标准国际莫尔斯里.-...
是 “+”? 我们查一下:标准里.-...
不是标准字母,但 ITU 莫尔斯中.-...
是+
吗?其实.-...
在美军扩展里是&
)
— 确认:常见扩展表里.-...
=&
。.-
→ A..--.-
→_
-..
→ D---...
→:
(莫尔斯里---...
是冒号)
得到QLNUCTF{D1_D@D!&A_D:} 改成小写提交即可
[WEEK1]ezRSA
1 | 出题人: Duktig | 难度: 基础 |
使用在线网站分解N
使用Python的Crypto模块进行解密即可
1 | from Crypto.Util.number import long_to_bytes, inverse |
[WEEK1]不可破译的密码
python解决代码如下
1 | encoded_text = """Rqtxrv iikmgxf mkwztl, |
[WEEK1]小d大危机
1 | 出题人: Ord1nary | 难度: 简单 |
Python解密即可啦
1 | import gmpy2 |
Misc
[WEEK1] 签到
1 | 出题人: Yime | 难度: 基础 |
这道题没说法 直接拿flag
[WEEK1]Normal
1 | 出题人: Camille | 难度: 基础 |
Python脚本如下
1 | import base64 |
[WEEK1]Signal Secrets
1 | 出题人: Yime | 难度: 简单 |
猜测大概率为SSTV 使用在线网站解码就行啦
[WEEK1]好朋友手牵手
1 | 出题人: Duktig | 难度: 基础 |
zip里面的flag.txt是假的!!! 查看zip即可
base64解码
[WEEK1]字与字之间的字
1 | 出题人: Ord1nary | 题目难度: 简单 |
使用Python的zero_width_lib库解密即可
当时找了一堆在线网站,失败)
1 | import zero_width_lib as zwlib |
[WEEK1]宝可梦大师
1 | 出题人: Ord1nary | 题目难度: 基础 |
发现是png格式
修改后缀 尝试爆破长宽
得到flag
[WEEK1]打截
1 | 出题人: Duktig | 难度: 基础 |
一把嗦了(实际原理是修改长宽高 IDA就能改)
得到flag
[WEEK1]有趣的三重奏
打开txt发现是这个 解码即可
使用bugku工具箱解码 核心价值观解码即可
使用怪音译者解码即可
再次使用哈基米语解码得到Flag
[WEEK1]熊熊出击
1 | 出题人: WEH | 难度: 简单 |
打开pdf把图片移动开
base64解码
Web
[WEEK1]Robots
1 | 出题人: Yime | 难度: 基础 |
打开robots.txt页面

打开禁止robot访问的页面 getflag!
[WEEK1]Seen from Source
1 | 出题人: Yime | 难度: 基础 |
打开页面F12直接秒杀
[WEEK1]Simple Login
1 | 出题人: COLLAPSING | 难度: 基础 |
这个打开页面 我手注了几次 密码为 admin/admin123
[WEEK1]The top
1 | 出题人: Yime | 难度: 基础 |
根据题目查看请求包 找到flag
[WEEK1]ZPD机密档案库
1 | 出题人: Merlyn | 难度: 简单 |
打开网站重要页面
进行base64解码提示
直接打开burp改cookie应该就可以了 ok啦啦啦
拿到flag
[WEEK1]md5-1
1 | 出题人: Ord1nary | 难度: 简单 |
php如下
1 |
|
构造url即可 http://challenge.qlnu-sec.cn:9957/?a=240610708&b=QNKCDZO
[WEEK1]内部管理系统
1 | 出题人: Yime | 难度: 简单 |
使用burp发送以下包 得到flag
这主要是要构建X-Forwarded-For: 127.0.0.1和 UA加入QLNU-BROWSER 这些题目中都有提示
1 | GET / HTTP/1.1 |
[WEEK1]消息公告板
1 | 出题人: Yime | 难度: 简单 |
是一个Web注入 输入以下预览即可
1 | {{ ''['__cla'+'ss__']['__mr'+'o__'][1]['__subcla'+'sses__']()[488]('{{lipsum.__globals__.os.popen("cat /flag").read()}}')['render']() }} |
得到Flag
Pwn
[WEEK1]NC
1 | 出题人: Reinon | 难度: 基础 |
命令为
1 | .\nc64.exe challenge.qlnu-sec.cn 9390 |
[WEEK1]Ret2text
1 | 出题人: Pan | 难度: 基础 |
使用python进行栈溢出,和之前的题解法相同的。
1 | #!/usr/bin/env python3 |
[WEEK1]Ret2text-Pro
1 | 出题人: Reinon | 难度: 中等 |
使用pwn进行栈溢出即可
1 | #!/usr/bin/env python3 |
[WEEK1]netcat
1 | 出题人: Pan | 难度: 基础 |
Reverse
[WEEK1]Hello_World
1 | 出题人: Pan | 难度: 基础 |
使用IDA打开 看到flag!
[WEEK1]UPX
1 | 出题人: Pan | 难度: 基础 |
使用upx进行脱壳
打开IDA分析代码即可
1 | __int64 __fastcall main() |
解密代码如下
1 | void __cdecl decrypt_flag(char *f) |
异或 1 的含义:
- 每个字符的 ASCII 码二进制最低位取反(0 变 1,1 变 0)。
- 例如
'P'
(0x50) 异或 1 → 0x51'Q'
。
我们直接对每个字符异或 1:
加密字符 | ASCII | 异或 1 后 ASCII | 解密字符 |
---|---|---|---|
P | 0x50 | 0x51 | Q |
M | 0x4D | 0x4C | L |
O | 0x4F | 0x4E | N |
T | 0x54 | 0x55 | U |
B | 0x42 | 0x43 | C |
U | 0x55 | 0x54 | T |
G | 0x47 | 0x46 | F |
z | 0x7A | 0x7B | { |
T | 0x54 | 0x55 | U |
^ | 0x5E | 0x5F | _ |
j | 0x6A | 0x6B | k |
1 | 0x31 | 0x30 | 0 |
o | 0x6F | 0x6E | n |
V | 0x56 | 0x57 | W |
^ | 0x5E | 0x5F | _ |
T | 0x54 | 0x55 | U |
Q | 0x51 | 0x50 | P |
Y | 0x59 | 0x58 | X |
> | 0x3E | 0x3F | ? |
| | 0x7C | 0x7D | } |
解密结果:
1 | QLNUCTF{U_k0nW_UPX?} |
[WEEK1]re-1
1 | 出题人: Duktig | 难度: 简单 |
使用Python进行解码
1 | keys = [0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77] |
[WEEK1]unpacking
1 | 难度: 简单 |
非预期( 纯粹想看看软件是什么样给整出来flag了
我不会做re,动态脱壳的时候想调试软件打开就这样了
[WEEK1]xor
1 | 出题人: Duktig | 难度: 简单 |
异或,使用python即可得到flag
1 | # 原始加密字符串 |
Osint
[WEEK1]地理迷踪-1
1 | 出题人: Yime | 难度: 简单 |
打开图片比较经典 因为我是济南人 一眼认出来了(
地名试了半天 大概试出来结果了
base64编码
嵌套后得到Flag
1 | QLNUCTF{5bGx5Lic55yBX+a1juWNl+W4gl/ljobkuIvljLpf5rO65rqQ5aSn6KGXX+azieWfjuW5v+Wcug==} |
ppc
[WEEK1]数据清洗及分析
1 | 题目信息 - [WEEK1]数据清洗及分析 |
使用Python进行文件分析以及md5生成
这道题靠AI辅助多一点,主要要条理清晰的跟AI阐述如何清洗以及如何生成即可
1 | import pandas as pd |
forensics
[WEEK1]Volatile Secrets
1 | 出题人: Yime | 难度: 简单 |
使用Strings配合grep分析软件,最后Python代码如下
1 | import base64 |