当前位置:首页 > CTF > 正文内容

(原创)i 春秋 CTF 大本营 basic 部分 writeup【i 春秋】【ctf writeup】【入门 ctf 题】

admin2天前CTF9

题目链接: https://www.ichunqiu.com/battalion

1. 回旋 13 踢

解题思路

题目中 “13” 为关键提示,对应ROT13 编码(凯撒密码的特殊形式,字母循环移位 13 位,A↔N、B↔O...Z↔M),直接对密文进行 ROT13 解码即可得到 flag。

编码规则

  • ROT13 特性:编码与解码使用同一规则(移位 13 位),例如:

    • s + 13 → f

    • y + 13 → l

    • n + 13 → a

    • t + 13 → g

操作验证

使用在线 ROT13 解码工具或手动计算,解码结果如下:

img

2. 小苹果

解题思路

题目提供wav音频文件,结合 “隐写” 场景,推测为音频隐写,使用专门的音频隐写工具SilentEye提取隐藏信息。

操作步骤

  1. 下载并安装SilentEye工具;

  1. 打开工具,导入题目中的wav文件;

  1. 选择 “Decode” 功能,提取隐藏的 flag。

工具验证

提取过程及结果:

img

3. Ropgadge

解题思路

题目给出一串 x86 汇编指令,需将其转换为机器码(16 进制),使用rasm2工具(radare2 框架组件)可直接完成汇编→机器码的转换。

工具介绍

rasm2核心参数:

  • -a:指定架构(如x86);

  • -b:指定位数(如32位);

  • 直接传入汇编指令字符串,输出机器码。

操作命令

# 对目标汇编指令进行汇编,生成机器码
rasm2 "xchg eax,esp;ret;mov ecx,[eax];mov [edx],ecx;pop ebx;ret"

执行结果

**img

4. Easyrsa

解题思路

题目提供 RSA 加密参数(C=0xdc2eeeb2782c、N=322831561921859、e=23),需通过大整数分解得到p和q,再计算私钥d,最终解密得到明文。

操作步骤

步骤 1:大整数分解(获取 p、q)

使用yafu工具分解N:

# 格式:yafu factor(待分解的N)
yafu factor(322831561921859)

分解结果:

img

步骤 2:参数整理(转换为 16 进制)

  • N = 0x1259d14921543

  • p = 0x16ae0a3

  • q = 0xcf22e1

  • e = 0x17

  • C = 0xdc2eeeb2782c

步骤 3:Python 解密脚本

import math
from Crypto.Util.number import inverse, long_to_bytes

# RSA参数
N = 0x1259d14921543
p = 0x16ae0a3
q = 0xcf22e1
e = 0x17
C = 0xdc2eeeb2782c

# 计算欧拉函数φ(N) = (p-1)*(q-1)
phi = (p - 1) * (q - 1)

# 计算私钥d = e^-1 mod φ(N)
d = inverse(e, phi)

# 解密:M = C^d mod N
M = pow(C, d, N)

# 转换为字符串
flag = long_to_bytes(M).decode('utf-8')
print("Flag:", flag)

步骤 4:结果验证

脚本执行结果:

img

img

将明文0x33613559转换为字符串(3a5Y),结合格式得到PCTF{3a5Y}:

img

5. 爱吃培根的你

解题思路

题目提示 “培根”,对应培根密码(通过字母大小写区分二进制,A=0、B=1,5 位一组对应字母)。

操作步骤

  1. 预处理密文:将大写字母转为B,小写字母转为A;

    • 原始字符串:bacoN is one of aMerICa'S sWEethEartS. it's A dARlinG, SuCCulEnt fOoD tHAt PaIRs FlawLE

    • 转换后:AAAABAAAAAAAABAABBABABBAAABAAABAAABABBAAABBABBAABAAABABABBABABBABAAABB

  1. 培根解码:5 位一组拆分(如AAAA B→A,AAAAA→A),拼接得到 flag。

解码结果

**img

6. 熟悉的声音

解题思路

题目给出XYYY YXXX XYXX XXY XYY X XYY YX YYXX,结合 “声音” 提示,推测为摩斯密码(X=・、Y=-),解码后再通过凯撒密码调整得到 flag。

操作步骤

  1. 摩斯密码转换

    • 替换规则:X→·,Y→-

    • 转换后:·--- -... ·-.. ..- .-- . .-- -. --..

    • 摩斯解码:JBLUWEWNZ

  1. 凯撒密码调整

    • 观察到 “CTF” 敏感字符,尝试移位(如J-4→F、B-4→X...),最终得到 flag。

验证结果

**img

7. 加密的文档

解题思路

题目提供带密码的压缩包,通过WinHex分析发现ZIP 伪加密(文件头与数据区加密标记不一致),修复后提取文档,再通过binwalk分离隐藏图片。

操作步骤

步骤 1:修复 ZIP 伪加密

  1. 用WinHex打开压缩包,找到文件头的 “加密标记”(偏移 0x09 处);

  1. 将伪加密标记0900改为0000(表示未加密):

img

img

步骤 2:分离文档隐藏内容

  1. 修复后提取doc文档,用binwalk分离隐藏文件:

binwalk -e 文档.doc
  1. 进入分离后的_文档.doc.extracted/word/media目录,找到隐藏图片image2:

img

img

img

步骤 3:获取 flag

打开image2图片,直接得到 flag。

8. Shellcode

解题思路

题目提供一段 Shellcode(机器码),需通过shellcodeexec工具执行,查看其输出内容(通常为 flag)。

操作步骤

  1. 下载工具

git clone https://github.com/inquisb/shellcodeexec
  1. 执行 Shellcode

将题目中的 Shellcode 传入工具,执行后获取输出的 flag。

工具执行

**img

9. Base64

解题思路

题目提供密文GUYDIMZVGQ2DMN3CGRQTONJXGM3TINLGG42DGMZXGM3TINLGGY4DGNBXGYZTGNLGGY3DGNBWMU3WI===,尝试Base64解码失败后,发现其符合Base32编码特征(字符集为 A-Z、2-7),解码后再转换 16 进制为字符串。

操作步骤

  1. Base32 解码

使用在线 Base32 工具解码,得到 16 进制字符串:

504354467b4a7573745f743373745f683476335f66346e7d

img

  1. 16 进制转字符串

将 16 进制字符串粘贴到WinHex或使用在线工具转换,得到PCTF{Just_t3st_h4v3_f4n}:

img

10. 手贱的 A 君

解题思路

题目提供字符串d78b6f302l25cdc811adfe8d4e7c9fd34,观察到包含小写字母l(非 16 进制字符),推测为输入错误,删除后得到标准 MD5 值,解密即可。

操作步骤

  1. 修复字符串:删除小写l,得到d78b6f30225cdc811adfe8d4e7c9fd34;

img

img

  1. MD5 解密:使用在线 MD5 解密工具,得到明文hack(即 flag)。

11. Veryrsa

解题思路

题目直接提供 RSA 的p、q、e,需计算私钥d(d = e^-1 mod (p-1)*(q-1)),再用d解密C得到 flag。

操作步骤

  1. 计算私钥**d**:

使用 Python 的Crypto.Util.number.inverse函数计算d;

  1. 解密**C**:

通过pow(C, d, N)计算明文M,转换为字符串得到 flag。

脚本与结果

from Crypto.Util.number import inverse, long_to_bytes

# 题目给定的p、q、e、C(需替换为实际题目参数)
p = 0x...  # 题目提供的p
q = 0x...  # 题目提供的q
e = 0x...  # 题目提供的e
C = 0x...  # 题目提供的C
N = p * q
phi = (p - 1) * (q - 1)
d = inverse(e, phi)
M = pow(C, d, N)
flag = long_to_bytes(M).decode('utf-8')
print("Flag:", flag)

执行结果:

img

img

12. 实验室 logo

解题思路

题目提供图片,推测为图片帧隐写,使用Stegsolve工具查看图片的不同帧,提取隐藏的 flag。

操作步骤

  1. 下载图片:将实验室 logo 图片保存到本地;

  1. 使用 Stegsolve 分析

    • 打开工具,导入图片;

    • 选择Analyse → Frame Browser,切换查看不同帧;

  1. 提取 flag:在第二帧图片中直接找到 flag。

操作结果

帧浏览界面:

img

提取到的 flag:

img


扫描二维码推送至手机访问。

版权声明:本文由克拉玛依三十年社团发布,如需转载请注明出处。

本文链接:https://www.klmyssn.com/?id=55

分享给朋友:

“(原创)i 春秋 CTF 大本营 basic 部分 writeup【i 春秋】【ctf writeup】【入门 ctf 题】” 的相关文章

南京邮电大学 CTF 两道隐写 Writeup【CTF 比赛】【CTF 题解】

南京邮电大学 CTF 两道隐写 Writeup【CTF 比赛】【CTF 题解】

作者:Szrzvdny | 墨是人性1:图种首先获取题目图片,如下所示:将图片文件复制到本地环境,准备后续分析:使用Binwalk工具对图片进行分析,可发现图片中隐藏了一个zip文件;直接使用foremost工具分离隐藏文件即可:分离完成后,在output目录中会生成对应的zip文件,解压该文件并点...

2017 ISG 管理运维赛(克拉玛依十三年团队)解题思路报告 V1.1

2017 ISG 管理运维赛(克拉玛依十三年团队)解题思路报告 V1.1

文档基础信息公司文档编号:SSN-17-09团队名称:克拉玛依 十三年(Karamay SSN)提交时间:2017 年 9 月声明本文档是高级中学十三年社团为 ISG 竞赛组委会、上海市信息安全行业协会提交的 ISG2017 解题文档,文档的所有权归十三年所有,任何对本文档的修改、发布、传播等行为都...

(原创)2019 年 “北邮网安杯” 第二届全国中学生网络安全技术大赛解题报告

(原创)2019 年 “北邮网安杯” 第二届全国中学生网络安全技术大赛解题报告

一、RE(逆向工程)模块1. Re1:simple check-in!解题思路本题为基础逆向题,核心是通过工具识别文件类型,再用 IDA 反编译提取硬编码的 flag。操作步骤文件类型识别:将目标文件拖入PeiD工具,查看文件架构(32 位 / 64 位),确定后续 IDA 的版本选择:IDA 反编...

弱口令实验室招新赛 Writeup

弱口令实验室招新赛 Writeup

一、解题状况总览1. Web 类别签到小能手开胃菜小镇做题家DiscuzWeblogic2. MISC 类别签到Easymisc奇怪又不奇怪cookie 怎么分吉他Easyso3. Crypto 类别82.83.85SnakeCryptososbabyrsa RSbabyWhat奇怪又奇怪4. Re...

Checkme1-8 WP

Checkme1-8 WP

checkme01核心代码:$keys = base64_decode(urldecode($keys));解题思路:需先对 “qsnctf” 字符进行 base64 编码,才能满足$keys=="qsnctf"的判断条件。操作步骤:将编码后的内容输入,即可获取 flag。che...