HGAME2021,week1,web总结:
之前耽误了一段时间,现在才开始写wp。总之,果然还是实战比较管用。
1、Hitchhiking_in_the_Galaxy
这个题一进界面就有一个大大的404,只有一个链接可以点。点了之后又会回到index.php页面,这个时候就应该使用burpsuite来对该链接进行拦截和重定向。
发包后看见了一个提示:
上面提示说顺风车不是这么搭的,有一个405,这个状态码表示指定的URL不支持请求中所使用的方法。
一般来说,常用的请求方法就是GET和POST,这个时候就要用BS改包,更换请求方法,得到如下:
看见提示,可以知道要更改消息头中的User-Agent(这个消息头是用来提供与浏览器或生成请求的其他客户端软件有关的信息)
,改成无限曲率引擎,出题人在玩梗。
如下:
这个时候又有提示了,一共两个链接,一个是链接到出题人的github,一个就是链接到Cardinal,这个时候就又要更改一个消息头——即是Referer,改成相应的链接就行,原因是Referer这个消息头是用于指示提出当前请求的原始URL,也就是请求是来自哪一个网站的。
如下:
这个时候又有最后一个提示,要从本地获取flag,也就是要我们修改自身访问的ip,可以使用一个伪造ip的方法——使用x-forwarded-for消息头。
具体如下:
得到flag。
总结:感觉上这道题主要就是在考对于HTTP消息头的熟悉,其中比较重要的一点,我觉得是x-forwarded-for,这个用来修改ip的方法我之前是知道的,但是还没实践过,这边使用的时候,我就发现这个消息头必须要放在一个特定的位置。
2、watermelon
要求是玩一个游戏,达到2000分就可以拿到flag,这个一看就是要让我们想办法作弊啊(虽然说我在比赛群里面听说有人强行打到了2000分拿到了flag)。
对于这样的题我一开始没有什么思路,后面在网上找了一段时间的资料,最后想到了一个办法,就是使用后台扫描器,去查看这个的文件。
我使用的是御剑软件。
通过扫描可以得到一个readme.md的文件,进而可以找到相应的github的源代码。接下来的具体操纵我是参考这个文章进行的。
https://zhuanlan.zhihu.com/p/348098314
总的来说就是修改代码逻辑,直接获得分数。
但相对的,在官方出的WP和我的做法有一些不一样,是用一个cocos debug tool来查看代码的,最后直接就从相应的代码段里面找到了flag,进行以此base64解码就可以拿到flag。
3、宝藏走私者:
这个题比较重要,我会单独开一个来记载http走私攻击手段。
4解码就可以拿到flag。
3、宝藏走私者:
这个题比较重要,我会单独开一个来记载http走私攻击手段。
<未完>