HGAME 2024 WEEK 1

WEB

2048*16

思路一(猜测)

复制js源码

搜over

发现可疑字符串

image-20240207133808549

搜won,又发现可疑字符串

image-20240207133854421

存在等号,可能是base64变表,直接拿去试一下

image-20240207133928092

发现成功

flag{b99b820f-934d-44d4-93df-41361df7df2d}

思路二(运行前台js)

将index-_wkhdPNY.js文件的源码全复制到控制台,然后搜won,在控制台直接运行

1
2
3
4
5
6
7
g[h(432)][h(469)] = function(x) {
var n = h
, e = x ? "game-won" : n(443)
, t = x ? s0(n(439), "V+g5LpoEej/fy0nPNivz9SswHIhGaDOmU8CuXb72dB1xYMrZFRAl=QcTq6JkWK4t3") : n(453);
this[n(438)][n(437)].add(e),
this[n(438)][n(435)]("p")[-1257 * -5 + 9 * 1094 + -5377 * 3].textContent = t
}

中的代码

image-20240210204909641

发现成功

flag{b99b820f-934d-44d4-93df-41361df7df2d}

jhat

1
2
new java.util.Scanner(java.lang.Runtime.getRuntime().exec('cat
/flag').getInputStream())

image-20240207114853830

ezHTTP

第一关修改Referer请求头

image-20240129234508936

第二关修改User-Agent请求头

image-20240129234528781

第三关修改X-Real-IP请求头

image-20240129234652451

最后去查看响应头

image-20240129234727797

发现

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJGMTRnIjoiaGdhbWV7SFRUUF8hc18xbVAwclQ0bnR9In0.VKMdRQllG61JTReFhmbcfIdq7MvJDncYpjaT7zttEDc

去大厨解密

image-20240129234803223

得到flag

hgame{HTTP_!s_1mP0rT4nt}

Bypass it

打开环境,先在检查->设置里关闭js

image-20240129235059010

然后再点注册

image-20240129235123522

随便注册用户名和密码

image-20240129235201559

界面虽然空白,那是我们禁用了js的原因,可以看到源码里显示注册成功

我们再次去登录

image-20240129235258895

页面依旧没回显,原因同上,但是在源码里面我们发现了userIndex.php路由,去访问一下

image-20240129235358353

按照指示点击

image-20240129235421753

得到flag

hgame{f4eeefe37218665c7edf9052e64b535385de6117}

select courses

额….

这题就是选课,我疯狂点了好久就莫名奇妙选上了(事后看官方wp发现其实是每隔一定的时间就会放出课程,只要不停发包抢就行,其实和我一样啦)

image-20240131124347566

image-20240131124323004

hgame{w0W_!_1E4Rn_To_u5e_5cripT_^_^}

MISC(简单的不写了^_^)

simple_attack

看到压缩包里面有一张和附件给你的一模一样的图片就要知道是明文攻击

首先用bandzip去压缩给你的那张图片成zip文件,然后用archpr去明文攻击,解压缩出加密的压缩包,得到

image-20240204142848670

用base64去解密得到图片

image-20240204142931017

得到flag:hgame{s1mple_attack_for_zip}

来自星尘的问候

想到jpg有密码,先去试了一下stegseek

image-20240204143117387

提取得到了一个压缩包,打开之后发现

image-20240204143150013

去谷歌搜图搜一下,竟然失败了,那就根据题目描述去游戏官网找

image-20240204143408029

得到了游戏名,那就去访问官网,最后查询到文字

image-20240204143934068

所以flag:hgame{welc0me!}

tips:flag一般具有语义哈,所以不是hgame{zelcome!},虽然z和w对应的符号很像,还有0和o是试出来的哈^_^

reserve

ezIDA

先用exeinfo分析一下可执行文件

image-20240207140751243

发现是64位不加壳的文件,就去ida里看一下

image-20240207141010070

直接得到flag

ezUPX

用exeinfo查看

image-20240207141512515

发现64位进程并且加壳,先去upx脱壳

image-20240207141852160

再用ida64打开

image-20240207143733748

可以看到是flag和0x32异或然后存在byte_1400022A0的数组里,去看这个数组

image-20240207143834966

接下来就是去写exp了

1
2
3
4
5
6
7
hex_arrar=(0x64, 0x7B, 0x76, 0x73, 0x60, 0x49, 0x65, 0x5D, 0x45, 0x13, 0x6b,0x2,0x47,0x6d,0x59,0x5c,0x2,0x45,0x6d,0x6,0x5d,0x5e,0x3,0x46,0x46,0x5e,0x1,0x6d,0x2,0x54,0x6d,0x67,0x62,0x6a,0x13,0x4f,0x32,0x0b)

s=""
for i in range(0,len(hex_arrar)):
c=hex_arrar[i]^0x32
s=s+chr(c)
print(s)

得到

image-20240207143903208


HGAME 2024 WEEK 1
http://www.qetx.top/posts/63133/
作者
Qetx.Jul.27
发布于
2024年1月29日
许可协议