Hackergame2022

官方题解在这hackergame2022-writeups。以下记录自己做出来的几道题。(虽然不多😄😄

签到题

题目描述为:
image

按下F12,在elements寻找对应识别结果的变量。终于在js中找到。
image
在控制台输入app,在网页手写一个字查看其状态变化,最终确定app._data.digits[i].result为对应结果的变量。
console依次输入

app._data.digits[0].result=2
app._data.digits[1].result=0
app._data.digits[2].result=2
app._data.digits[3].result=2

点击提交即可获得flag。

or

输入数字后发现网页url更改为
http://202.38.93.111:12022/?result=?07?
修改为
http://202.38.93.111:12022/?result=2022即可。

猫咪问答

  1. 中国科学技术大学 NEBULA 战队(USTC NEBULA)是于何时成立的喵?
    网页搜索 NEBULA site:ustc.edu.cn 即可。

  2. 2022 年 9 月,中国科学技术大学学生 Linux 用户协会(LUG @ USTC)在科大校内承办了软件自由日活动。除了专注于自由撸猫的主会场之外,还有一些和技术相关的分会场(如闪电演讲 Lightning Talk)。其中在第一个闪电演讲主题里,主讲人于 slides 中展示了一张在 GNOME Wayland 下使用 Wayland 后端会出现显示问题的 KDE 程序截图,请问这个 KDE 程序的名字是什么?

  3. 22 年坚持,小 C 仍然使用着一台他从小用到大的 Windows 2000 计算机。那么,在不变更系统配置和程序代码的前提下,Firefox 浏览器能在 Windows 2000 下运行的最后一个大版本号是多少?
    网页搜索 Firefox Windows2000即可。

  4. 你知道 PwnKit(CVE-2021-4034)喵?据可靠谣传,出题组的某位同学本来想出这样一道类似的题,但是发现 Linux 内核更新之后居然不再允许 argc 为 0 了喵!那么,请找出在 Linux 内核 master 分支(torvalds/linux.git)下,首个变动此行为的 commit 的 hash 吧喵!
    在GitHub搜索torvalds/linux.git,发现有很多次commits
    image
    ,进入之后点击older,复制url发现规律为xx+number&branch=master。**

https://github.com/torvalds/linux/commits/master?after=4dc12f37a8e98e1dca5521c14625c869537b50b6+34&branch=master&qualified_name=refs%2Fheads%2Fmaster

https://github.com/torvalds/linux/commits/master?after=4dc12f37a8e98e1dca5521c14625c869537b50b6+69&branch=master&qualified_name=refs%2Fheads%2Fmaster

计算得知最后一页的number为1136484,即可进入最后一页。

  1. 通过监视猫咪在键盘上看似乱踩的故意行为,不出所料发现其秘密连上了一个 ssh 服务器,终端显示 ED25519 key fingerprint is MD5:e4:ff:65:d7:be:5d:c8:44:1d:89:6b:50:f5:50:a0:ce.,你知道猫咪在连接什么域名吗?

  2. 中国科学技术大学可以出校访问国内国际网络从而允许云撸猫的“网络通”定价为 20 元一个月是从哪一天正式实行的?
    关于收费规定的更改肯定有官方文件,我们来到中国科学技术大学网络信息中心寻找官方文件,关键字为网络费用。

HeiLang

题目描述为:
来自 Heicore 社区的新一代编程语言 HeiLang,基于第三代大蟒蛇语言,但是抛弃了原有的难以理解的 | 运算,升级为了更加先进的语法,用 A[x | y | z] = t 来表示之前复杂的 A[x] = t; A[y] = t; A[z] = t

作为一个编程爱好者,我觉得实在是太酷了,很符合我对未来编程语言的想象,科技并带着趣味。

下载题目文件后发现代码文件中的数组元素赋值操作为

a[1225 | 2381 | 2956 | 3380 | 3441 | 4073 | 4090 | 4439 | 5883 | 6253 | 7683 | 8231 | 9933] = 978

这不符合python语法,需要转换为

a[1225] = 978;a[2381] = 978;a[2956] = 978;a[3380] = 978;a[3441] = 978;a[4073] = 978;a[4090] = 978;a[4439] = 978;a[5883] = 978;a[6253] = 978;a[7683] = 978;a[8231] = 978;a[9933] = 978

可以用正则表达式来实现。

# some code

with open('getflag.hei.py', 'r') as f:
        for line in f:
            if line[0:2]=='a[':
                pattern1 = re.compile(r'a\[.*\]')
                str1 = pattern1.findall(line)[0][2:-1]
                numberlist = str1.split('|')
                pattern2 = re.compile(r'= [0-9]+')
                str2 = pattern2.findall(line)[0].replace('= ', '')

                all_exp = ''
                for number in numberlist:
                    if number == '':
                        continue
                    number = number.strip()
                    expression = "a[" + number + "] = " + str2 + ";"
                    all_exp += expression
                all_exp = all_exp[::-1].replace(';', '\n', 1)[::-1]
                print(all_exp)
                lines.append(all_exp)
            else:
                lines.append(line)

旅行图片

这是某学长旅行时拍摄的一张图片,所有信息未被修改过,试回答以下问题。
一、照片分析

  1. 图片所包含的 EXIF 信息版本是多少?(如 2.1)。

  2. 拍照使用手机的品牌是什么?

  3. 该图片被拍摄时相机的感光度(ISO)是多少?(整数数字,如 3200)

  4. 照片拍摄日期是哪一天?(格式为年/月/日,如 2022/10/01。按拍摄地点当地日期计算。)

  5. 照片拍摄时是否使用了闪光灯?

下载后用资源管理器(Windows)打开即可查看详细信息。

二、社工分析
酒店

  1. 请写出拍照人所在地点的邮政编码,格式为 3 至 10 位数字,不含空格或下划线等特殊符号(如 230026、94720)。

  2. 照片窗户上反射出了拍照人的手机。那么这部手机的屏幕分辨率是多少呢?(格式为长 + 字母 x + 宽,如 1920x1080)

航班
仔细观察,可以发现照片空中(白色云上方中间位置)有一架飞机。你能调查出这架飞机的信息吗?

  1. 起飞机场(IATA 机场编号,如 PEK)

  2. 降落机场(IATA 机场编号,如 HFE)

  3. 航班号(两个大写字母和若干个数字,如 CA1813)

家目录里的秘密

题目描述为:
实验室给小 K 分配了一个高性能服务器的账户,为了不用重新配置 VSCode, Rclone 等小 K 常用的生产力工具,最简单的方法当然是把自己的家目录打包拷贝过去。

但是很不巧,对存放于小 K 电脑里的 Hackergame 2022 的 flag 觊觎已久的 Eve 同学恰好最近拿到了这个服务器的管理员权限(通过觊觎另一位同学的敏感信息),于是也拿到了小 K 同学家目录的压缩包。

然而更不巧的是,由于 Hackergame 部署了基于魔法的作弊行为预知系统,Eve 同学还未来得及解压压缩包就被 Z 同学提前抓获。

为了证明 Eve 同学不良企图的危害性,你能在这个压缩包里找到重要的 flag 信息吗?

下载题目文件后解压

tar -zxvf user_home.tar.gz

直接查找flag即可

cd user
find . -type f -exec  grep -Hn --color=auto "flag" {} \; >> ~/.Trash/out.out
posted @ 2022-10-26 10:26  Cisco_coco  阅读(185)  评论(0)    收藏  举报