麒麟操作系统漏洞修复保姆级教程弱(一)算法漏洞修复
如果你想拥有你从未拥有过的东西,那么你必须去做你从未做过的事情
目录
一、相关问题
二、建议修复方法
修复方案(方案一和方案二是错误示范,干货在方案三)
方案一、首先我想按照第一步,将OpenSSH升级解决这一漏洞
1、查看当前配置的yum源可以升级的最新版本
2、查看当前我已安装的rpm包
3、执行升级命令
4、验证版本
5、重启ssh服务
6、修复结果:
方案二、修改配置
1、建议方法
2、查看一下/etc/ssh/sshd_config文件是否有相关字段
3、编辑/etc/ssh/sshd_config配置文件,将相关字段注释,并加入新的字段后保存
4、重启sshd服务
5、返回结果
方案三、麒麟原厂工程师的建议(最终成功版)
1、原厂建议
2、查看相关文字
3、将我用绿色标记的字段删除就可以了~~~~
4、删除后重启sshd服务
容易失误的点:
1,升级失败
2、文件修改错误
1、我这里举例是把“,”逗号写成了长空格,这样会导致sshd重启失败
2、重启失败了
3、修改回来,就可以正常启动了
💬欢迎交流:在学习过程中如果你有任何疑问或想法,欢迎在评论区留言,我们可以共同探讨学习的内容。你的支持是我持续创作的动力!
👍点赞、收藏与推荐:如果你觉得这篇文章对你有所帮助,请不要忘记点赞、收藏,并分享给更多的小伙伴!你们的鼓励是我不断进步的源泉!
🚀推广给更多人:如果你认为这篇文章对你有帮助,欢迎分享给更多对Linux感兴趣的朋友,让我们一起进步,共同提升!
一、相关问题
最近小屁在工作中遇到了一个漏洞,麒麟操作系统SSH 服务支持弱加密算法【原理扫描】中级漏洞,漏洞详情如下
在配置远程SSH服务器时,出于安全性考虑,应避免使用诸如arcfour、aes128-cbc、blowfish-cbc、3des-cbc等弱加密算法。RFC 4253明确指出,arcfour算法存在诸多安全隐患,不建议使用。该算法在设计上存在漏洞,容易遭受密钥恢复攻击等安全威胁,攻击者可利用这些漏洞获取敏感信息,进而对服务器及相关数据造成严重破坏 。
aes128-cbc也面临着一些挑战,例如在某些场景下可能存在对初始向量(IV)的管理不当风险,使得加密信息有被破解的可能性。blowfish-cbc同样存在一定的安全缺陷,随着计算能力的提升,其加密强度逐渐难以满足日益增长的安全需求。而3des-cbc算法由于其密钥长度相对较短,运算效率较低,并且容易受到中间相遇攻击,已不再适合用于高强度的安全防护场景。
二、建议修复方法
安全软件中建议修复方案如下解决方案:
提供两种解决方案,一种是特殊场景下的解决方案,.另外一种是常规解决方案。
一 特殊场景下的解决方案
运行以下命令来查看OpenSSH版本:ssh -v
根据OpenSSH版本,查找该版本支持的加密算法列表。可以在OpenSSH的文档中查找对应版本支持的加密算法列表,或者在网上搜索
二 常规解决方案
方案一:升级 openssh 版本为最新版本,推荐该方案。
方案二:
注释SSH服务中的弱算法,并且使用强加密算法。需要注意,由于SSH服务就只会使用强加密算法了。这可能会导致一些旧的SSH客户端无法连接到你的SSH服务,因为它们可能不支持这些强加密算法
1. 打开SSH配置文件,一般位于/etc/ssh/sshd_config。
2. 在该配置文件中,找到以下这些行(如果存在的话)并删除或注释掉它们,如果不存在的话,直接跳到第3步
Ciphers aes128-cbc,aes192-cbc,aes256-cbc,MACs hmac-md5,hmac-sha1,hmac-ripemd160
3. 向配置文件添加或修改以下行以只允许使用强加密算法
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,chacha20-poly1305@openssh.com,aes128-gcm@openssh.com,aes256-gcm@openssh.com
4. 保存并关闭配置文件。
5. 重新启动SSH服务以使改动生效。在大多数系统中,你可以使用service sshd restart 命令来重启SSH服务
修复方案(方案一和方案二是错误示范,干货在方案三)
方案一、首先我想按照第一步,将OpenSSH升级解决这一漏洞
1、查看当前配置的yum源可以升级的最新版本
[root@localhost ~]# yum check-update | grep openssh
openssh.x86_64 8.2p1-9.p19.ky10 ks10-adv-updates
openssh-clients.x86_64 8.2p1-9.p19.ky10 ks10-adv-updates
openssh-server.x86_64 8.2p1-9.p19.ky10 ks10-adv-updates
当前可升级的最高版本为:8.2p1-9.p19.ky10(我配置的yum源是从麒麟官方拉取的)
2、查看当前我已安装的rpm包
[root@localhost ~]# rpm -qa |grep ssh
openssh-clients-8.2p1-9.p03.ky10.x86_64
openssh-8.2p1-9.p03.ky10.x86_64
pssh-2.3.1-22.ky10.noarch
openssh-server-8.2p1-9.p03.ky10.x86_64
libssh-0.8.3-7.ky10.x86_64
当前我已经安装的版本为:8.2p1-9.p03.ky10(可以升级)
3、执行升级命令
[root@localhost ~]# yum -y update openssh
Last metadata expiration check: 0:01:46 ago on 2025年04月18日 星期五 09时41分40秒.
Dependencies resolved.
================================================================================================================Package Architecture Version Repository Size
================================================================================================================
Upgrading:libselinux x86_64 3.1-1.se.05.ky10 ks10-adv-updates 112 kreplacing libselinux-utils.x86_64 2.9-se.05.ky10libselinux-devel x86_64 3.1-1.se.05.ky10 ks10-adv-updates 100 kopenssh x86_64 8.2p1-9.p19.ky10 ks10-adv-updates 281 kopenssh-clients x86_64 8.2p1-9.p19.ky10 ks10-adv-updates 539 kopenssh-server x86_64 8.2p1-9.p19.ky10 ks10-adv-updates 341 kopenssl x86_64 1:1.1.1f-4.p24.ky10 ks10-adv-updates 458 kopenssl-libs x86_64 1:1.1.1f-4.p24.ky10 ks10-adv-updates 1.4 Mpython3-libselinux x86_64 3.1-1.se.05.ky10 ks10-adv-updates 161 k
Transaction Summary
================================================================================================================
Upgrade 8 Packages
Total download size: 3.3 M
Downloading Packages:
(1/8): libselinux-devel-3.1-1.se.05.ky10.x86_64.rpm 423 kB/s | 100 kB 00:00
(2/8): libselinux-3.1-1.se.05.ky10.x86_64.rpm 435 kB/s | 112 kB 00:00
(3/8): openssh-8.2p1-9.p19.ky10.x86_64.rpm 778 kB/s | 281 kB 00:00
(4/8): openssh-server-8.2p1-9.p19.ky10.x86_64.rpm 1.2 MB/s | 341 kB 00:00
(5/8): openssh-clients-8.2p1-9.p19.ky10.x86_64.rpm 1.7 MB/s | 539 kB 00:00
(6/8): python3-libselinux-3.1-1.se.05.ky10.x86_64.rpm 907 kB/s | 161 kB 00:00
(7/8): openssl-1.1.1f-4.p24.ky10.x86_64.rpm 1.2 MB/s | 458 kB 00:00
(8/8): openssl-libs-1.1.1f-4.p24.ky10.x86_64.rpm 2.1 MB/s | 1.4 MB 00:00
----------------------------------------------------------------------------------------------------------------
Total 2.8 MB/s | 3.3 MB 00:01
……………………
Upgraded:libselinux-3.1-1.se.05.ky10.x86_64 libselinux-devel-3.1-1.se.05.ky10.x86_64 openssh-8.2p1-9.p19.ky10.x86_64 openssh-clients-8.2p1-9.p19.ky10.x86_64 openssh-server-8.2p1-9.p19.ky10.x86_64 openssl-1:1.1.1f-4.p24.ky10.x86_64 openssl-libs-1:1.1.1f-4.p24.ky10.x86_64 python3-libselinux-3.1-1.se.05.ky10.x86_64
Complete!
[root@localhost ~]#
4、验证版本
到这里证明了咱们升级成功了查看一下当前的版本:
[root@localhost ~]# rpm -qa |grep ssh
openssh-clients-8.2p1-9.p19.ky10.x86_64
openssh-8.2p1-9.p19.ky10.x86_64
pssh-2.3.1-22.ky10.noarch
libssh-0.8.3-7.ky10.x86_64
openssh-server-8.2p1-9.p19.ky10.x86_64
[root@localhost ~]#
对比一下之前的版本
[root@localhost ~]# rpm -qa |grep ssh
openssh-clients-8.2p1-9.p03.ky10.x86_64
openssh-8.2p1-9.p03.ky10.x86_64
pssh-2.3.1-22.ky10.noarch
openssh-server-8.2p1-9.p03.ky10.x86_64
libssh-0.8.3-7.ky10.x86_64
p03版本升级到了p19版本
5、重启ssh服务
[root@localhost ~]# systemctl restart sshd
Warning: The unit file, source configuration file or drop-ins of sshd.service changed on disk. Run 'systemctl daemon-reload' to reload units.
[root@localhost ~]# systemctl daemon-reload
[root@localhost ~]# systemctl restart sshd
[root@localhost ~]# systemctl status sshd
● sshd.service - OpenSSH server daemonLoaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)Active: active (running) since Fri 2025-04-18 10:03:49 CST; 44s agoDocs: man:sshd(8)man:sshd_config(5)Main PID: 2925 (sshd)Tasks: 1Memory: 952.0KCGroup: /system.slice/sshd.service└─2925 /usr/sbin/sshd -D -oCiphers=aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,aes256-ctr,a>
4月 18 10:03:49 localhost.localdomain systemd[1]: Starting OpenSSH server daemon...
4月 18 10:03:49 localhost.localdomain sshd[2925]: /etc/ssh/sshd_config line 144: Deprecated option RSAAuthentic>
4月 18 10:03:49 localhost.localdomain sshd[2925]: /etc/ssh/sshd_config line 146: Deprecated option RhostsRSAAut>
4月 18 10:03:49 localhost.localdomain sshd[2925]: Server listening on 0.0.0.0 port 22.
4月 18 10:03:49 localhost.localdomain sshd[2925]: Server listening on :: port 22.
4月 18 10:03:49 localhost.localdomain systemd[1]: Started OpenSSH server daemon.
lines 1-17/17 (END)
重启成功,运行状态正常,
6、修复结果:
我将修复结果反馈给了安全部门,回复他们已经修复完成,但是他们扫描完成后,又反馈给我没有修复成功~~~
既然升级行不通,那就按方案2修改配置
方案二、修改配置
1、建议方法
方案二:
注释SSH服务中的弱算法,并且使用强加密算法。需要注意,由于SSH服务就只会使用强加密算法了。这可能会导致一些旧的SSH客户端无法连接到你的SSH服务,因为它们可能不支持这些强加密算法
1. 打开SSH配置文件,一般位于/etc/ssh/sshd_config。
2. 在该配置文件中,找到以下这些行(如果存在的话)并删除或注释掉它们,如果不存在的话,直接跳到第3步
Ciphers aes128-cbc,aes192-cbc,aes256-cbc,MACs hmac-md5,hmac-sha1,hmac-ripemd160
3. 向配置文件添加或修改以下行以只允许使用强加密算法
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,chacha20-poly1305@openssh.com,aes128-gcm@openssh.com,aes256-gcm@openssh.com
4. 保存并关闭配置文件。
5. 重新启动SSH服务以使改动生效。在大多数系统中,你可以使用service sshd restart 命令来重启SSH服务
2、查看一下/etc/ssh/sshd_config文件是否有相关字段
[root@localhost ~]# cat /etc/ssh/sshd_config -n|grep Ciphers26 # Ciphers and keying150 Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com
[root@localhost ~]#
3、编辑/etc/ssh/sshd_config配置文件,将相关字段注释,并加入新的字段后保存
[root@localhost ~]# vim /etc/ssh/sshd_config
150 #Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@op enssh.com
151
152 Ciphers aes128-ctr,aes192-ctr,aes256-ctr,chacha20-poly1305@openssh.com,aes128-gcm@openssh.com,aes256-gcm@ope nssh.com
153
验证:
[root@localhost ~]# cat /etc/ssh/sshd_config -n|grep Ciphers
26 # Ciphers and keying
150 #Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com
152 Ciphers aes128-ctr,aes192-ctr,aes256-ctr,chacha20-poly1305@openssh.com,aes128-gcm@openssh.com,aes256-gcm@openssh.com
4、重启sshd服务
[root@localhost ~]# service sshd restart
Redirecting to /bin/systemctl restart sshd.service
查看运行状态
[root@localhost ~]# systemctl status sshd
● sshd.service - OpenSSH server daemonLoaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)Active: active (running) since Fri 2025-04-18 10:30:39 CST; 6s agoDocs: man:sshd(8)man:sshd_config(5)Main PID: 3027 (sshd)Tasks: 1Memory: 948.0KCGroup: /system.slice/sshd.service└─3027 /usr/sbin/sshd -D -oCiphers=aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,aes256-ctr,a>
4月 18 10:30:39 localhost.localdomain systemd[1]: Starting OpenSSH server daemon...
4月 18 10:30:39 localhost.localdomain sshd[3027]: /etc/ssh/sshd_config line 144: Deprecated option RSAAuthentic>
4月 18 10:30:39 localhost.localdomain sshd[3027]: /etc/ssh/sshd_config line 146: Deprecated option RhostsRSAAut>
4月 18 10:30:39 localhost.localdomain sshd[3027]: Server listening on 0.0.0.0 port 22.
4月 18 10:30:39 localhost.localdomain sshd[3027]: Server listening on :: port 22.
4月 18 10:30:39 localhost.localdomain systemd[1]: Started OpenSSH server daemon.
lines 1-17/17 (END)
运行状态正常
5、返回结果
到了这一步,我又将返回结果反馈给安全部门扫描,没过两天,安全部门又反馈给我,还是不通过,既然你们建议的两个都不通过,我又求助了麒麟原厂的技术专家,他们给我发了一个新的方法,实际上麒麟需要配置的和漏扫建议的配置文件不同的
方案三、麒麟原厂工程师的建议(最终成功版)
1、原厂建议
修改/etc/crypto-policies/back-ends/opensshserver.config配置文件,将相关的弱算法删除,(需要添加的算法配置文件中存在)然后再重启sshd服务
2、查看相关文字
3、将我用绿色标记的字段删除就可以了~~~~
(aes256-cbc,hmac-sha1,)整体删除不要漏删或者多删,不然ssh会重启失败
4、删除后重启sshd服务
容易失误的点:
1,升级失败
有些人比较聪明,觉得sshd在contos上最新版本已经到了OpenSSH9.8版本以上了,我使用contos的yum源直接升级到9.8版本不就解决了吗?实际上这样会成都那部分风险,我遇到了用户使用contos升级导致ssh重启失败和ftp服务失效的问题,最后给用户 删除重装的sshd解决的
2、文件修改错误
修改/etc/crypto-policies/back-ends/opensshserver.config删除字段多了或者少了,导致sshd重启失败(小屁建议,修改之前将文件备份,以免修改错误或者忘记相关内容)
1、我这里举例是把“,”逗号写成了长空格,这样会导致sshd重启失败
2、重启失败了
3、修改回来,就可以正常启动了
好了今天这段sshd弱算法漏洞就告一段落了。(以上发布内容均为我自己的环境,数据已经进行脱敏,无任何侵权)
想成为大佬,就要从小白开始,从0开始,一点一点的积累,慢慢成长,明天你就是大佬!!想学习更多麒麟操作系统的知识,关注小屁,让你成为运维老鸟~~~~~
相关文章:
麒麟操作系统漏洞修复保姆级教程弱(一)算法漏洞修复
如果你想拥有你从未拥有过的东西,那么你必须去做你从未做过的事情 目录 一、相关问题 二、建议修复方法 修复方案(方案一和方案二是错误示范,干货在方案三) 方案一、首先我想按照第一步,将OpenSSH升级解决这一漏洞…...
汉诺塔专题:P1760 通天之汉诺塔 题解 + Problem D: 汉诺塔 题解
1. P1760 通天之汉诺塔 题解 题目背景 直达通天路小A历险记第四篇 题目描述 在你的帮助下,小 A 成功收集到了宝贵的数据,他终于来到了传说中连接通天路的通天山。但是这距离通天路仍然有一段距离,但是小 A 突然发现他没有地图࿰…...
vscode中markdown一些插件用不了解决方式
我发现我安装了vscode的一些插件,但是没起效果(就是该插件暗淡了),后面得知,是因为没有信任工作空间。 This extension has been disabled because the current workspace is not trusted 这个提示信息表明,…...
Python爬虫第16节-动态渲染页面抓取之Selenium使用上篇
目录 前言 一、Selenium的简介和学习准备 二、Selenium基本使用 三、声明浏览器对象 四、访问页面 五、查找节点 5.1 单个节点 5.2 多个节点 六、节点交互 七、动作链 八、执行JavaScript 前言 本专栏之前的内容,我们讲了怎么分析和抓取Ajax,…...
KMP算法动态演示
KMP算法 1.动态演示 https://tsccg-oss.oss-cn-guangzhou.aliyuncs.com/image/KMP%E7%AE%97%E6%B3%95%E5%8A%A8%E6%80%81%E6%BC%94%E7%A4%BA.gif 2.代码实现 Testpublic void test5(){String parent "ABC ABCDAB ABCDABCDABDE";String child "ABCDABD&quo…...
linux获取cpu使用率(sy%+us%)
float getCpuUsage() { // C11兼容的元组解包 typedef std::tuple<unsigned long long, unsigned long long, unsigned long long> CpuTuple; auto parseCpuLine [](const std::string& line) -> CpuTuple { std::istringstream iss(line); …...
ESP-IDF教程2 GPIO - 输入、输出和中断
文章目录 1、前提1.1、基础知识1.1.1、GPIO 分类1.1.2、FALSH SPI 模式1.1.3、过滤器1.1.4、外部中断 1.2、数据结构1.2.1、GPIO1.2.2、毛刺过滤器 1.3、硬件原理图 2、示例程序2.1、GPIO 输出 - 点亮 LED 灯2.2、GPIO 输入 - 按键响应2.3、GPIO 外部中断 - 按键响应 3、常用函…...
Ubuntu安装MySQL步骤及注意事项
一、安装前准备 1. 系统更新:在安装 MySQL 之前,确保你的 Ubuntu 系统软件包是最新的,这能避免因软件包版本问题导致的安装错误,并获取最新的安全补丁。打开终端,执行以下两条命令: sudo apt update sudo …...
支持mingw g++14.2 的c++23 功能print的vscode tasks.json生成调试
在mingw14.2版本中, print库的功能默认没有开启, 生成可执行文件的tasks.json里要显式加-lstdcexp, 注意放置顺序. tasks.json (支持mingw g14.2 c23的print ) {"version": "2.0.0","tasks": [{"type": "cppbuild","…...
WPF常用技巧汇总
主要用于记录工作中发现的一些问题和常见的解决方法。 此文会持续更新。 >abp new Evan.MyWpfApp -t wpf --old --framework .net8 1. 解决不同屏幕分辨率下的锯齿问题 UseLayoutRounding"True" <Grid UseLayoutRounding"True"><Border Mar…...
【文件操作与IO】详细解析文件操作与IO (一)
本篇博客给大家带来的是文件操作的知识点. 🐎文章专栏: JavaEE初阶 🚀若有问题 评论区见 ❤ 欢迎大家点赞 评论 收藏 分享 如果你不知道分享给谁,那就分享给薯条. 你们的支持是我不断创作的动力 . 王子,公主请阅🚀 要开心要快乐顺便进步 一. …...
yaffs_write_new_chunk()函数解析
yaffs_write_new_chunk() 是 YAFFS(Yet Another Flash File System)文件系统中用于将数据写入新物理块(chunk)的关键函数。以下是其详细解析: 函数原型 int yaffs_write_new_chunk(struct yaffs_dev *dev, const u8 *…...
「数据可视化 D3系列」入门第九章:交互式操作详解
交互式操作详解 一、交互式操作的核心概念二、当前柱状图的交互实现三、交互效果的增强建议四、为饼图做准备五、交互式柱状图代码示例小结核心要点 下章预告:将这些交互技术应用于饼图实现 在上一章的柱状图基础上,我们增加了交互功能,让图表…...
吃透LangChain(五):多模态输入与自定义输出
多模态数据输入 这里我们演示如何将多模态输入直接传递给模型。我们目前期望所有输入都以与OpenAl 期望的格式相同的格式传递。对于支持多模态输入的其他模型提供者,我们在类中添加了逻辑以转换为预期格式。 在这个例子中,我们将要求模型描述一幅图像。 …...
数据结构基本概念
1 数据结构概述 数据结构是计算机组织(逻辑结构)、存储(物理结构)数据的方式。和具体的计算机编程语言无关,可以使用任何编程语言来实现数据结构 1.1 数据逻辑结构 反映数据元素之间的逻辑关系,逻辑关系…...
flutter app实现分辨率自适应的图片资源加载
在 Flutter 中,为了实现分辨率自适应的图片资源加载,确实需要遵循特定的目录结构和命名规则。这种机制允许 AssetImage 根据设备的 设备像素比(Device Pixel Ratio, DPR) 自动选择最合适的图片资源。以下是详细的说明和实现步骤&a…...
Webpack基础
目录 一、Webpack概念 二、Webpack使用步骤 三、Webpack.config.js配置文件 四、entry 和 output 1. entry 2. output 五、module 1. CSS 2. 图片 3. babel 4. 总结 六、plugins 1.自动生成 html 文件 七、其它 1.webpack-dev-server 开发服务器 2. mode 打包模…...
极狐GitLab 用户 API 速率限制如何设置?
极狐GitLab 是 GitLab 在中国的发行版,关于中文参考文档和资料有: 极狐GitLab 中文文档极狐GitLab 中文论坛极狐GitLab 官网 用户 API 速率限制 (BASIC SELF) 您可以为对 Users API 的请求配置每个用户的速率限制。 要更改速率限制: 1.在…...
用 Go 实现一个轻量级并发任务调度器(支持限速)
前言 在日常开发中,我们经常会遇到这样的场景: • 有一堆任务要跑(比如:发请求、处理数据、爬虫等)• 不希望一次性全部跑完,担心打爆服务端或者被封• 想要设置并发数、限速,还能控制任务重试…...
华为OD机试真题——最长的顺子(2025A卷:100分)Java/python/JavaScript/C++/C语言/GO六种最佳实现
2025 A卷 100分 题型 本文涵盖详细的问题分析、解题思路、代码实现、代码详解、测试用例以及综合分析; 并提供Java、python、JavaScript、C、C语言、GO六种语言的最佳实现方式! 本文收录于专栏:《2025华为OD真题目录全流程解析/备考攻略/经验…...
3.8/Q1,GBD数据库最新文章解读
文章题目:Regional and National Burden of Traumatic Brain Injury and Spinal Cord Injury in North Africa and Middle East Regions, 1990-2021: A Systematic Analysis for The Global Burden of Disease Study 2021 DOI:10.1007/s44197-025-00372-…...
Java面试中问单例模式如何回答
1. 什么是单例模式? 单例模式(Singleton Pattern)是一种设计模式,确保某个类在整个应用中只有一个实例,并且提供全局访问点。它有以下特点: 确保只有一个实例。提供全局访问点。防止多次实例化࿰…...
再看开源多模态RAG的视觉文档(OCR-Free)检索增强生成方案-VDocRAG
前期几个工作提到,基于OCR的文档解析RAG的方式进行知识库问答,受限文档结构复杂多样,各个环节的解析泛化能力较差,无法完美的对文档进行解析。因此出现了一些基于多模态大模型的RAG方案。如下: 【RAG&多模态】多模…...
【go】什么是Go语言中的GC,作用是什么?调优,sync.Pool优化,逃逸分析演示
Go 语言中的 GC 简介与调优建议 一、GC 简介 Go 的 GC(Garbage Collection)用于自动管理内存,开发者无需手动释放内存,可以专注于业务逻辑,降低出错概率,提升开发效率。 GC 能够自动发现和回收不再使用的…...
ctfshow-大赛原题-web702
因为该题没有理解到位,导致看wp也一直出错,特此反思一下。 参考yu22x师傅的文章 :CTFSHOW大赛原题篇(web696-web710)_ctfshow 大赛原题-CSDN博客 首先拿到题目: // www.zip 下载源码 我们的思路就是包含一个css文件,…...
基于Redis的4种延时队列实现方式
延时队列是一种特殊的消息队列,它允许消息在指定的时间后被消费。在微服务架构、电商系统和任务调度场景中,延时队列扮演着关键角色。例如,订单超时自动取消、定时提醒、延时支付等都依赖延时队列实现。 Redis作为高性能的内存数据库&#x…...
基于Django实现农业生产可视化系统
基于Django实现农业生产可视化系统 项目截图 登录 注册 首页 农业数据-某一指标表格展示 农业数据-某一指标柱状图展示 农业数据-某一指标饼状图展示 气候数据-平均气温地图展示 气候数据-降水量合并图展示 后台管理 一、系统简介 农业生产可视化系统是一款基于DjangoMVTMyS…...
yocto编译使用共享缓存
注意 服务器端与客户端系统的版本号需为Ubuntu20.04执行用户需要为sudo权限服务器端nfs目录权限必须为nobody:nogroup 服务端配置: 在服务器192.168.60.142上配置 NFS 共享: 1.安装 NFS 服务器: 1 sudo apt-get install nfs-kernel-serve…...
uCOS3实时操作系统(系统架构和中断管理)
文章目录 系统架构中断管理ARM中断寄存器相关知识ucos中断机制 系统架构 ucos主要包含三个部分的源码: 1、OS核心源码及其配置文件(ucos源码) 2、LIB库文件源码及其配置文件(库文件,比如字符处理、内存管理࿰…...
web后端语言下篇
#作者:允砸儿 #日期:乙巳青蛇年 三月廿一 笔者今天将web后端语言PHP完结一下,后面还会写一个关于python的番外。 PHP函数 PHP函数它和笔者前面写的js函数有些许类似,都是封装的概念。将实现某一功能的代码块封装到一个结构中…...
Tensorflow释放GPU资源
语言:python 框架:tensorflow 现有问题:用tensorflow进行模型训练,训练完成后用tf.keras.backend.clear_session()命令无法真正实现释放资源的效果。 解决方案:创建多进程,将模型训练作为子进程,…...
vscode、cherry studio接入高德mcp服务
最近mcp协议比较火,好多平台都已经开通了mcp协议,今天来接入下高德的mcp看看效果如何。 话不多说,咱们直接开干。 先来看下支持mcp协议的工具有cusor、cline等等。更新cherrystudio后发现上面也有mcp服务器了。今天咱就来试试添加高德的mcp协…...
软考高级-系统架构设计师 论文范文参考(二)
文章目录 论企业应用集成论软件三层结构的设计论软件设计模式的应用论软件维护及软件可维护性论信息系统安全性设计论信息系统的安全性设计(二)论信息系统的架构设计论信息系统架构设计(二) 论企业应用集成 摘要: 2016年9月,我国某省移动通信有限公司决定启动VerisB…...
熵权法+TOPSIS+灰色关联度综合算法(Matlab实现)
熵权法TOPSIS灰色关联度综合算法(Matlab实现) 代码获取私信回复:熵权法TOPSIS灰色关联度综合算法(Matlab实现) 摘要: 熵权法TOPSIS灰色关联度综合算法(Matlab实现)代码实现了一种…...
【java 13天进阶Day05】数据结构,List,Set ,TreeSet集合,Collections工具类
常见的数据结构种类 集合是基于数据结构做出来的,不同的集合底层会采用不同的数据结构。不同的数据结构,功能和作用是不一样的。数据结构: 数据结构指的是数据以什么方式组织在一起。不同的数据结构,增删查的性能是不一样的。不同…...
极狐GitLab 议题和史诗创建的速率限制如何设置?
极狐GitLab 是 GitLab 在中国的发行版,关于中文参考文档和资料有: 极狐GitLab 中文文档极狐GitLab 中文论坛极狐GitLab 官网 议题和史诗创建的速率限制 (BASIC SELF) 速率限制是为了控制新史诗和议题的创建速度。例如,如果您将限制设置为 …...
AIGC-几款本地生活服务智能体完整指令直接用(DeepSeek,豆包,千问,Kimi,GPT)
Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列AIGC(GPT、DeepSeek、豆包、千问、Kimi)👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资…...
十、数据库day02--SQL语句01
文章目录 一、新建查询1.查询窗口的开启方法2. 单语句运行方法 二、数据库操作1.创建数据库2. 使用数据库3. 修改数据库4. 删除数据库和查看所有数据库5. 重点:数据库备份5.1 应用场景5.2 利用工具备份备份操作还原操作 5.3 扩展:使用命令备份 三、数据表…...
2025年MathorCup数学应用挑战赛D题问题一求解与整体思路分析
D题 短途运输货量预测及车辆调度 问题背景 问题分析:四个问题需要建立数学模型解决就业状态分析与预测,旨在通过数学建模对宜昌地区的就业数据进行深入分析,并基于此预测就业状态。提供的数据涵盖了被调查者的个人信息、就业信息、失业信息…...
关于三防漆清除剂
成分及原理 主要成分:通常包含有机溶剂,如丙酮、甲苯、二甲苯等,以及一些表面活性剂、缓蚀剂等添加剂。工作原理:有机溶剂能够溶解三防漆中的树脂等成分,使其失去粘性和附着性,从而可以被轻易地擦拭或冲洗…...
2025年MathorCup数学应用挑战赛【选题分析】
【25MathorCup选题分析】 🙋♀🙋♂数模加油站初步分析评估了此次竞赛题目: ✅A题:该题新颖性强,属于“算子学习深度学习几何建模”的交叉问题,涉及PINN、FNO、KAN等算子神经网络模型构建,任…...
在windows上交叉编译opencv供RK3588使用
环境 NDK r27、RK3588 安卓板子、Android 12 步骤操作要点1. NDK 下载选择 r27 版本,解压到无空格路径(如 C:/ndk)2. 环境变量配置添加 ANDROID_NDK_ROOT 和工具链路径到系统 PATH3. CMake 参数调整指定 ANDROID_NATIVE_API_LEVEL31、ANDRO…...
零基础玩转AI数学建模:从理论到实战
前言 数学建模作为连接数学理论与现实世界的桥梁,在科学研究、工程实践和商业决策等领域发挥着越来越重要的作用。随着人工智能技术的迅猛发展,以ChatGPT为代表的大语言模型为数学建模领域带来了革命性的变革。本书旨在帮助读者掌握这一变革带来的新机遇…...
IDEA 2025.1更新-AI助手试用和第三方模型集成方案
今天刚把 IntelliJ IDEA 更新到了 2025.1 版本,主要是想看看这次 AI Assistant 有什么新东西。之前看到消息说功能有更新,而且似乎可以免费试用,就动手试了试,顺便把过程和一些发现记录下来,给可能需要的朋友一个参考。…...
static关键字
思维导图: 在 Java 中,static 是一个非常重要的关键字,它可以用来修饰类的成员,包括变量、方法、代码块以及内部类。下面为你详细介绍 static 关键字的各种用法和特点。 一.修饰内部类 静态内部类:当 static 修饰内部类…...
gl-matrix 库简介
gl-matrix 库简介 gl-matrix 是一个高性能的 JavaScript 矩阵和向量库,专门为 WebGL 和其他 3D 图形应用设计。它提供了处理 2D、3D 和 4D 向量以及矩阵运算的高效方法。 主要特性 高性能:经过高度优化,执行速度快轻量级:体积小…...
Spring Boot 核心注解全解:@SpringBootApplication背后的三剑客
大家好呀!👋 今天我们要聊一个超级重要的Spring Boot话题 - 那个神奇的主类注解SpringBootApplication!很多小伙伴可能每天都在用Spring Boot开发项目,但你真的了解这个注解背后的秘密吗?🤔 别担心&#x…...
Android 音频架构全解析:从 AudioTrack 到 AudioFlinger
在开发音视频相关应用时,我们常会接触到 MediaPlayer、SoundPool、AudioTrack、OpenSL ES、AAudio、Oboe 等名词,它们都与 Android 的音频播放息息相关。然而,真正理解它们之间的关系以及背后运行机制,才能写出高性能、低延迟的音…...
【教程】无视硬件限制强制升级Windows 11
转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~ 1、下载升级工具:https://github.com/builtbybel/Flyby11/releases 2、解压后打开软件: 3、拖入win11.iso或者自动下载…...
ICPR-2025 | 让机器人在未知环境中 “听懂” 指令精准导航!VLTNet:基于视觉语言推理的零样本目标导航
作者:Congcong Wen, Yisiyuan Huang, Hao Huang ,Yanjia Huang, Shuaihang Yuan, YuHao, HuiLin and Yi Fang 单位:纽约大学阿布扎比分校具身人工智能与机器人实验室,纽约大学阿布扎比分校人工智能与机器人中心,纽约大学坦登工程…...