1 签到
改变URL中的参数,使其在当前日期:http://202.38.93.111:10000/?page=1635000000
2 进制十六——参上
使用文字识别工具识别十六进制串,转成字符串即可:https://www.bejson.com/convert/ox2str/
3 去吧!追寻自由的电波
此mp3文件明显是加速处理后的文件,拖到Pr减速可以听到是一个一个的英语单词,根据前四个单词的首字母(f l a g)可以判定是取所有的首字母,左右花括号可以直译即可。
4 猫咪问答 Pro Max
5 卖瓜
使用9斤的瓜
凑,大数使其溢出为负数,然后获得商并使用其凑9斤的瓜
。重复几次可以凑出来。
6 透明的文件
…
7 旅行照片
百度搜索海边KFC
关键字,打开百度地图,根据海的位置确定方位,根据阴影判断是下午(两个选择爆破下),题目3需要爆破,题目4和5根据百度搜索内容就可得到。
8 FLAG 助力大红包
…
9 Amnesia
轻度失忆
编译后 ELF 文件的 .data
和 .rodata
段会被清零。所以不能使用字符串赋值,putchar即可。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| #include <stdio.h>
int main() { putchar('H'); putchar('e'); putchar('l'); putchar('l'); putchar('o'); putchar(','); putchar(' '); putchar('w'); putchar('o'); putchar('r'); putchar('l'); putchar('d'); putchar('!'); return 0; }
|
记忆清除
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
| #include <asm/unistd.h> #include <unistd.h> __attribute__((used, constructor, section(".init"))) void pre_array(); void _start() __attribute__((section(".init"))); ssize_t my_write(const void *buf) __attribute__((section(".init"))); ssize_t my_write(const void *buf) { int fd = STDOUT_FILENO; ssize_t ret; size_t size = 1; asm volatile( "int $0x80" : "=a"(ret) : "0"(__NR_write), "b"(fd), "c"(buf), "d"(size) : "memory" ); return ret; } void pre_array() { char test1 = 'H'; my_write((const void *)&test1); test1 = 'e'; my_write((const void *)&test1); test1 = 'l'; my_write((const void *)&test1); test1 = 'l'; my_write((const void *)&test1); test1 = 'o'; my_write((const void *)&test1); test1 = ','; my_write((const void *)&test1); test1 = ' '; my_write((const void *)&test1); test1 = 'w'; my_write((const void *)&test1); test1 = 'o'; my_write((const void *)&test1); test1 = 'r'; my_write((const void *)&test1); test1 = 'l'; my_write((const void *)&test1); test1 = 'd'; my_write((const void *)&test1); test1 = '!'; my_write((const void *)&test1); asm("movl $1,%eax;" "xorl %ebx,%ebx;" "int $0x80"); } typedef void (*init_array_t)(void); init_array_t __attribute__ ((section(".preinit_array"))) my_init_a1 = pre_array; int main() { return 0; }
|
10 图之上的信息
11 Easy RSA
12 加密的 U 盘
13 赛博厨房
Level 0
自然语言编程,按照每天给出的条件编程即可。
1 2 3 4 5 6 7 8 9 10 11
| 向右 2 步 拿起 1 个物品 向下 1 步 向左 2 步 放下 1 个物品 向右 1 步 向上 1 步 拿起 1 个物品 向下 1 步 向左 1 步 放下 1 个物品
|
Level 1
do...while
循环思路
1 2 3 4 5 6
| 向右 1 步 拿起 73 个物品 向下 1 步 向左 1 步 放下 1 个物品 如果手上的物品大于等于 0 向上跳转 1 行
|