WebSocket走私实践(附赠LiveGBS监控系统未授权管理员密码重置)

news2024/11/28 22:36:51

WebSocket走私实践(附赠LiveGBS监控系统未授权管理员密码重置)

对此,我特别感谢TryHackMe和HackTheBox academy,永远相信和追随英国TryHackMe所教导的网络安全知识,并保持学习

在这里插入图片描述

WebSocket走私相关的知识在这里

前段时间学习过http1/2走私、websocket走私,所以令我对response status code 101和426有了从未有过的关注

并成功在实战中关注到101和426的http响应,最终找到一处WebSocket走私


此处 WebSocket升级时导致走私的原因是设置了错误的版本,如,
请求头:Sec-WebSocket-Version: 777
再将Content-Length设置为0,即可触发WebSocket走私。

进一步原因是前端没有验证后端WebSocket是否升级成功(code 101),即使升级失败(code 426)前端也依然使用WebSocket处理,而后端仍然使用HTTP,在TryHackMe已经解释的非常清楚

当前端处理完交给后端时,后端会处理Content-Length和Transfer-Encoding标头,我们就可以通过传统HTTP走私伪造http请求头来触发它

在这里插入图片描述

这还是第一次在实战中发现这一切,尽管后面发生了些不愉快的事情,但THM与HTB所教导的知识利用在了现实环境中的感觉依然很棒。


LiveGBS 匿名访问 未授权管理员密码重置缺陷

在这里插入图片描述

开启了匿名访问就可以浏览监控

在这里插入图片描述

但LiveGBS系统的游客访问并不是因为有专门的功能开发,而是关闭了api鉴权功能,所以根据LiveGBS的api文档,我们可以很轻松的利用密码重置api来对管理员账户进行密码重置。

在这里插入图片描述

可以看到重置密码这条日志的操作人是空的

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1851234.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

关于小程序内嵌H5页面交互的问题?

有木有遇到?有木有遇到。 小程序内嵌了H5,然后H5某个按钮,需要打开小程序某个页面进行信息完善或登记,登记后要返回H5页面,而H5页面要动态显示刚才在小程序页面登记的信息。 操作流程是这样: 方案1&#…

一般人不要学Python?一般人怎么学Python!!

关于“建议一般人真的不要学Python”这一观点,我认为这是一个过于绝对的说法。实际上,Python作为一种流行的编程语言,具有许多优点,适合不同背景和需求的人学习。以下是一些反驳这一观点的理由: 易于学习和理解&#x…

学习笔记——路由网络基础——动态路由

五、动态路由 1、动态路由概述 动态路由:通过在设备上运行某种协议,通过该协议自动交互路由信息的过程。 动态路由协议有自己的路由算法,能够自动适应网络拓扑的变化,适用于具有一定数量三“层设备的网络。 动态路由协议适用场…

C++ 89 之 string查找和替换

#include <iostream> #include <string> using namespace std;int main() { // int find(const string& str, int pos 0) const; //查找str第一次出现位置,从pos开始查找 // int find(const char* s, int pos 0) const; //查找s第一次出现位置,从pos开始查找…

【吊打面试官系列-Mysql面试题】什么是存储过程?用什么来调用?

大家好&#xff0c;我是锋哥。今天分享关于 【什么是存储过程&#xff1f;用什么来调用&#xff1f;】面试题&#xff0c;希望对大家有帮助&#xff1b; 什么是存储过程&#xff1f;用什么来调用&#xff1f; 答&#xff1a;存储过程是一个预编译的 SQL 语句&#xff0c;优点是…

Flutter-实现头像叠加动画效果

实现头像叠加动画效果 在这篇文章中&#xff0c;我们将介绍如何使用 Flutter 实现一个带有透明度渐变效果和过渡动画的头像叠加列表。通过这种效果&#xff0c;可以在图片切换时实现平滑的动画&#xff0c;使 UI 更加生动和吸引人。 需求 我们的目标是实现一个头像叠加列表&…

2024信友队春季 Day3 二分分治

二分 & 分治 二分 二分查找 也叫折半搜索&#xff0c;用于在一个有序数组中查找某一元素的算法。 给定一个长度为 n n n 的从小到大排列的数列 a a a 和 q q q 次询问&#xff0c;每次询问给定 x x x&#xff0c;查找 x x x​ 在数列中的位置。 n , q ≤ 1 0 6 n,q\…

【机器学习】大模型驱动下的医疗诊断应用

摘要&#xff1a; 随着科技的不断发展&#xff0c;机器学习在医疗领域的应用日益广泛。特别是在大模型的驱动下&#xff0c;机器学习为医疗诊断带来了革命性的变化。本文详细探讨了机器学习在医疗诊断中的应用&#xff0c;包括疾病预测、图像识别、基因分析等方面&#xff0c;并…

cherry 笔记三(启动)

cherry启动很简单 app创建完 直接startup()就好了 func main() {app : cherry.Configure("./examples/config/profile-chat.json","chat-master",false,cherry.Cluster,)app.SetSerializer(cserializer.NewJSON())app.Startup() } Configure()--->N…

深入理解RunLoop

RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念&#xff0c;这篇文章将从 CFRunLoop 的源码入手&#xff0c;介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中&#xff0c;苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。 一…

01_01_Mybatis的介绍与快速入门

一、数据持久层框架的发展历程 1、JDBC JDBC&#xff08;Java Data Base Connection&#xff09;&#xff0c;是一种用于执行SQL语句的Java API&#xff0c;为多种关系型数据库提供了统一访问的方式&#xff0c;它由一组用Java语言编写的类和接口组成。JDBC提供了一种规范&…

meterpeter基础及永恒之蓝漏洞利用

meterpeter基础知识 meterpeter为渗透测试框架&#xff0c;主要用于后渗透模块 后渗透&#xff1a;拿到shell后进行的操作&#xff08;远程&#xff0c;权限维持&#xff0c;入侵痕迹清除&#xff0c;上机关闭杀毒软件&#xff09; msf能干什么 相当于一个漏洞库&#xff08…

时序预测 | Matlab基于Transformer多变量时间序列多步预测

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab基于Transformer多变量时间序列多步预测&#xff1b; 2.多变量时间序列数据集&#xff08;负荷数据集&#xff09;&#xff0c;采用前96个时刻预测的特征和负荷数据预测未来96个时刻的负荷数据&#xff1b; 3…

【大数据离线项目三:将HIve数仓中的dim进行拉宽聚合处理,PostgreSQL的使用,以及怎么将数据导出到PostgreSQL数据库中】

前言&#xff1a; &#x1f49e;&#x1f49e;大家好&#xff0c;我是书生♡&#xff0c;今天主要和大家分享一下将HIve数仓中的dim进行拉宽聚合处理&#xff0c;PostgreSQL的使用&#xff0c;以及怎么将数据导出到PostgreSQL数据库中,希望对大家有所帮助。 &#x1f49e;&…

“论软件的可靠性评价”必过范文,软考高级,系统架构设计师论文

论文真题 软件可靠性评价是软件可靠性活动的重要组成部分,既适用于软件开发过程,也可针对最终软件系统。在软件开发过程中使用软件可靠性评价,可以使用软件可靠性模型,估计软件当前的可靠性,以确认是否可以终止测试并发布软件,同时还可以预计软件要达到相应的可靠性水平…

html做一个雷达图的软件

要实现一个在线输入数据并生成雷达图的功能&#xff0c;可以使用HTML表单和JavaScript来处理用户输入的数据。以下是一个示例代码&#xff0c;演示了如何实现这个功能&#xff1a; <!DOCTYPE html> <html lang"zh"> <head><meta charset"…

Redis进阶 - 朝生暮死之Redis过期策略

概述 Redis 是一种常用的内存数据库&#xff0c;其所有的数据结构都可以设置过期时间&#xff0c;时间一到&#xff0c;就会自动删除。你可以想象 Redis 内部有一个死神&#xff0c;时刻盯着所有设置了过期时间的 key&#xff0c;寿命一到就会立即收割。 你还可以进一步站在死神…

C/C++ vector模拟实现

模拟实现&#xff1a; 框架 namespace yx {template<class T>class vector{public:typedef T* iterator;private:iterator _start;iterator _finish;iterator _end_of_storage;}; } 这里我们声明定义不分离 reverse() 新开一个空间&#xff0c;拷贝数据&#xff0c;然…

Python-日志模块

目录 一、日志级别 二、日志配置 1、日志基本配置 2、日志配置字典&#xff08;知道咋么改就可以&#xff09; 3、日志的使用 一、日志级别 import logginglogging.debug(调试日志) logging.info(消息日志) logging.warning(警告日志) logging.error(错误日志) logging.cr…

ffmpeg音视频开发从入门到精通——ffmpeg 视频数据抽取

文章目录 FFmpeg视频处理工具使用总结环境配置主函数与参数处理打开输入文件获取流信息分配输出文件上下文猜测输出文件格式创建视频流并设置参数打开输出文件并写入头信息读取、转换并写入帧数据写入尾信息并释放资源运行程序注意事项源代码 FFmpeg视频处理工具使用总结 环境…