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

泷羽sec学习打卡-brupsuite6暴力破解与验证码识别绕过

声明
学习视频来自B站UP主 泷羽sec,如涉及侵权马上删除文章 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都
与本人无关,切莫逾越法律红线,否则后果自负


关于brupsuite的那些事儿-验证码绕过以及字典爆破

    • 如何利用brpsuite进行验证码绕过呢?
      • 1、下载接口获取api工具captcha-killer-modified
      • 2、下载对于的jdk版本的jar包
      • 3、brupsuite中扩展captcha-killer-modified插件
      • 4、在github中下载验证码识别服务ddddocr
    • 实战
      • 使用fofa搜索一个棋牌管理后台
      • 随便找个后台
      • 使用brupsuite抓包
      • 发送到captcha-killer-modified插件扩展中
      • 准备字典和payloads进行自动化爆破
    • 安装pikachu
    • 暴力破解漏洞练习实战
    • 实践是检验真理的唯一标准


如何利用brpsuite进行验证码绕过呢?

大家都知道,平常登录xx后台管理系统是有些需要账号、密码,有些也需要验证码验证,那么我们实际渗透测试中需要每次都去输入验证吗?,这样是不是很麻烦,所以这次分享如何绕过验证码,自动获取验证码后和识别验证,话不多说,直接开干好吧
前提条件:
你已经安装好了brupsuite专业版,只有专业版才有扩展功能,其次已经安装好Java以及jdk17,并配置好了环境变量

1、下载接口获取api工具captcha-killer-modified

captcha-killer-modified是一个用于Burpsuite的插件,主要功能是识别验证码,针对登录入口进行爆破时需要验证码的场景。

git clone https://github.com/f0ng/captcha-killer-modified.git

点击下载captcha-killer-modified
在这里插入图片描述
在这里插入图片描述

2、下载对于的jdk版本的jar包

使用命令查看本机的java版本
在这里插入图片描述

点击下载对应的jdk的jar包

在这里插入图片描述
这里我选择jdk14,因为我安装的java是jdk17

3、brupsuite中扩展captcha-killer-modified插件

在这里插入图片描述
扩展安装成功
在这里插入图片描述
这里说明下captcha-killer-modified主要是提供api获取调用能力,并不具备验证码图片识别的能力,这里我们用ddddocr插件完成图片识别,ddddocr是一款图像识别,滑块识别很强大的插件

4、在github中下载验证码识别服务ddddocr

ddddocr是一款开源的通用验证码识别OCR工具,验证码识别接口用到的是Python库中的ddddocr,Web服务用 到的是aiohttp。 因此我们需要使用到Python环境,本次教程中使用的版本为 Python3.10.4(较新的python3都可以)。

git clone https://github.com/sml2h3/ddddocr.git

点击ddddocr
在这里插入图片描述
这里可以cd到ddddocr的目录,然后cd ddddocr 、python setup.py安装即可,但是我还是喜欢pip命令进行安装

pip install -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com ddddocr aiohttp

在这里插入图片描述

###5、安装完成后执行codereg.py
打开之前下载解压的项目源码的路径,在该路径下打开dos窗口(shift+鼠标右键,选择在此处打开powershell;),在dos界面输入“python coderg.py”,出现以下内容即代表验证码识别服务已搭建完成。
在这里插入图片描述

实战

使用fofa搜索一个棋牌管理后台

在这里插入图片描述

随便找个后台

但是后面咱还是用pikachu漏洞联系平台好吧
在这里插入图片描述

使用brupsuite抓包

在这里插入图片描述

发送到captcha-killer-modified插件扩展中

将获取验证码的get接口信息发送到验证码识别插件中
在这里插入图片描述

使用captcha-killer-modified进行获取验证码,这个其实就相当于重发接口进行请求
在这里插入图片描述
右键选择ddddcor模板库

在这里插入图片描述
成功识别验证码图片中的验证码数字,当然ddddocr的工具不止这些,对于滑动的验证码也是可以识别的,识别率80%
在这里插入图片描述

准备字典和payloads进行自动化爆破

注意:本次分享只是分享渗透测试,不可用于非法操作,出现其他问题,与本人无关,学安全,先学懂安全法
添加两个payloads,用于字典枚举
在这里插入图片描述

准备一个字典,字典可以在github中寻找,渗透的本质就是信息收集,都懂好吧,第一个payloads是pwd
在这里插入图片描述
第二个payloads是captcha
在这里插入图片描述
开始attack,可以通过length进行判断是否是正确的,一般成功的响应内容的字节是不同,其次可以通过观察response判断是否成功,成功的响应内容一般在响应体中所有表现,这里我不再多讲,懂得都懂,但是还句话,不要搞cn,多搞jp us
在这里插入图片描述
实战就到这里,这个后台没啥好说的了,是否进去,学过都懂,这里我不再多说,只是说实战很多东西,只能实践后自己知道,无法分享。
接下来咱用pikachu漏洞联系平台再来练习下

安装pikachu

1、访问github,下载pikachu
使用git克隆pikachu使用:git clone https://github.com/zhuifengshaonianhanlu/pikachu.git
pikachu
在这里插入图片描述
2、下载一个网站面板,可以用小皮、也可以用宝塔
小皮面板:小皮
启动小皮,这里需要关闭本机按照的mysql或者其它相关服务,以免冲突,小皮自带基础服务套件
在这里插入图片描述
点击左边的 “网站” 按钮,选择 “管理” 然后打开根目录。把你下载的pikchu文件解压到www目录下
在这里插入图片描述
配置小皮网站跟目录文件url,鼠标双击选择好pikachu路径
在这里插入图片描述
然后去浏览器访问127.0.0.1/install.php即可,跟着提示进行安装/初始化即可
注意点:如果这里提示数据库不可连接,可能是本地mysql服务冲突,自己可以使用mysql -u root -p进行本地mysql服务连接测试是否正常运行,若不对先把本机的mysql服务配置好,网上教程很多
在这里插入图片描述

暴力破解漏洞练习实战

过程我相信大家应该都挺熟悉的了吧,就不再过多赘述,一张图,相信大家都理解了80%
在这里插入图片描述
结果也是显然的,还记得之前提过的观察技巧吗?
1、观察length长度,一般成功都length不同,因为响应内容不同
2、观察response以及响应体,这个主要是单方面的自动化登录,如果把接口真理好梳理好,也可以使用根据一条业务线进行自动化,比如更改服务器端get响应体,客户端post、put、path等http协议请求体/头,又或者是websocket实时连接,更改服务器返回都response等,本质都是一样的
在这里插入图片描述
那么这个第一关也就通过了,后续咱们就把所有的pikachu都打通关好吧,还是很有意思的哈
在这里插入图片描述
在这里插入图片描述

我还是那句话,该说不说

实践是检验真理的唯一标准

相关文章:

泷羽sec学习打卡-brupsuite6暴力破解与验证码识别绕过

声明 学习视频来自B站UP主 泷羽sec,如涉及侵权马上删除文章 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都 与本人无关,切莫逾越法律红线,否则后果自负 关于brupsuite的那些事儿-验证码绕过以及字典爆破 如何利用brpsuite进行验证码绕过呢?1、下…...

vue季度选择器(antd2.0 版本无此控件,单独写一个)

vue季度选择器 效果显示 效果显示 <template><div><a-popoverplacement"bottom"overlayClassName"season-picker"trigger"click"v-model"showSeason"><template #content><div class"season-picker-b…...

Microsemi Libero使用技巧11——CoreUARTAPB RX管脚分配时不显示

调用串口IP核CoreUARTAPB&#xff0c;并例化到顶层设计&#xff0c;发现UART_RX管脚在进行管脚分配时没有显示出来&#xff0c;最后发现是CoreAPB3总线IP核配置不对导致&#xff0c;改为如下配置后正常。...

回归预测 | MATLAB实现SVM-Adaboost集成学习结合支持向量机多输入单输出回归预测

回归预测 | MATLAB实现SVM-Adaboost集成学习结合支持向量机多输入单输出回归预测 目录 回归预测 | MATLAB实现SVM-Adaboost集成学习结合支持向量机多输入单输出回归预测基本介绍程序设计基本介绍 SVM-Adaboost集成学习是一种将支持向量机(SVM)与AdaBoost算法相结合的集成学习…...

Keil-MDK开发环境编译后axf自动转换bin格式文件

编译选项添加如下&#xff0c;调用fromelf工具自动完成转换&#xff1a; fromelf --bin -o "$LL.bin" "#L"...

计算机组成原理(五):程序装载

在计算机组成原理中&#xff0c;程序装载&#xff08;Program Loading&#xff09;是指将程序从外存&#xff08;如磁盘&#xff09;加载到内存中&#xff0c;并为其运行做好准备的过程。程序装载是实现程序从静态存储状态到动态运行状态的关键环节&#xff0c;涉及地址映射、内…...

开发EDA工具常用的三方开源

EDA软件是制造芯片重要工具&#xff0c;是现在举国的大难题。这个工具难在哪里&#xff0c;几句话说不清&#xff0c;但它确实也有一些非常通用的功能&#xff0c;这些功能依赖一些成熟的轮子&#xff0c;这些轮子&#xff0c;就是三方的开源项目&#xff0c;下面列举一些常用的…...

微信小程序中 crypto-js 加解密全攻略

一、引言 在微信小程序开发中&#xff0c;数据的安全至关重要。加解密技术在保护用户数据和应用程序的安全性方面起着关键作用。小程序在与服务器进行数据交互时&#xff0c;面临着数据泄露、篡改等安全风险。为了确保用户信息的安全&#xff0c;选择合适的加解密算法变得尤为…...

Vue2 - 最新实现将多个文件批量导出为ZIP压缩包格式并下载功能,纯前端下载多个文件打包输出成zip格式,vue2将文件批量下载打包成ZIP下载保存本地(后端二进制文件流/base64图片/url

前言 Vue3 版本,请访问 这篇文章。 在 vue2 | nuxt2 项目开发中,详解实现把多个文件组合成一个ZIP压缩包格式下载到用户本地,将文件批量下载打包成zip格式并自定义压缩包命名名称,vue批量下载文件并导出为压缩包的功能,如何将后端返回的二进制文件流打包成zip格式,支持任…...

The Rise and Potential of Large Language ModelBased Agents:A Survey---摘要、背景、引言

题目 基于大语言模型的Agent的兴起与发展前景 论文地址&#xff1a;https://arxiv.org/pdf/2309.07864.pdf 项目地址&#xff1a;https:/github.com/WooooDyy./LLM-Agent–Paper-List 摘要 长期以来&#xff0c;人类一直在追求等同于或超越人类水平的人工智能(A)&#xff0c;…...

【unity】从零开始制作平台跳跃游戏--界面的认识,添加第一个角色!

在上一篇文章中&#xff0c;我们已经完成了unity的环境配置与安装⬇️ 【Unity】环境配置与安装-CSDN博客 接下来&#xff0c;让我们开始新建一个项目吧&#xff01; 新建项目 首先进入unityHub的项目页面&#xff0c;点击“新项目”&#xff1a; 我们这个系列将会以2D平台…...

Java中的Stream

1. 什么是 Stream&#xff1f; Stream 是 Java 8 引入的一种新方式&#xff0c;目的是帮助我们更简洁、更高效地处理集合&#xff08;如 List、Set、Map 等&#xff09;。你可以把 Stream 想象成一条“流水线”&#xff0c;数据就像是流水线上的原材料&#xff0c;经过流水线的…...

ARM学习(36)静态扫描规则学习以及工具使用

笔者来学习了解一下静态扫描以及其规则,并且亲身是实践一下对arm 架构的代码进行扫描。 1、静态扫描认识 静态扫描:对代码源文件按照一定的规则进行扫描,来发现一些潜在的问题或者风险,因为不涉及代码运行,所以其一般只是发现一些规范或则一些质量问题,当然这些可能存在潜…...

前端将base64转pdf页面预览

前端将base64转pdf页面预览 <embed :src"pdfList" width"100%" height"100%" type"application/pdf" />pdfList.value data:application/pdf;base64,${res}//后端传jpg或pdf格式可直接 :src“返回内容”显示...

Java-26 深入浅出 Spring - 实现简易Ioc-02 无IoC与AOP场景下实现业务

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 大数据篇正在更新&#xff01;https://blog.csdn.net/w776341482/category_12713819.html 目前已经更新到了&#xff1a; MyBatis&#xff…...

能不能用一句话或者简洁地凝练深度学习的本质和精髓?

深度学习就是学习输入与输出之间的映射关系。 深度学习模型本质上只是个参数量很大的函数&#xff0c;其中函数的参数可以通过训练样本进行调整。 根据训练样本的不同&#xff0c;进一步可以分为以下几类&#xff1a; 一、给定输入以及对应的输出&#xff0c;其中输出是唯一的…...

我的宝贵经验

在技术的浩瀚海洋中&#xff0c;一份优秀的技术文档宛如精准的航海图。它是知识传承的载体&#xff0c;是团队协作的桥梁&#xff0c;更是产品成功的幕后英雄。然而&#xff0c;打造这样一份出色的技术文档并非易事。你是否在为如何清晰阐释复杂技术而苦恼&#xff1f;是否纠结…...

发现一个对话框中的按钮,全部失效,点击都没有任何反应,已经解决

前端问题&#xff0c;技术vue2&#xff0c;ts。 发现一个对话框中的按钮&#xff0c;全部失效&#xff0c;点击都没有任何反应。 因为我只在template标签中加入下面这个代码&#xff0c;并没有注册。 只要有一个子组件没有注册&#xff0c;就会影响所有的按钮&#xff0c;使当前…...

深度学习中损失函数(loss function)介绍

深度学习中损失函数(loss function)介绍 ​ 在深度学习的宏伟城堡中&#xff0c;损失函数扮演着国王的角色&#xff0c;它决定了模型训练的方向和目标。损失函数&#xff0c;也被称为代价函数&#xff0c;是衡量模型预测与实际结果之间差异的函数。在深度学习的训练过程中&…...

【渗透测试】信息收集二

其他信息收集 在渗透测试中&#xff0c;历史漏洞信息收集是一项重要的工作&#xff0c;以下是相关介绍&#xff1a; 历史漏洞信息收集的重要性 提高效率&#xff1a;通过收集目标系统或应用程序的历史漏洞信息&#xff0c;可以快速定位可能存在的安全问题&#xff0c;避免重复…...

前端三大框架 Vue、React 和 Angular 的市场占比分析

一、引言 ?? 随着前端技术的迅速发展&#xff0c;Vue.js、React 和 Angular 已成为全球最受欢迎的三大前端框架。在国内外&#xff0c;不同的框架在市场中的占比和流行程度存在显著差异。本文将从全球和中国市场的角度&#xff0c;对这三大框架的市场占比进行分析&#xff0…...

Gitlab服务管理和仓库项目权限管理

Gitlab服务管理 gitlab-ctl start # 启动所有 gitlab 组件&#xff1b; gitlab-ctl stop # 停止所有 gitlab 组件&#xff1b; gitlab-ctl restart # 重启所有 gitlab 组件&#xff1b; gitlab-ctl status …...

MySQL ON DUPLICATE KEY UPDATE影响行数

目录 分析为什么Updates返回7 总结 数据库更新日志如下 insertOrUpdateList|> Preparing: INSERT INTO clue_user_tag (vuid, tag_id, tag_type, content) VALUES (?, ?, ?, ?) , (?, ?, ?, ?) , (?, ?, ?, ?) , (?, ?, ?, ?) ON DUPLICATE KEY UPDATE …...

美团2024年秋招第一场笔试【前端移动端】

美团2024年秋招第一场笔试【前端&移动端】 2024/12/12 1.在一个长度为28的数组中删除第5个元素时&#xff08;元素序号&#xff1a;1~28&#xff09;&#xff0c;需要向前移动&#xff08;23&#xff09;个元素。 2.如下图一个树型结构&#xff0c;其结点E在树的中序遍历…...

【EXCEL】 获取多列中 不为空的那一个数据

从多个表格筛选出来的上班时间是下表这样的 我要把他们放在同一列&#xff0c;这样方便后续处理&#xff0c;合并列输入下面这个公式即可 日期不加 TEXT&#xff08;&#xff09; 函数 转日期格式&#xff1b;将得到是一串数字 TEXT(TEXTJOIN(", ",TRUE,B2:F2),&qu…...

Qt 开发笔记2

1> 样式表加载 一定要在Ui 初始化之前调用&#xff0c; 之后调用会不生效。 2> 设置QlineEdit输入框 具体四周的间距&#xff1a; setTextMargins(m_nLeftTextMargin, m_nTopTextMargin, m_nRightTextMargin, m_nBottomTextMargin);3> 设置背景图&#xff08;平滑不…...

R学习——数据框

目录 1数据框的合并 2数据框的访问 2.1 通过索引[] 2.2符号$访问 2.3 attach访问 2.4 with访问 1数据框的合并 当每个内容存储为单独的向量&#xff0c;data.frame可以进行这些内容单独数据框合并。 2数据框的访问 2.1 通过索引[] [i]输出对应的列 [i,]输出对应的行 …...

深入详解人工智能机器学习常见算法中的K-means聚类

目录 引言 1. K-means聚类的基本概念 1.1 K-means聚类的定义 1.2 K-means聚类的核心思想 1.3 K-means聚类的目标函数 2. K-means聚类的核心原理 2.1 初始化 2.2 分配 2.3 更新 2.4 迭代 3. K-means聚类的具体实现 3.1 K-means聚类的算法流程 3.2 K-means聚类的Pyt…...

TDengine SpringBoot操作

TDengine与Spring Boot的结合可以为开发者提供一个高性能、分布式的物联网、工业大数据处理平台&#xff0c;同时利用Spring Boot的简化配置和快速开发特性。以下是对TDengine与Spring Boot集成的详细解析&#xff1a; 一、TDengine简介 TDengine是由涛思数据开发的一款高性能…...

【sgFileLink】自定义组件:基于el-link、el-icon标签构建文件超链接组件,支持垃圾桶删除、点击预览视频/音频/图片/PDF格式文件

sgFileLink源代码 <template><div :class"$options.name"><el-link click.stop"clickFile(data)"><img :src"getSrc(data)" /><span>{{ getFileNameAndSize(data) }}</span></el-link><el-linkcl…...

C语言实验 函数一

时间:2024.12.14 6-1 弹球距离 double dist (double h,double p) {double sum = h,height;height = h*p;while(height>=TOL){sum += height * 2; //上行下行都算,所以是两倍的距离。height *=p;}return sum; } 6-2 使用函数输出一个整数的逆序数 错误代码:运行超…...

惠普Laser Jet MFP M437nda复印机成像装置严重不足及更换传输卷故障解决方法

惠普Laser Jet MFP M437nda复印机成像装置严重不足及更换传输卷故障解决方法,记录维修那点事儿,普通维修工的日常维修点滴; 惠普Laser Jet MFP M437nda复印机成像装置严重不足维修方法 如果复印及打印的效果没有问题的情况下我们也可以不更换套鼓及显影剂,那么不更换套鼓及…...

委托(Delegate)和事件(Event)-(下篇)

​​​​​​​委托(Delegate)与事件(Event)-&#xff08;上篇&#xff09;-CSDN博客 上一篇内容&#xff01; 一、创建非静态委托 在C#中&#xff0c;使用非静态委托意味着将委托绑定到类的实例方法上&#xff0c;而不是静态方法。这允许你通过委托调用特定对象上的方法&am…...

ios 开发配置蓝牙

如果使用了蓝牙功能, 又没有配置, 会出现以下错误: This app has crashed because it attempted to access privacy-sensitive data without a usage description. The apps Info.plist must contain an NSBluetoothAlwaysUsageDescription key with a string value explaini…...

JVM 栈帧结构详解

在 Java 虚拟机&#xff08;JVM&#xff09;中&#xff0c;栈帧&#xff08;Stack Frame&#xff09;是用于支持方法调用和方法执行的关键数据结构。每个方法从调用开始到执行完成&#xff0c;都对应着一个栈帧在虚拟机栈中从入栈到出栈的过程。本文将详细介绍 JVM 栈帧的结构及…...

HTML和JavaScript实现商品购物系统

下面是一个更全面的商品购物系统示例&#xff0c;包含新增商品、商品的增加删除以及结算找零的功能。这个系统使用HTML和JavaScript实现。 1.功能说明&#xff1a; 这个应用程序使用纯HTML和JavaScript实现。 包含一个商品列表和一个购物车区域。商品列表中有几个示例商品&a…...

(长期更新)《零基础入门 ArcGIS(ArcMap) 》实验三----学校选址与路径规划(超超超详细!!!)

目录 实验三 学校选址与道路规划 3.1 实验内容及目的 3.1.1 实验内容 3.1.2 实验目的 3.2 实验方案 3.3 操作流程 3.3.1 环境设置 3.3.2 地势分析 &#xff08;1&#xff09;提取坡度: (2)重分类: 3.3.3 学校点分析 (1)欧氏距离: (2)重分类: 3.3.4 娱乐场所点分析 (1)欧氏距离…...

ip_done

文章目录 路由结论 IP分片 数据链路层重谈Mac地址MAC帧报头局域网的通信原理MSS&#xff0c;以及MAC帧对上层的影响ARP协议 1.公司是不是这样呢? 类似的要给运营商交钱&#xff0c;构建公司的子网&#xff0c;具有公司级别的入口路由器 2&#xff0e;为什么要这样呢?? IP地…...

Mysql体系架构剖析——岁月云实战笔记

1 体系架构 理论内容阅读了mysql体系架构剖析&#xff0c;其他的根据岁月云的实战进行记录。 1.1 连接层 mysql最上层为连接服务&#xff0c;引入线程池&#xff0c;允许多台客户端连接&#xff0c;主要工作&#xff1a;连接处理、授权认证、安全防护、管理连接等。 连接处理&a…...

【卷积神经网络】AlexNet实践

构建模型 模版搭建 # 定义一个AlexNet模型类def __init__(self):# 调用父类的构造函数&#xff08;如果继承自nn.Module的话&#xff09;super(AlexNet, self).__init__()# ReLU激活函数self.ReLU nn.ReLU()# 卷积层1&#xff1a;输入1个通道&#xff08;灰度图&#xff09;&a…...

LF CRLF

这个提示的含义是&#xff1a;Git 检测到你当前的 file3.txt 文件中使用了 LF&#xff08;换行符&#xff0c;Line Feed&#xff0c;\n&#xff09; 作为换行符&#xff0c;但在你系统的 Git 配置中&#xff0c;指定要将其转换为 CRLF&#xff08;回车换行&#xff0c;Carriage…...

Python学习(二)—— 基础语法(上)

目录 一&#xff0c;表达式和常量和变量 1.1 表达式 1.2 变量 1.3 动态类型特性 1.4 输入 二&#xff0c;运算符 2.1 算术运算符 2.2 关系运算符 2.3 逻辑运算符 2.4 赋值运算符 2.5 练习 三&#xff0c;语句 3.1 条件语句 3.2 while循环 3.3 for循环 四&#…...

科研绘图系列:R语言绘制网络图和密度分布图(network density plot)

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载图1图2图3图4图5图6图7图8系统信息参考介绍 R语言绘制网络图和密度分布图(network & density plot) 加载R包 library(magrittr) library(dplyr) library(…...

python解题之寻找最大的葫芦

问题描述 问题描述 在一场经典的德州扑克游戏中&#xff0c;有一种牌型叫做“葫芦”。“葫芦”由五张牌组成&#xff0c;其中包括三张相同牌面值的牌 &#xfffd;a 和另外两张相同牌面值的牌 &#xfffd;b。如果两个人同时拥有“葫芦”&#xff0c;我们会优先比较牌 &#…...

openwrt安装tailscale

1. 下载 进入tailscale的github仓库复制最新版本的链接&#xff1a;点击跳转 wget https://github.com/adyanth/openwrt-tailscale-enabler/releases/download/v1.36.1-fb2f6cf-autoupdate/openwrt-tailscale-enabler-v1.36.1-fb2f6cf-autoupdate.tgz2.解压缩 tar x -zvC / …...

基于物联网的智能插座云平台 WIFI云平台MQTT协议

功能介绍 功能描述&#xff1a; STM32单片机为控制核心 LCD1602液晶显示当前时间温度 开启时间 关闭时间 按键设置开启时间/关闭时间&#xff0c;温度报警上限 到开启时间&#xff0c;继电器自动打开&#xff0c;到关闭时间&#xff0c;自动关闭 通过DS18B20温度传感器获…...

MySQL 事务

概念介绍 事务就是一组DML语句组成&#xff0c;这些语句在逻辑上存在相关性&#xff0c;这一组 DML 语句要么全部成功&#xff0c;要么全部失败&#xff0c;是一个整体。MySQL 提供一种机制&#xff0c;保证我们达到这样的效果。 事务就是要做的或所做的事情&#xff0c;主要用…...

消息中间件面试题-参考回答

消息中间件面试题-参考回答 面试官&#xff1a;RabbitMQ-如何保证消息不丢失 候选人&#xff1a; 嗯&#xff01;我们当时MYSQL和Redis的数据双写一致性就是采用RabbitMQ实现同步的&#xff0c;这里面就要求了消息的高可用性&#xff0c;我们要保证消息的不丢失。主要从三个层面…...

解决 MyBatis 中空字符串与数字比较引发的条件判断错误

问题复现 假设你在 MyBatis 的 XML 配置中使用了如下代码&#xff1a; <if test"isCollect ! null"><choose><when test"isCollect 1">AND exists(select 1 from file_table imgfile2 where task.IMAGE_SEQimgfile2.IMAGE_SEQ and im…...

【ETCD】【源码阅读】深入解析 etcd 的 `EtcdServer.Start` 函数

深入解析 etcd 的 EtcdServer.Start 函数 在 etcd 的代码中&#xff0c;EtcdServer.Start 是一个关键方法&#xff0c;用于初始化并启动服务器以便处理请求。本文将从源码的角度逐步分析此函数的每一步操作。 函数签名及注释 // Start performs any initialization of the Se…...