GHCTFWP
[TOC]
两道Reserve方向的题目
.?.s.?
解压文件发现是.s后缀的文件,说明该文件还在编译阶段,可以通过gcc转为.exe文件。
用VSC打开发现有关于gcc的版本要求
在文件所在的文件夹打开终端,输入以下指令:
gcc -c test1.s -o test1.o
gcc test1.o -o test1
将.exe文件拖入DIE查看没有壳
放入32位的IDA查找main函数
注意到特殊的函数aaaa(),点进去查看发现与flag相关的程序
分析程序,发现只要把v1的所有字符跟v3一一异或就可以得到v2,就能得到flag
1 | enc = [ 0x2A, 0x37, 0x37, |
CS1.6
根据hint发现是C#文件,用ILSPY打开
找到这几个文件,先看main文件
分析得这是进行了三次的加密,将text的字符串先Enc2解密,然后Enc1解密两次,分别分析剩下两个文件
不难看出分别是base64加密和base58加密,在CTF在线工具-CTF工具|CTF编码|CTF密码学|CTF加解密|程序员工具|在线编解码 (hiencode.com)网站即可找到相关的解密方式,发现只需要将得到的结果反过来看即可得到flag