2025-11-18-FZNCTF_WP
十一月 18, 2025
FZNCTF 2025
这次最高18名,后面打不动了掉到了29名
WEB 签到 check_in
1 | 曰:北天始精灵玉仙凶乐玄梵神生梵融劫冥华炁渺霄阿东陀冥色净荡象象空仙阿魂东灵渺莽空西魄命梵玄坤生威人莽玉魂观终威仙道霄浩太劫始周东凶魂照龙浩仙浩仙清精北色御尊尊 |
- 题目提示需要工具,以为是工具搜集题目,在网上找到了题目的原作者 天书加密
- https://github.com/BlackCat184/Sealed-Book
- 但是发现没有密钥解不出来,于是继续猜测最终结果如下:
- 访问/robots.txt 拿到关键信息 1
- 提示有1.py 2.py两个脚本可以下载
脚本1
1 | #!/usr/bin/env python3 |
脚本2
1 | #!/usr/bin/env python3 |
一个加密一个解密 在加密脚本里找到了密钥
DEFAULT_PASSWORD = "F.Z.N CTF"
随后使用脚本解密 得出flag
重定向?
(题目名字忘了)一直等官方wp一直没出
访问题目网站发现有个?link参数 可以跳转到别的访问
访问帮助页面发现flag位置在 题目地址/flag
猜测这是通过重定向来访问文件实现越权
先通过引发报错,得到了内网监听的端口是 7000
- 构造URL link=http://127.0.0.1:7000/flag
发现被过滤,多个地址均被过滤,但是域名未被过滤
于是我手动DNS了一个域名指向本地地址
xxx.xxx.xx/flag
然后让构造访问,直接拿到flag
不过找到了当时做的笔记
1.url = https://www.baidu.com GET
// 服务器 访问 baidu.com
直接把数据 返回给我们
//
- 重定向访问
- 已知:flag位置 http://5000-4a2fb514-5ce4-4056-abb1-80ae1e33c1ee.challenge.ctfplus.cn/flag
- Access Denied
- 猜测: 这个flag资源只能被内网请求 () 127.0.0.1 是一个特殊的IPv4 地址,称为本地回环地址或 localhost,用于指代“本计算机”
- 尝试:
- http://5000-4a2fb514-5ce4-4056-abb1-80ae1e33c1ee.challenge.ctfplus.cn/fetch?url=http://127.0.0.1:5000/flag
- 内网地址重入 攻击获取 flag
- 黑名单过滤 ,loacl , 127.. ,
- 手动实现dns
- baidu.com > ip
- a.curesky.site > 127.0.0.1
- 5000
http://5000-4a2fb514-5ce4-4056-abb1-80ae1e33c1ee.challenge.ctfplus.cn/fetch?url=http://a.curesky.site:5000/flag
诸神的三试炼
第一段flag
1 | _BOOL8 __fastcall flag1(const char *a1) |
第二段flag
1 | _BOOL8 __fastcall flag2(const char *a1) |
直接写逆向脚本来解
1 | import struct |
1 | === FINAL FLAG === |
第三段flag点进去后会发现有一个假函数 也就是 flag3_fake
通过逆向找到真函数代码
1 | void __noreturn gift2() |
数据
1 | .data:00007FF7D2402020 ; DATA XREF: gift2+28↑o |
但是直接逆向有点困难
于是我们直接修改 flag3_fake()的汇编代码,让其永久循环被跳过
1 | ; Attributes: noreturn bp-based frame |
即可解出flag
babyRSA
1 | import gmpy2 |
Lulala
这题是时间隐写,直接搞出gif时间戳写脚本做就行了
后面不太好讲了,有道AES解密找不到当时写的脚本了,等后面如果有题目复现继续补充
查看评论