Hackergame 启动

随便点了下发现显示相似度为70

发现多了个similarity

修改为100
1.png
得flag
2.png

flag{wE1coME-tO-H@cKer9@me-4nD-eNj0y-hacKin9-zOz3}

更暗更深

打开ctrl+f 搜索f

得到flag
3.png

flag{T1t@n_4035b420456c34c333f22059c48b42b5} 

小猫测试

简单搜索就能找到

1.https://lib.ustc.edu.cn/%e6%9c%ac%e9%a6%86%e6%a6%82%e5%86%b5/%e9%a6%86%e8%97%8f%e5%88%86%e5%b8%83/

2.https://arxiv.org/abs/2303.17626v1

3.GPT一下得到答案
4.png
5.png
第一次得到第一个flag

flag{we!COME-7o-4TT3ND-TH3-nEKO-3XaM-2o23}

6.png
找到文章https://drops.dagstuhl.de/opus/volltexte/2023/18237/pdf/LIPIcs-ECOOP-2023-44.pdf

就得到第二个flag了

flag{rE4!-M4573R-of-ThE-NEKo-exaM-!n-U$7C}

赛博井字棋

打开先跟AI博弈了五六分钟,发现赢不了

直接上burp抓包,发现规律
7.png
发现会根据我的点击而发一个POST包,包里包含现在的棋盘情况

就想到直接改AI操作
8.png
就得到flag

flag{I_can_eat_your_pieces_157d9f4990}

旅行照片 3.0

第二问先解出来的先说第二问:

查到活动是梅酒节后在网站看到招募信息
9.jpg
第四题的答案是我猜的,以我去旅游的经验来看游客应该是免费的

得到flag

flag{PluM_w1NE_1S_rEa1LY_EXpen5iVE_d8ee31187e}

做完第二问,第一问的时间也知道了,就在8月10号到8月13号里其中一天

分析题目给的话
10.png
说明该学校有诺贝尔展厅
11.png
发现是京都大学,在里面找出生日期最晚的获奖者
12.png
在官网一个个查了出生日期后,找到最晚出生者:梶田 隆章

查他的研究所名字
13.png
提交得到flag
14.png
flag:

 flag{how_I_wi5h_i_COulD_w1N_A_Nobe1_pri23_4447c8793e}

第三问题目给了信息
15.png
查到会议是https://statphys28.org/

在这里找到集合地点
16.png
查找JR 上野站找到文章

https://plaza.rakuten.co.jp/ayumilife/diary/202308110000/

发现熊猫

点击图片搜索

查找到地点是涉谷

搜索得到
17.png

发现秋田犬
18.png
flag:

flag{Un7I1_W3_M337_A64iN_6oODByE_S3n1OR_13db1a0979}

组委会模拟器

学了这篇文章https://blog.csdn.net/captain5339/article/details/125403282

然后基本靠gpt来构造

exp:

import re
import requests
import time

url1 = "http://202.38.93.111:10021/api/getMessages"
url2 = "http://202.38.93.111:10021/api/deleteMessage"

cookie = {
    "session": "eyJ0b2tlbiI6IjE1MDpNRVFDSUhLWHpMK2NRWnM0MGxnRlNwV0xlMEhXMEsva1VPSUNXTVByL09KcWxIVWdBaUFoTkZKTWFZMHkzdnQxTTNDQUFMTVRDMGFFUUQ1dHZ6QjhnYkFidzJDOGtBPT0ifQ.ZUR7aQ.ZxeNRXDon-zST4EXWDGOR97Cszs"
}

header = {
    "Accept": "application/json, text/plain, */*",
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36",
    "Origin": "http://202.38.93.111:10021",
    "Referer": "http://202.38.93.111:10021/",
    "Accept-Encoding": "gzip, deflate",
    "Accept-Language": "zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7"
}

rp = requests.post(url1, headers=header, cookies=cookie)

res = rp.json()

pattern = r'hack\['

start_time = time.perf_counter()

i=0
for msg in res["messages"]:
    if re.findall(pattern, msg["text"]):
        print(i)
        while msg["delay"] > time.perf_counter() - start_time:
            pass
        data = {"id": i}
        rp2 = requests.post(url2, headers=header, cookies=cookie, json=data)
        print(rp2.json())
    i+=1

url3="http://202.38.93.111:10021/api/getflag"
rp3=requests.post(url3,headers=header,cookies=cookie)
print(rp3.json())

19.png
flag:

flag{Web_pr0gra_mm1ng_5f2af3d385_15fun}

HTTP集邮册

第一个flag构造5种状态
20.png
我是这几种得到flag

flag{stacking_up_http_status_codes_is_fun_d39e92ac60}

第二个只需要将HTTP前面的空格去掉

即:

GET /HTTP/1.1\r\n
Host: example.com\r\n\r\n

得到flag

flag{great backward compatibility of nginx, R1ght?}

小型大语言模型星球

发送:"Am I smart?"
21.png

得flag1

flag{i-Th1nk-you-@rE-reAL1y-R3A1!y-$m@rt}

低带宽星球

放入在线压缩网站压缩png后提交得到flag1
22.png
23.png

flag1: flag{A1ot0f_t0015_is_available_to_compre55_PNG}

奶奶的睡前flag故事

这题想了半天,查了好久

突然看到一篇文章
24.png
进入他给的网站https://acropalypse.app/

把screenshot.png扔进去,第一次试pixel7发现了“奶奶”,就一定是这个了

改到pixel3就解除来了
25.png

Git? Git!

下载后拿VSCODE打开,用到VScode的一个插件:Git graph

从头往下一个个看

(第二个就找到了)
26.png
flag:

flag{TheRe5_@lwAy5_a_R3GreT_pi1l_1n_G1t}

Docker for Everyone

直接网上搜Docker用户组提权

https://wiki.teamssix.com/cloudnative/docker/docker-user-group-privilege-escalation.html

这篇文章讲的很详细

跟着做得到flag(也就一行代码)
27.png
flag:

flag{u5e_r00t1ess_conta1ner_52ad7079ca_plz!}

JSON ⊂ YAML?

直接复制标题去搜索

看第一篇文章就是答案

https://john-millikin.com/json-is-not-a-yaml-subset

输入

{"a": 1e2}

得到flag1

flag{faf9facd7c9d64f74a4a746468400a50d04da332d7}

在查json和yaml的关系的时候,将这篇文章的例子都试了一遍

https://cloud.tencent.com/developer/article/1953257

28.png
在将两个name放到一个健值对后,得到了flag
29.png
flag:

flag{b1c73f14d04db546b7e7e24cf1cc7252b2af1331e3}

搜索ISS图片传输后,找到了个MMSSTV软件
30.png
接着搜索MMSSTV找到这篇文章https://j-kangel.github.io/2020/07/09/%E4%BB%8E%E4%B8%80%E9%81%93Misc%E5%88%B0%E5%AD%A6%E4%B9%A0%E7%99%BE%E4%B8%87%E6%B7%B7%E9%9F%B3/

跟着里面的提示使用电脑播放wav,手机用robot36接受,得到flag
31.jpg
flag:

flag{SSssTV_y0u_W4NNa_HaV3_4_trY}

高频率星球

题目给了是asciinema.rec,去网上查了一下asciinema怎么用

将本地文件重放的命令是

asciinema play xxxx

所以我直接将打印结果输出出来
32.png
将flag.js拿出来放到windows下查看
33.png
打开发现有一堆乱码,其他是asciinema.rec里的命令

滑到最后发现了hint
34.png
提示我们要将flag.js提取出来,再用node运行就能得到flag

首先将flag.js提取出来,把一些乱码删掉
35.png
使用vscode的ctrl+f可以方便的替换

最后将提取出来的flag.js放到node下运行

得到flag
36.png
flag:

flag{y0u_cAn_ReSTorE_C0de_fr0m_asc11nema_3db2da1063300e5dabf826e40ffd016101458df23a371}

惜字如金 2.0

拿到文件后分析一下,OK看不懂

但是有两个字典,猜一下前四个在上一个字典的对应什么字符(主要猜猜flag的对应位置是否一致)
37.png

最后分析出来如下面注释所示

# 53 -> 51 ->f
# 41 -> 41 ->l
# 85 -> 82/83 ->a
# 109-> 105 ->g
# 75 -> 72 ->{

因为最大有118而字典里只有115所以肯定少字符了

通过第一个注释说明第一行肯定少了2个,而且在f的前面,这样才能使得匹配到f

第二行却对应了l,说明可能是在进行对应字符的时候使得下标移动,而不直接改字典

ok,思路清晰了,构造脚本,尝试一下发现报错

再重新看一下其他条件
38.png
发现有个判断每行是否是24个,也就是要补到24个,所以刚刚思路全错,重新整

# 53 -> 51 ->f
# 41 -> 41 ->l
# 85 -> 82/83 ->a
# 109-> 105 ->g
# 75 -> 72 ->{
# 28 -> 28 ->}

分析好后得到flag

exp:

# 53 -> 51 ->f
# 41 -> 41 ->l
# 85 -> 82/83 ->a
# 109-> 105 ->g
# 75 -> 72 ->{
# 28 -> 28 ->}

# 第一原则(又称 creat 原则):如单词最后一个字母为「e」或「E」,且该字母的上一个字母为辅音字母,则该字母予以删除。
# 第二原则(又称 referer 原则):如单词中存在一串全部由完全相同(忽略大小写)的辅音字母组成的子串,则该子串仅保留第一个字母。
#aeiou
cod_dict = []
cod_dict += ['nymeh1niwemflcir}echaete'] #23->24 ,前面都对应则在末尾补e
cod_dict += ['a3g7}kidgojernoetlsup?he'] #46->48 ,前面也对应也在末尾补e
cod_dict += ['uulw!f5soadrhwnrsnstnoeq'] #69->72 , f有动,在f前面补,前面没有原因,则使用第二原则补辅音
cod_dict += ['cct{l-findiehaai{oveatas'] #92->96 , {比a前面,则在{,前补,没元音补辅音
cod_dict += ['ty9kxborszsttguyd?!blm-p'] #115->120,g有动,在g前面补,没有元音,补辅音

str = "".join(cod_dict)

data=[53, 41, 85, 109, 75, 1, 33, 48, 77, 90,
                         17, 118, 36, 25, 13, 89, 90, 3, 63, 25,
                         31, 77, 27, 60, 3, 118, 24, 62, 54, 61,
                         25, 63, 77, 36, 5, 32, 60, 67, 113, 28]

flag=""
for c in data:
    flag += str[c]
print(flag)

flag:

flag{you-ve-r3cover3d-7he-an5w3r-r1ght?}

为什么要打开 /flag 😡

看了这篇文章https://blog.csdn.net/kingstar158/article/details/6859379

用ifstream

exp

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    ifstream f;
    f.open("./flag", ifstream::in);
    string flag;
    f >> flag;
    cout << flag;
}

39.png
flag:

flag{nande_ld_preload_yattano_5a810ed34b}
最后修改:2023 年 11 月 06 日
如果觉得我的文章对你有用,请随意赞赏