hgame
hgame week1
web
ezhttp
题目要求从vidar.club
进入
修改请求头之后,根据题目修改use-agent
并从本地访问,这里普通的 X-Forwarded-For: 127.0.0.1,或client-ip:127.0.0.1都不可以,查阅资料,我们发现了X-Real-IP:127.0.0.1
可以实现功能
刚开始以为是需要抓包,尝试了半天结果是上方给的密文,试了一下base64
解码,得到flag
bypass it
题目要求我们登录,但是首先要注册,点击注册会根据弹窗返回登陆页面,根据提示,我们禁用js
,成功登录
Select Courses
这题模拟的是选课系统,随机会有课放出来,因此我们搞个爬虫判断课程是否有余量并不断发送请求
1 | import json |
2048*16
游戏要求我们玩到2048*16
的分数即可获得flag
,网页源代码是混淆过的js
代码,我们想要分析出在游戏胜利的时候会输出什么内容,我们查找关键字game
1 | g[h(432)][h(469)] = function(x) { |
通过分析,猜测输出的可能是s0(n(439), "V+g5LpoEej/fy0nPNivz9SswHIhGaDOmU8CuXb72dB1xYMrZFRAl=QcTq6JkWK4t3")
,但是未知的变量和函数还需要逐步查找
我们拼接出这一行的关键信息的相关代码
1 |
|
但是并没有输出答案,查找猜测可能是源代码把x打乱了
1 | (function(x, n) { |
加入到测试代码后成功输出flag
jhat
java
小白对界面可以说是一无所知,只能根据现有的hint,进行查阅资料jhat
1 | jhat是jdk内置的工具之一。 主要是用来分析java堆的命令,可以将堆中的对象以html的形式显示出来,包括对象的数量,大小等等,并支持对象查询语言。 使用jmap等方法生成java的堆文件后,使用其进行分析。 |
又粗查了一些简单的oql语法,长得和sql有点像
查到了相关用法,根据hint,查到资料可以使用exec()
函数,查询flag
但是由于输出会调用ToString
方法,导致无法输出内容,查阅资料得到payload
。
misc
simple_attack
下载附件之后发现是一个压缩包和一个图片的组合,上网查找了一下有关压缩包的Misc知识,联想可能是明文爆破,
但是出现了报错,询问了学长,发现明文需要用src
,爆破成功。
打开photo.txt
,发现该文本文件是一个以image/png;base64
开头的乱码,在查阅资料后,查到需要我们把文本内容复制到浏览器里面,得到flag。
希尔希尔希尔
打开图片是乱码,猜测是修复图片长宽,载入crc32脚本,查验出图片原来的数据,把图片拖到010editor
,修改数据,得到原本的图片。
1 | import os |
看文件大小,直觉先binwalk
一下,确实有隐藏文件,给了好几个文件,折腾了半天,原来就一个secret.txt
,根据题目提示,可能是希尔密码,但是缺少密钥,但是还原后的图片还没有用上,原来是还有一层lsb
隐写,哇咔咔,密钥到手了。
载入解密网站,拿到flag
。
来自星辰的问候
根据题目提示的6位弱加密,用了setghide
找到了隐藏文件,分别是一个图片和一个网页源代码文件,随后用浏览器打开,是一个可以上传文件的网站
随后我们打开图片,还好出题人给了提示,原来官网有这种奇妙文字,按F12
找到字体的ttf文字,想要通过给的网站转换一下,但是没用明白,最后手动对位的,得到flag