4k 词
有很多脑洞题,想了很久最后还是牢出来了. 在这里仅给出一部分我个人解出的题目的WriteUp. Crypto:DIladila:爆破明文: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121#include <iostream>#include <vector>#include <cstdint>#include <thread>#include <mutex>#include <atomic>#include <array>#include &...
5.1k 词
bash.ps1powershell脚本,变量名和函数名有混淆,去除混淆后查看: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061function Func { Funcb Funcd Funca Funcc Funce exit}function Funcb { if ([int](&(Get-Command /???/id) -u) -cne -not [bool][byte]){exit} if (-not ((&(Get-Command /???/?at) /etc/*release*) | grep noble)){exit} if ((&(Get-Command /???/?at) /sys/class/net/enp0s3/address) -c...
8k 词
逆向压轴的brainfuck比较有意思. Misc方向:MiniForensicsⅠ:打开虚拟机,桌面上有一个全是坐标的txt和一个流量包,在此电脑 > 文档中找到一个隐藏文件夹nihao,其中有一个ai.rar和一个pwd.txt,提示密钥是7位纯数字,爆破得到密钥1846287,解压后发现给了一个没用的图片,并提示压缩包还有东西,发现有一个ssl.log被标记为了type03(服务块)而非02(文件块),改为02,重新计算CRC32得到40f42e68,小端序682ef440覆盖,发现已经可以识别出ssl.log,用这个作为SSLKEYLOGFILE解密流量,导出对象,得到两个upload,第一个是D盘的密钥521433-074470-317097-543499-149259-301488-189849-252032,第二个是一个zip压缩包,用密钥对D盘进行解密,发现D盘有一个透明贴图空白文字的文件夹,里面有一个c.txt,也是一串坐标,转为图像后发现是fakeflag,但是b是ac的平均值,求得a的坐标序列,转为图片得到flag:miniLCTF{forens1c5...
2.7k 词
Re1:程序是用rust写的,还把符号表删了,先用bindiff恢复符号表,观察main函数: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518...
7.5k 词
re出题人怎么这么喜欢矩阵,FPGA和deeptx都属于恢复出来逻辑不好逆的 ezFPGA:查了查FPGA的相关知识,先用Digital-IDE查看vcd信号: 提取密文:AD00C09F1617EC25251F12E27F9F375312BA8D3860141B318E13E2560A1A25B980738A60 从encryptor恢复加密逻辑: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116module Encryptor#( parameter logic [7:0] FLAG [0:13] = { "A&...
12k 词
个人感觉reverse题目里面解数最少的index反而不是最阴间的,起码没有conforand阴间在这里仅给出我个人解出的题目的WriteUp. Crypto方向:费克特尔:直接上factordb分解n即可 12345678910from Crypto.Util.number import *c=670610235999012099846283721569059674725712804950807955010725968103642359765806n=810544624661213367964996895060815354972889892659483948276203088055391907479553e=65537n = 113 * 18251 * 2001511 * 214168842768662180574654641 * 916848439436544911290378588839845528581phin = 112 * 18250 * 2001510 * 214168842768662180574654640 * 9168484394365449112903785...
2.3k 词
无意间发现还有决赛,积极参加了,题目依然很有意思 Misc方向:final_happy:jpg图片,查看作者名发现是一个base64:aV9sb3ZlX3Jvc2U=,得到i_love_rose,用steghide输入密钥提取得到flag.txt,发现是一个wav文件,文件头的RIFF少了前三个字母,补上之后发现是摩斯电码:– ….- –. .—- -.-. -… -.– - …– … .—- … - …. . .– ….- -.–,得到m4g1cbyt3s1sthew4y,则flag为flag{m4g1c_byt3s_1s_the_w4y}. 情书:先看flag.txt:****-/*—-/—-*/****-/****-/*—-/—**/*—-/****-/*—-/-****/***–/****-/*—-/—-*/**—/-****/**—/**—/***–/–***&#...
19k 词
驱动题直到最后也是零解,之前腾讯也出了个驱动,看来该抽时间好好学学驱动相关了…本次比赛搞笑事件颇多(),包括但不限于:因为之前做了NPC²CTF的babyvm,所以ezvm不小心非预期了(出题人更换附件时和出题人聊天走神导致被抢一血(做EzObf的时候有点入迷了,没发现附件更新了,不过本来剩下的时间也不够了就是了( Crypto方向:reed:发现是仿射密码,flag的中间段在字符集中的索引(0~61)被使用c = (a * index + b) mod 19198111的方式进行仿射加密,其中ab为随机数,考虑一种情况:若a、b均为极小值,则a * index + b不足以被mod 19198111,连接靶机进行获取: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455import socketimport stringHOST = '8.147.132.32'PORT = 36002SEED = ...
6.7k 词
经过了前几次的恶心vm之后,这次最后的go vm实在逆不动了,就没怎么看…在这里仅给出我个人解出的题目的WriteUp. Reverse方向:ezDOS:发现是8086架构的DOS程序,主函数中有几个花指令,抹掉后观察逻辑: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164...
2k 词
比赛开始后十几分钟还没上题,差点以为比赛取消了前两题纯签到,后面两题有点意思,不过难度也是签到级别的 easyre:发现main函数反编译不出来,在前面有一大坨花指令: 123456789101112131415161718192021222324252627282930313233343536373839404142.text:00411DA8 xor eax, eax.text:00411DAA jz short loc_411DAF.text:00411DAA ; ---------------------------------------------------------------------------.text:00411DAC db 11h.text:00411DAD db 22h ; ".text:00411DAE db 33h ; 3.text:00411DAF ;...
31k 词
自从newstar之后已经好久没见过持续时间这么长的比赛了,比赛还是有难度的,不过最后费了一些劲还是AK了所有的reverse、第二周的misc和crypto,题目都挺有意思的,学习和尝试了很多之前没接触到的内容. Crypto方向:river:由于是对称加密,直接将密文回带就可以得到明文,十六进制转换得到flag{two_dift3rs_0ff_t0_s33_th3_w0rld}. 全网呼叫密码人:如脚本所示: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849from Crypto.Util.number import *import gmpy2#第一部分:凯撒加密flag1 = bytearray(b"dj_ey//)")for i in range(len(flag1)): flag1[i] += 2#第二部分:维尼吉亚密码(在线求解,https://www.guballa.de/vigenere-solver,密码为c...
9.2k 词
这比赛3.2就开始了,我们当时没有听说,3.6才知道的,不过最后还是取得了不错的成绩.在这里仅给出我个人解出的题目的WriteUp. Reverse方向:ASM?Signin!:编写解密脚本: 123456789101112131415161718192021222324252627282930313233343536373839404142data1 = [ 0x26, 0x27, 0x24, 0x25, 0x2A, 0x2B, 0x28, 0x00, 0x2E, 0x2F, 0x2C, 0x2D, 0x32, 0x33, 0x30, 0x00, 0x36, 0x37, 0x34, 0x35, 0x3A, 0x3B, 0x38, 0x39, 0x3E, 0x3F, 0x3C, 0x3D, 0x3F, 0x27, 0x34, 0x11]blocks = [data1[i*4:(i+1)*4] for i in range(8)]for i in range(8): si = i * 4 di = si + 4 if di >= 28...
12k 词
一转眼已经到2025年了,其实2024年年末还参加了一些比赛(比如长城杯,DASCTF什么的),但是打的都不太好,怕丢人就不发wp了()2025,新年新的开始,望自己在新的一年能多AK少爆零() 赛题轮次:Week 1Crypto方向:suprimeRSA:这题貌似有两个版本,我是在第一个版本做的,看了一会没什么思路,再看公钥n只有六十多位,于是用了个耍赖的方法:(或许是因为纯按数学方法做这个题很困难,暴力破解反而拿下了一血)yafu暴力分解n得到p和q: 12P48 = 796688410951167236263039235508020180383351898113P48 = 839777194079410698093279448382785381699926556673 解密得到flag:hgame{ROCA_ROCK_and_ROll!}. Misc方向:Hakuya Want A Girl Friend:打开txt发现是每个字节的ASCII,010editor转成文件后发现了一个zip文件和一个所有字节全都倒过来的png文件,png文件的宽高不正确,修改宽高后得到zip文...
5.5k 词
只做了reverse方向的题目。从2月3日HGAME CTF开始到2月8日的VNCTF再到2月9日的N1CTF Junior,长线作战使得此时已经有些乏力了,三道逆向题目中,第一道(easy-re)由于缺少root过的arm架构安卓手机,在艰难分析手撕ollvm后因发现关键值需要动态调试获取而望洋兴叹… Reverse方向:5mc:反编译观察main: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421...
7.7k 词
第一次遇到鸿蒙软件逆向,简单学了学之后成功做出来了 签到题:欢迎!:打开容器发现是“文本替换器”,只能执行指定的指令:sed's/{.\*}/ text /g' path,并给出了一个示例文本文档,题目说明flag在环境变量内,首先在右侧路径的位置输入环境变量:/proc/self/environ,返回以下内容: 1RET2SHELL\_34\_656\_PORT=tcp://10.233.17.192:3000RET2SHELL\_34\_656\_SERVICE\_PORT=3000KUBERNETES\_SERVICE\_PORT=443KUBERNETES\_PORT=tcp://10.233.0.1:443RET2SHELL\_34\_388\_PORT=tcp://10.233.2.153:3000RET2SHELL\_34\_388\_SERVICE\_PORT=3000RET2SHELL\_34\_488\_SERVICE\_PORT=3000RET2SHELL\_34\_488\_PORT=tcp://10.233.29.73...
6.7k 词
刚出新手村后正经打的第一场个人赛,单就re方向来说感觉难度还行?上传这篇wp到github时又看了看这些题目,发觉当时认为很困难的题目现在貌似都能迎刃而解了,成长和进步总是在不知不觉中就发生了… Reverse方向:babyre:反编译观察主函数: 12345678910111213141516171819202122232425262728293031__int64 __fastcall main(int a1, char **a2, char **a3){ __int64 v3; // rdx __int64 v4; // rdx char v6[32]; // [rsp+0h] [rbp-A0h] BYREF char v7[32]; // [rsp+20h] [rbp-80h] BYREF char v8[32]; // [rsp+40h] [rbp-60h] BYREF char v9[40]; // [rsp+60h] [rbp-40h] BYREF unsigned __int64 v10; // [rsp+88h] [rbp-18h] v...
738 词
挺简单的两道题 EnterGame:反编译观察main函数: 1234567891011121314151617181920212223242526272829303132333435int __fastcall main(int argc, const char **argv, const char **envp){ int v3; // eax int v5[10]; // [rsp+8h] [rbp-138h] BYREF __int64 s2[2]; // [rsp+30h] [rbp-110h] BYREF __int64 v7[4]; // [rsp+40h] [rbp-100h] BYREF char s[112]; // [rsp+60h] [rbp-E0h] BYREF char s1[104]; // [rsp+D0h] [rbp-70h] BYREF unsigned __int64 v10; // [rsp+138h] [rbp-8h] v10 = __readfsqword(0x28u); puts("Welcome...
28k 词
这是我第一次参加CTF,初来乍到,当时的许多专有名词的表述、题目做法放在现在看都是可笑的,就当做黑历史吧… 赛题轮次:Week1已解出的题目: 题目类型 题目名称 Pwn Real Login、Game、overwrite、gdb Reverse base64、ezAndroidStudy、Simple_encryption、ez_debug、begin Web headach3、会赢吗、智械危机 Crypto xor、Base、一眼秒了、Strange King Misc WhereIsFlag、Labyrinth、decompress、pleasingMusic、兑换码 Pwn方向:Real Login:反编译观察函数,发现要输入密码,找到密码是NewStar!!!,观察发现没有位数溢出保护机制,在虚拟机中nc地址后输入NewStar!!!+大量额外字符弹出祝贺,此时已经成功,用ls指令查看文件发现有一个flag,再用cat查看得到flag{6a532e27-a281-4c15-b965-c030de9c47df}. Game:反编译观察函数,发...