X1ct34m 2025 Misc 招新题 x1cbank Official Writeup
今年也是轮到我出招新题了()
总共两题,w8nn9z出一题,我出一题。
出了个区块链,考点其实挺基础的:)
人话:懒得思考直接去网上搞了两题下来改了改出了个拼好题
出题时用的还是solidctf项目,一些交互方式就不再赘述了。
题目合约如下
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051// SPDX-License-Identifier: UNLISCENSEDpragma solidity ^0.8.13;interface Quote { function price() external view returns (uint256);}contract Bank { event EmitFlag(address indexed user); uint256 cmp= 100 ether; uint256 public lastWithdrawTime; uint ...
XYCTF2025 Writeup
仍然是没有web没有pwn,全靠其他方向硬抗((
Writeup点我
Additional Statement:
Cooperated with w8nn9z, 1n1t,
Hibiscus.
复现部分
Misc
sins
题目源码
12345678910111213141516171819202122from secret import flagprint('For there are three that bear record in heaven, the Father, the Word, and the Holy Ghost')print('But here we have four cases bearing witness')def i_pow(n): if n % 4 == 0: # as the 40 days of flood return '1' elif n % 4 == 1: # as the 1 true God return ...
数字中国2025 数字产业安全积分争夺赛初赛 数据分析 Writeup+复现
六个小时的比赛时间还是太短了,流量分析可惜了,看了下其实并不难,但是一个人看几十万条的大流量分析还是太吃力了......
好在社工算是ak了,多少拉了点分:) 完了这下成开盒大王了
Writeup部分
溯源与取证
别的大师傅做的,这里就写复现里了Orz
数据社工
1
要找的是居住地和公司,根据其他任务已经知道了公司,要找的只有居住地,根据手机号等很容易在打车数据里面找到相关经纬度,从而在地图数据中找到小区。
img
img
img
img
华润国际E区:闵行区星辰信息技术园
2
要求找公司名称,通过任务3知道了手机号,在快递单中查找知道了是什么博林科技的
img
写个python脚本在工商登记数据里找博林
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556import openpyxlimport osdef find_string ...
NCTF2024 X1crypsc、谁动了我的MC? Official Writeup
谁动了我的MC?
直接用strings看一下内核版本,当然也可以用vol的banners插件
飞书文档 - 图片
1234567891011121314安装对应版本的内核镜像sudo apt-get install linux-image-5.4.0-205-generic安装对应版本的内核头文件sudo apt-get install linux-headers-5.4.0-205-generic安装对应版本的内核模块sudo apt-get install linux-modules-5.4.0-205-generic安装对应版本的驱动sudo apt-get install linux-modules-extra-5.4.0-205-generic查看已经安装的内核版本 dpkg -l |grep linux-image
查看当前 GRUB 菜单项:
1grep menuentry /boot/grub/grub.cfg
根据输出确定你想要启动的内核菜单项。假设Ubuntu, with Linux 5.4.0-205-generic
的索引是 1> ...
TPCTF2025 misc writeup+复现
Writeup
Misc
raenil
做完就瞎了
给了一个GIF,是被拉伸变形的二维码。
从掩码可以看出左边的图是正着的,右边的是倒着的。
不会p图,硬看然后qrazybox手动恢复,干就完了。
image-20250308180735477
padding bits recovery自动填充一下
image-20250308180853635
然后reed solomon decoder解码就行
image-20250308181238532
nanonymous spam
观察可以发现,用户名与ip有关,肯定是要伪造ip,但是XFF头好像没用,试了下这里X-Real-IP头可以用。
后面就是找ip和用户名的对应关系。用户名总共由四个部分构成,本来以为就是每个部分对应了一个字典,后来发现中间这四个部分之间存在换位的现象,但实际上用的仍然是四个互不相交的字典,最终测出来具体规律如下:
一个部分用的是一个长度为103的字典,这个部分永远是第一个变化的,因此周期是103个ip;
一个部分用的是一个长度为512的字 ...
aliyunctf2025 misc writeup+复现
Writeup
Wrtieup点我
复现
Misc
哈基游
题目源码
123456789101112131415<?php$func_template = 'function check($file_hash, %s) { if ($file_hash !== "5baf19ce6561538119dfe32d561d6ab8509703606f768fea72723a01ee4264b7") { echo "%s not cached"; } }';$cached_key = isset($_GET['c']) ? $_GET['c'] : '$f_0';if (!preg_match('/^[a-zA-Z0-9_\$]{1,5}$/', $cached_key)) { die('Invalid cached key'); ...
VNCTF2025 Writeup
其他的没看,就看了misc的取证看了一天没做出来,看了wp发现思路是对的,but
yes,又是差那么一点点。。。
Writeup部分
Misc
VN_Lang
丢进IDA就能看到flag
image-20250208131104698
Crypto
easymath
题目
123456789101112131415161718192021from Crypto.Util.number import *from secret import flagflag=bytes_to_long(flag)l=flag.bit_length()//3 + 1n=[]N=1while len(n) < 3: p = 4*getPrime(l)-1 if isPrime(p): n.append(p) N *= pprint(f'c={flag*flag%N}')from sympy import symbols, expandx = symbols('x') ...
HGame2025 Writeup
由于有点忙,只看了下week1,week2没空看了,就签了个到:(
还是学到了挺多东西的:)
签到
TEST NC
从这里开始的序章
image-20250204110440698
Misc
Hakuya Want A Girl Friend
一眼压缩包,把十六进制导入010,看到结尾有个倒过来的png
image-20250204110704834
提取出这个png以后发现crc有问题,爆破一下正确的宽高
1234567891011121314151617import binasciiimport structcrcbp = open("1.png", "rb").read() #填入图片名crc32frombp = int(crcbp[29:33].hex(),16) print(crc32frombp) for i in range(10000): for j in range(10000): ...
RDCTF2025 Writeup
学弟出题的比赛,拿了个第一名来给学弟捧个场:)
Writeup点我
西湖论剑2025 Misc Writeup+复现
Writeup
糟糕的磁盘
取证大师一下子导入五个镜像即可,可以看到key和secret
55e2e957-00ec-4d20-a9fd-04bed5f08f21
veracrypt挂载一下,key.png当做密钥文件
14bc8d87-b159-4a18-8fb8-c6ae9e705112
复现
CSCS
挺逆天的题目,当时比赛的时候是零解。本来前阵子我为了出题专门研究过CS流量,结果这个题中没直接给私钥,也不是已知私钥,也没给镜像什么的,当时就直接给我干懵了。谁知道他这里是要用密码学自己去分解得到私钥。。。不过手撕pem什么的操作我倒是也会。。。好吧还是我菜了:(
可以看到给出了http beacon
image-20250124144345833
用1768.py可以拿到公钥
image-20250124153616367
当时就是停在这了,根本没想到这个公钥可以分解。。。
把这串十六进制数做成pem格式,拿到n
image-20250125161846520
image- ...










