title: HGAME2019-Week 1
date: 2019-02-02 20:00:00
tags: [Writeup,ctf]
categories: hgame
Week-1 Web
谁吃了我的flag
描述:呜呜呜,Mki一起床发现写好的题目变成这样了,是因为昨天没有好好关机吗T_T
hint: 据当事人回忆,那个夜晚他正在用vim编写题目页面,似乎没有保存就关机睡觉去了,现在就是后悔,十分的后悔。
URL http://118.25.111.31:10086/index.html
根据所给提示用vim编写题目,那么就应该是考察vim文件泄露了,vim文件泄露分为两种:
- vim备份文件泄露:默认情况下使用Vim编程,在修改文件后系统会自动生成一个带~的备份文件,某些情况下可以对其下载进行查看;
- vim临时文件泄露:vim中的swp即swap文件,在编辑文件时产生,它是隐藏文件,如果原文件名是index.php,则它的临时文件 .index.php.swp。如果文件正常退出,则此文件自动删除。
hint中说用vim编写题目页面,没有保存就关机了,所以应该是vim临时文件泄露。
访问http://118.25.111.31:10086/.index.html.swp
下载泄露的文件,然后在Linux下cat一下,拿到flag hgame{3eek_diScl0Sure_fRom+wEbsit@}
换头大作战
描述:想要flag嘛
工具: burpsuite postman hackbar 怎么用去百度,相信你可以的
URL http://120.78.184.111:8080/week1/how/index.php
题目中说要用burpsuite
postman
hackbar
那该题应该就是抓包改包了
随便输进去一个东西看一看回显,从url可以看出提交的内容是GET方式,而回显让用POST方式
mark用burpsuite抓个包,然后Change request method,把包发送过去,又有一个提示,只有localhost才能拿到flag,localhost就是127.0.0.1
mark然后修改请求头,添加一个X-Forwarded-For: 127.0.0.1
发送过去。
发送过去之后得到的回显是让修改User_agent,在User-Agent后面加一个Waterfox/50.0
再修改referer,从b站上跳转过去的Referer: www.bilibili.com
必须是admin,修改Cookie: admin=0
为Cookie: admin=1
,改了这么多,终于拿到了flaghgame{hTTp_HeaDeR_iS_Ez}
very easy web
描述 代码审计初♂体验
URL http://120.78.184.111:8080/week1/very_ez/index.php
访问url可以看到源码,如下
<?php
error_reporting(0);
include("flag.php");
if(strpos("vidar",$_GET['id'])!==FALSE)
die("<p>干巴爹</p>");
$_GET['id'] = urldecode($_GET['id']);
if($_GET['id'] === "vidar")
{
echo $flag;
}
highlight_file(__FILE__);
?>
我们先分析一下,strpos() 函数查找字符串在另一字符串中第一次出现的位置,也就是传过去的参数id在vidar中第一次出现的位置。如果字符串开头就是我们要搜索的目标,则返回下标 0 ;如果搜索不到,则返回 false 。但是这里用的是!== false
,解决strpos返回0值的问题。也就是只要出现,就会die。
然后再对传过去的参数id进行urldecode解码,如果解码后的id是字符串vidar
就输出flag。
我们要想拿到flag,就要让id在vidar中查找失败,又要让他url解码后是vidar。
其实当我们请求url时浏览器就会转码一次,然后代码中又进行了一次urldecode,所以这里我们可以用urldecode二次编码来绕过,?id=%2576idar
然后拿到flaghgame{urlDecode_Is_GoOd}
can u find me?
描述 为什么不问问神奇的十二姑娘和她的小伙伴呢
学习资料:
https://www.cnblogs.com/yaoyaojing/p/9530728.html
https://www.cnblogs.com/logsharing/p/8448446.html
https://blog.csdn.net/z929118967/article/details/50384529
URL http://47.107.252.171:8080/
打开题目之后显示<the gate has been hidden can you find it? xixixi>隐藏了
先查看一下页面源代码,发现有个f12.php
,打开f12.php,提示把password用post方式发给他
那么password是啥呢?看一下源码,什么都没有,再看看发送的请求包,果然!password是woyaoflag
。
发送之后给了有个链接toofast.php
,打开之后显示<aoh,your speed is sososo fast,the flag must have been left in somewhere> ,还是没有flag,提示太快,看了一下网络,发现在f12.php到toofast.php中间还有一个302的iamflag.php。
抓包访问iamflag.php
,拿到flaghgame{f12_1s_aMazIng111}
网友评论