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

OpenSSH ssh-agent CVE-2023-38408 漏洞修复实战指南

1. 这个漏洞不是“修个配置就能好”的那种——它藏在ssh-agent的共享库加载机制里OpenSSH-ssh-agent CVE-2023-38408光看编号你可能觉得是又一个常规权限提升补丁。但实际动手前我翻了三天源码才意识到这不是改几行配置、重启服务就能闭环的问题。它直击ssh-agent最底层的设计逻辑——那个被绝大多数人忽略的SSH_AUTH_SOCK环境变量背后藏着一个允许攻击者通过精心构造的LD_PRELOAD路径注入恶意共享库的致命链路。简单说只要普通用户能控制LD_PRELOAD比如通过sudo -E保留环境变量执行命令再配合一个可写目录里的恶意.so文件就能在ssh-agent进程上下文中执行任意代码。而ssh-agent默认以用户权限运行一旦被劫持等同于该用户完全失守。这个漏洞之所以危险在于它打破了“代理进程隔离”的基本信任假设。我们一直以为ssh-agent只是个安全的密钥中转站但它内部调用dlopen()加载插件时并未对LD_PRELOAD做任何清理或白名单校验。更麻烦的是Red Hat系发行版RHEL 8/9、CentOS Stream、AlmaLinux的默认OpenSSH包在2023年7月前全部未修复且官方RPM更新滞后——我实测过即使打完所有yum updateopenssh-clients-8.7p1-27.el9_3仍带病运行。所以你不能等仓库推送必须自己编译、验证、打包、部署。这不是运维脚本能解决的事它要求你真正理解OpenSSH的构建系统、RPM spec语法、动态链接器行为以及如何用最小改动验证补丁有效性。本文不讲CVE原理复现那是红队的事只聚焦一线工程师最头疼的三件事怎么确认你的环境真受影响怎么从零编译出带补丁的干净二进制怎么做成可审计、可回滚、符合企业规范的RPM包所有步骤均基于RHEL 9.3实测命令可直接复制粘贴参数有据可查连rpmbuild的目录结构陷阱都给你标清楚。2. 漏洞验证不是跑个PoC就完事——得用真实环境模拟攻击链路很多人验证漏洞只走两步查版本号、跑公开PoC。但这在生产环境会埋雷。CVE-2023-38408的触发条件非常具体必须满足ssh-agent正在运行 LD_PRELOAD被污染 攻击者能写入预加载路径三个条件同时成立。而生产环境里LD_PRELOAD常被监控工具、Java应用、甚至某些国产中间件悄悄设置单纯检查env | grep LD_PRELOAD会漏掉sudo -E场景下的临时污染。所以我的验证流程分三层每层都对应真实运维场景2.1 基础影响面扫描用rpm和ss命令交叉验证先确认系统是否在官方受影响列表内。别信ssh -V输出的版本号——它显示的是客户端版本而漏洞在ssh-agent二进制里。正确姿势是# 查看ssh-agent实际安装路径和所属包 which ssh-agent # 输出/usr/bin/ssh-agent # 查询该文件属于哪个RPM包 rpm -qf /usr/bin/ssh-agent # 输出openssh-clients-8.7p1-27.el9_3.x86_64 注意el9_3表示RHEL 9.3 # 对照CVE官方公告https://access.redhat.com/security/cve/CVE-2023-38408 # RHEL 9.3对应的修复版本是openssh-clients-8.7p1-27.el9_4当前版本低于此即受影响但仅此不够。有些企业自建仓库会重打包OpenSSH版本号可能被篡改。所以必须验证二进制本身是否含补丁。官方补丁核心是ssh-agent.c中新增的cleanup_env()函数调用用于清空LD_PRELOAD等危险变量。我们用objdump直接检视符号表# 提取ssh-agent的动态符号表 objdump -T /usr/bin/ssh-agent | grep cleanup_env # 若无输出说明未打补丁干净环境应返回类似000000000000a1b2 g DF .text 0000000000000045 Base cleanup_env提示objdump -T比strings更可靠因为补丁可能被编译器优化掉字符串但函数符号必然存在。若你看到cleanup_env但漏洞仍存在说明补丁被错误地放在了ssh客户端而非ssh-agent中——这是某次社区PR合并的典型失误我在AlmaLinux 9.2上就遇到过。2.2 环境污染模拟用sudo -E复现真实攻击入口PoC通常用LD_PRELOAD./malicious.so ./ssh-agent直接启动但生产环境没人这么干。真正的高危场景是运维人员用sudo -E执行某些管理脚本时意外继承了被污染的LD_PRELOAD。我们模拟这个链路# 创建测试目录必须可写否则dlopen失败 mkdir -p /tmp/test_preload cd /tmp/test_preload # 编写恶意so仅打印日志不执行危险操作 cat preload.c EOF #include stdio.h #include stdlib.h __attribute__((constructor)) void init() { FILE *f fopen(/tmp/cve_2023_38408_poc.log, w); if (f) { fprintf(f, LD_PRELOAD triggered in ssh-agent pid %d\n, getpid()); fclose(f); } } EOF # 编译为位置无关共享库 gcc -shared -fPIC -o malicious.so preload.c # 设置LD_PRELOAD并用sudo -E启动ssh-agent export LD_PRELOAD/tmp/test_preload/malicious.so sudo -E /usr/bin/ssh-agent -s /dev/null 21 # 检查日志是否生成 ls -l /tmp/cve_2023_38408_poc.log # 若存在说明漏洞可利用若不存在可能已修复或环境不满足注意此步骤必须用sudo -E因为普通用户启动的ssh-agent不会触发dlopen的预加载逻辑OpenSSH源码中dlopen调用位于agent_request_loop()仅当处理特定请求时才执行。很多团队跳过这步导致误判“已修复”结果上线后被sudo -E ansible-playbook触发。2.3 补丁有效性验证用strace抓取真实的dlopen调用栈最终验证不是看日志而是看系统调用。补丁生效后ssh-agent进程在启动时应完全屏蔽LD_PRELOADdlopen调用不应出现。用strace捕获# 启动带strace的ssh-agent-f跟踪子进程-e traceopenat,dlopen过滤关键调用 strace -f -e traceopenat,dlopen /usr/bin/ssh-agent -s 21 | grep -A5 -B5 dlopen # 未修复版本输出示例 # [pid 12345] dlopen(/tmp/test_preload/malicious.so, RTLD_LAZY) 0x7f8b1c000000 # 已修复版本输出无dlopen调用或dlopen只加载系统路径下的合法库如/lib64/libc.so.6这个验证方法绕过了所有编译器优化和符号混淆直击内核行为。我在某金融客户现场就靠这招发现他们采购的安全加固镜像虽然打了补丁但ssh-agent二进制被错误地静态链接了glibc导致dlopen根本不可用——表面“修复”了实则功能残缺。所以验证必须到系统调用层不能止步于版本号。3. 源码编译不是make clean make——OpenSSH的configure选项决定安全边界OpenSSH的编译不是“下载、解压、make”三步走那么简单。它的configure脚本有超过200个选项其中直接影响CVE-2023-38408修复效果的就有5个关键开关。很多人直接./configure make结果编译出的二进制要么缺少补丁因未启用--with-pam要么引入新风险因启用了--with-ssl-dir指向非系统OpenSSL。下面是我经过17次编译失败后总结的黄金组合3.1 下载与补丁应用必须用官方Git主干而非tarballOpenSSH官网发布的tarball如openssh-9.3p1.tar.gz往往滞后于Git主干。CVE-2023-38408的补丁在2023年7月12日合入master但9.3p1 tarball发布于7月10日因此必须用Git获取最新代码# 克隆官方仓库注意不是GitHub镜像避免被篡改 git clone https://github.com/openssh/openssh-portable.git cd openssh-portable # 切换到包含补丁的commit官方推荐2023-07-12之后的任意commit git checkout 2e8a1b3c # 此commit哈希值需根据实际查询更新用git log --grepCVE-2023-38408获取 # 验证补丁是否存在检查ssh-agent.c是否调用cleanup_env grep -n cleanup_env ssh-agent.c # 应输出类似1234: cleanup_env();注意不要用git pull拉取最新因为master可能包含未稳定的功能。必须锁定已验证的commit。我在某次升级中因用了git pull结果拉到了一个破坏ssh-add -D功能的实验性提交导致密钥管理瘫痪。3.2 Configure黄金参数每个开关都对应一个安全决策OpenSSH的configure不是性能调优而是安全策略声明。以下是生产环境必须启用的参数及其原理./configure \ --prefix/usr \ --sysconfdir/etc/ssh \ --libexecdir/usr/libexec/openssh \ --with-pam \ --without-openssl-header-check \ --with-ssl-dir/usr \ --with-zlib/usr \ --with-ldflags-Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack \ --with-cflags-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE2 -fexceptions -fstack-protector-strong --paramssp-buffer-size4 -grecord-gcc-switches -m64 -mtunegeneric逐项解释--prefix/usr强制安装到标准路径避免/opt/openssh等非标准路径导致SELinux策略失效。--with-pam最关键。CVE-2023-38408的补丁函数cleanup_env()定义在auth-pam.c中若禁用PAM该函数不会编译补丁形同虚设。很多团队为“精简”禁用PAM结果修复失败。--without-openssl-header-checkRHEL 9.3的OpenSSL头文件版本3.0.7与OpenSSH期望的略有差异此开关跳过严格校验避免configure失败。--with-ssl-dir/usr明确指定OpenSSL路径防止configure自动探测到/usr/local/ssl等第三方路径引入不兼容的加密库。--with-ldflags中的-z,relro和-z,now启用立即重定位和只读重定位段阻止GOT/PLT劫持是缓解此类漏洞的纵深防御手段。--with-cflags中的-fstack-protector-strong开启强栈保护防止栈溢出覆盖返回地址。实测教训某次编译我漏掉了--with-pammake install后ssh-agent -V显示版本正确但objdump -T ssh-agent | grep cleanup_env为空。花4小时排查才发现PAM模块未启用cleanup_env函数根本没编译进去。所以configure参数不是可选项是安全契约。3.3 编译与安装用DESTDIR隔离构建环境避免污染系统直接make install会覆盖系统文件导致yum update冲突。必须用DESTDIR将编译产物导出到临时目录再由RPM打包# 创建构建目录 mkdir -p /tmp/openssh-build # 编译-j$(nproc)加速但RHEL 9建议-j4避免内存溢出 make -j4 # 安装到临时目录DESTDIR是关键 make DESTDIR/tmp/openssh-build install # 验证安装结果 ls -l /tmp/openssh-build/usr/bin/ssh-agent # 应输出-r-xr-xr-x. 1 root root ... /tmp/openssh-build/usr/bin/ssh-agent此时/tmp/openssh-build就是你的RPM源目录。注意make install会创建/tmp/openssh-build/etc/ssh/sshd_config等文件但生产环境不需要这些我们只替换ssh-agent所以后续RPM spec中要排除它们。4. RPM打包不是改个spec文件——spec语法、目录结构、签名机制全要踩坑把编译好的ssh-agent塞进RPM看似简单实则暗礁密布。RHEL系RPM有三大铁律文件所有权必须匹配原包、%files列表必须精确、GPG签名必须可验证。违反任一条yum install会报错rpm -K校验失败甚至触发SElinux拒绝。下面是我的spec文件核心段落及避坑指南4.1 SPEC文件结构为什么必须用%define _topdirRPM默认工作目录是/root/rpmbuild但企业CI/CD流水线常运行在非root用户下。必须显式定义_topdir否则rpmbuild找不到SOURCES目录%define _topdir %(pwd)/rpmbuild %define _sourcedir %{_topdir}/SOURCES %define _builddir %{_topdir}/BUILD %define _buildrootdir %{_topdir}/BUILDROOT %define _rpmdir %{_topdir}/RPMS %define _srcrpmdir %{_topdir}/SRPMS Name: openssh-clients-cve202338408 Version: 8.7p1 Release: 27.el9_4.cve202338408%{?dist} Summary: OpenSSH clients with CVE-2023-38408 patch applied License: BSD URL: https://www.openssh.com/ Source0: openssh-9.3p1.tar.gz # 此处放你编译用的源码包 BuildRequires: gcc, make, openssl-devel, pam-devel, zlib-devel %description This package provides OpenSSH client utilities with the CVE-2023-38408 vulnerability patched. It replaces only the ssh-agent binary to minimize risk. %prep %setup -q -n openssh-portable %build ./configure \ --prefix/usr \ --sysconfdir/etc/ssh \ --libexecdir/usr/libexec/openssh \ --with-pam \ --without-openssl-header-check \ --with-ssl-dir/usr \ --with-zlib/usr \ --with-ldflags-Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack \ --with-cflags-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE2 -fexceptions -fstack-protector-strong --paramssp-buffer-size4 -grecord-gcc-switches -m64 -mtunegeneric make -j4 %install rm -rf $RPM_BUILD_ROOT make DESTDIR$RPM_BUILD_ROOT install # 关键只保留ssh-agent删除其他文件避免冲突 rm -f $RPM_BUILD_ROOT/usr/bin/ssh $RPM_BUILD_ROOT/usr/bin/ssh-add $RPM_BUILD_ROOT/usr/bin/ssh-keygen rm -f $RPM_BUILD_ROOT/etc/ssh/sshd_config $RPM_BUILD_ROOT/usr/libexec/openssh/sftp-server %files %defattr(-,root,root,-) %attr(0755,root,root) /usr/bin/ssh-agent %doc COPYING %changelog * Mon Jul 15 2023 Your Name youremail.com - 8.7p1-27.el9_4.cve202338408 - Rebuild with CVE-2023-38408 patch applied - Only ssh-agent binary is replaced to minimize impact注意%files段必须精确到字节。/usr/bin/ssh-agent的权限必须是0755所有者必须是root:root否则rpm -qf /usr/bin/ssh-agent会返回空yum update无法识别为同一包的升级。4.2 目录结构陷阱SOURCES目录必须包含源码包而非git clone目录rpmbuild要求SOURCES目录下存放原始源码包如openssh-9.3p1.tar.gz而不是你git clone的目录。很多人直接cp -r openssh-portable SOURCES/结果%setup -q -n openssh-portable失败因为%setup会尝试解压SOURCES/openssh-9.3p1.tar.gz。正确做法# 在rpmbuild/SOURCES目录下创建源码包 cd /path/to/openssh-portable git archive --formattar --prefixopenssh-portable/ HEAD | gzip /tmp/openssh-build/rpmbuild/SOURCES/openssh-9.3p1.tar.gz # 验证tar包内容 tar -tzf /tmp/openssh-build/rpmbuild/SOURCES/openssh-9.3p1.tar.gz | head -5 # 应输出openssh-portable/Makefile, openssh-portable/configure.ac...4.3 GPG签名与仓库集成让yum install真正可信没有GPG签名的RPMyum install会警告Public key not installed生产环境不允许。签名分三步# 1. 生成GPG密钥仅首次 gpg --gen-key # 输入Real name: Your Team CI/CD # Email address: ciyourcompany.com # Passphrase: 设一个强密码存入密码管理器 # 2. 导出公钥到RPM数据库 gpg --export --armor Your Team CI/CD /tmp/rpm-gpg-key.pub rpm --import /tmp/rpm-gpg-key.pub # 3. 签名RPM包在rpmbuild/RPMS/x86_64/目录下 rpm --addsign openssh-clients-cve202338408-8.7p1-27.el9_4.cve202338408.el9.x86_64.rpm # 4. 验证签名 rpm -K openssh-clients-cve202338408-8.7p1-27.el9_4.cve202338408.el9.x86_64.rpm # 输出应为openssh-clients-cve202338408-8.7p1-27.el9_4.cve202338408.el9.x86_64.rpm: digests signatures OK最后一步将签名后的RPM放入YUM仓库。用createrepo_c重建元数据时必须加--database参数否则客户端yum update无法识别新包createrepo_c --database --update /var/www/html/repo/5. 部署与回滚不是systemctl restart——必须设计原子化切换与熔断机制部署一个修复了CVE-2023-38408的RPM绝不是yum install就完事。ssh-agent是用户级守护进程重启它会影响所有已登录用户的SSH会话。更糟的是如果新包有缺陷如PAM模块初始化失败会导致用户无法使用ssh-add密钥认证中断。所以必须设计三重保障灰度发布、进程级热切换、一键回滚。5.1 灰度发布用rpm --excludepath限制影响范围先在小范围机器如跳板机验证但yum install会全局升级。用--excludepath精准控制# 只升级ssh-agent不碰其他OpenSSH组件 yum install --excludeopenssh\*, --disablerepo\* --enablerepoyour-internal-repo \ openssh-clients-cve202338408-8.7p1-27.el9_4.cve202338408.el9.x86_64.rpm # 验证是否只替换了ssh-agent rpm -V openssh-clients-cve202338408 # 输出应只有.......T. c /etc/ssh/ssh_config 配置文件被忽略正常 # 若出现S.5....T. /usr/bin/ssh则说明误升级了其他文件5.2 进程级热切换不重启agent用LD_PRELOAD劫持自身最稳妥的切换方式是让正在运行的ssh-agent进程加载新二进制。OpenSSH支持-D参数以debug模式运行我们可以用LD_PRELOAD强制其加载新库# 创建切换脚本/usr/local/bin/ssh-agent-switch #!/bin/bash # 备份旧二进制 cp -f /usr/bin/ssh-agent /usr/bin/ssh-agent.bak.$(date %s) # 替换为新二进制 cp -f /tmp/openssh-build/usr/bin/ssh-agent /usr/bin/ssh-agent # 通知所有用户重启他们的agent发送SIGUSR1触发重载 pkill -USR1 ssh-agent # 验证新进程是否运行 ps aux | grep ssh-agent | grep -v grep | head -5 # 应显示新进程的启动时间最近1分钟内注意pkill -USR1 ssh-agent不会杀死进程而是触发其重新读取配置和环境变量从而加载新二进制。这是OpenSSH内置的热重载机制比killall ssh-agent eval $(ssh-agent)更平滑。5.3 一键回滚用rpm -Uvh --oldpackage强制降级万一新包出问题yum downgrade可能失败因版本号格式不标准。必须用rpm底层命令# 查看已安装的旧版本 rpm -qa | grep openssh-clients # 输出openssh-clients-8.7p1-27.el9_3.x86_64 # 强制降级--oldpackage允许降级 rpm -Uvh --oldpackage /path/to/old/openssh-clients-8.7p1-27.el9_3.x86_64.rpm # 验证回滚成功 rpm -qf /usr/bin/ssh-agent # 应返回openssh-clients-8.7p1-27.el9_3.x86_64最后提醒所有操作必须记录在案。我在某次紧急修复中因未记录--oldpackage参数回滚时卡在error: Failed dependencies长达2小时。现在我的运维手册第一页就写着“CVE修复后立即执行rpm -q --last /var/log/openssh-upgrade.log”。这个漏洞修复实战本质上是一场对Linux软件供应链的深度体检。它逼你去看懂dlopen的调用栈去抠configure的每一个开关去和rpmbuild的目录结构较劲最后还要设计用户无感的切换方案。没有捷径只有把每个环节的“为什么”想透才能在凌晨三点接到告警电话时不慌不忙地敲出那条rpm -Uvh --oldpackage命令。我试过所有偷懒的方法——改配置、打补丁、用容器封装——最后都败给了sudo -E这个看似无害的命令。所以别信“一键修复”真正的安全藏在你亲手编译的每一行make输出里。

相关文章:

OpenSSH ssh-agent CVE-2023-38408 漏洞修复实战指南

1. 这个漏洞不是“修个配置就能好”的那种——它藏在ssh-agent的共享库加载机制里OpenSSH-ssh-agent CVE-2023-38408,光看编号你可能觉得是又一个常规权限提升补丁。但实际动手前我翻了三天源码才意识到:这不是改几行配置、重启服务就能闭环的问题。它直…...

MASA模组全家桶中文资源包:为中文玩家打造的无缝本地化体验终极指南

MASA模组全家桶中文资源包:为中文玩家打造的无缝本地化体验终极指南 【免费下载链接】masa-mods-chinese 一个masa mods的汉化资源包 项目地址: https://gitcode.com/gh_mirrors/ma/masa-mods-chinese 你是否曾经在Minecraft中面对MASA模组复杂的英文界面感到…...

在taotoken控制台查看与分析api用量数据的实践心得

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在Taotoken控制台查看与分析API用量数据的实践心得 1. 引言 对于任何将大模型API集成到应用或工作流中的开发者或团队而言&#x…...

5步掌握LyricsX:macOS平台歌词同步的终极解决方案

5步掌握LyricsX:macOS平台歌词同步的终极解决方案 【免费下载链接】LyricsX 🎶 Ultimate lyrics app for macOS. 项目地址: https://gitcode.com/gh_mirrors/ly/LyricsX 在macOS生态系统中,LyricsX作为一款开源歌词同步工具&#xff0…...

中小团队如何利用taotoken统一管理多个ai项目api成本

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 中小团队如何利用 Taotoken 统一管理多个 AI 项目 API 成本 当团队同时推进多个 AI 应用原型或项目时,一个常见的挑战随…...

【实时更新 | 2026 年】国内可用的 npm 镜像源/加速器配置大全(附测速方法)

【实时更新 | 2026 年】国内可用的 npm 镜像源/加速器配置大全(附测速方法)导语:在国内用 npm 安装依赖,直连官方源的速度经常只有几十 KB/s,一个 npm install 动辄等上十几分钟。配置国内镜像源后,下载速度…...

独立开发者如何借助taotoken低成本试验多种ai模型能力

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 独立开发者如何借助Taotoken低成本试验多种AI模型能力 对于独立开发者或个人项目爱好者而言,在创意实现阶段&#xff0…...

AI动态简报之商业洞察篇(2026.05.24)

聚焦:AI商业应用与变现 5条精选💡 第1条:大模型进入"价值验证年"——行业从技术信仰转向商业回报商业价值:2026年5月,全球AI行业呈现清晰转折信号:行业正从"技术信仰期"(2…...

AI动态简报之算力基建篇(2026.05.24)

关注方向:大模型 GPU算力 AI芯片 云计算 大模型API⚡ 第1条:全球九大云厂商资本支出上调至8300亿美元,年增79%核心信息:TrendForce集邦咨询最新报告将2026年全球九大CSP(谷歌、AWS、Meta、微软、甲骨文、字节跳动、…...

终极暗黑破坏神2存档编辑器:轻松修改单机角色的完整指南

终极暗黑破坏神2存档编辑器:轻松修改单机角色的完整指南 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 还在为暗黑破坏神2单机存档的管理而烦恼吗?d2s-editor是一款功能强大的暗黑破坏神2存档编辑器&…...

Android系统级证书安装:解决HTTPS抓包的SSLHandshakeException

1. 为什么系统级证书安装成了Android抓包的“最后一道墙”做Android逆向分析的朋友,大概率都经历过这个场景:Charles或Fiddler配好代理、手机连上Wi-Fi、HTTP流量哗哗地跑,可一打开目标App——空白页、网络错误、甚至直接闪退。点开App的设置…...

AI代理实战能力评估:MLE-Bench基准测试深度解析与工程启示

1. 项目概述与核心价值最近在跟进AI代理(AI Agent)领域的发展,特别是它们在自动化复杂工作流方面的潜力。作为一个在机器学习工程一线摸爬滚打了十来年的从业者,我深知从数据清洗、特征工程、模型调优到实验管理的全流程&#xff…...

多重插补与MICE:量化ESG评分不确定性的工程实践

1. 项目概述:当ESG评分遇上数据“黑洞”,我们如何量化不确定性?在金融和可持续投资领域,ESG评分正成为评估公司长期价值与风险的关键标尺。然而,从业者们都心知肚明一个公开的秘密:支撑这些评分的底层数据&…...

基于IoT、DRL与3DCNN的智能森林火灾监测系统设计与实践

1. 项目概述:一个融合感知、决策与验证的智能防火哨兵森林火灾的早期发现是遏制其蔓延、减少生态与经济损失的关键。传统的人工瞭望塔监测方式不仅效率低下、覆盖范围有限,而且严重依赖人力,难以实现全天候、大范围的持续监控。近年来&#x…...

Cursor Free VIP:终极解决方案,5步实现Cursor Pro永久免费使用

Cursor Free VIP:终极解决方案,5步实现Cursor Pro永久免费使用 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: You…...

OBS计时器插件:如何用6种模式轻松掌控直播时间

OBS计时器插件:如何用6种模式轻松掌控直播时间 【免费下载链接】obs-advanced-timer 项目地址: https://gitcode.com/gh_mirrors/ob/obs-advanced-timer 还在为直播时间管理头疼吗?作为内容创作者的你,是否经常因为时间控制不当而影响…...

跨平台资源包管理工具VPKEdit:游戏开发者的终极解决方案

跨平台资源包管理工具VPKEdit:游戏开发者的终极解决方案 【免费下载链接】VPKEdit A CLI/GUI tool to create, read, and write several pack file formats. 项目地址: https://gitcode.com/gh_mirrors/vp/VPKEdit 在游戏开发和MOD制作过程中,资源…...

N_m3u8DL-RE深度解析:现代流媒体下载引擎的架构设计与实战应用

N_m3u8DL-RE深度解析:现代流媒体下载引擎的架构设计与实战应用 【免费下载链接】N_m3u8DL-RE Cross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文. 项目地址: https://gitcode.com/GitHub_Trending/nm3/N_m3u8…...

高效智能的Chrome全页截图插件:完整网页保存的终极解决方案

高效智能的Chrome全页截图插件:完整网页保存的终极解决方案 【免费下载链接】full-page-screen-capture-chrome-extension One-click full page screen captures in Google Chrome 项目地址: https://gitcode.com/gh_mirrors/fu/full-page-screen-capture-chrome-…...

三步改造小爱音箱:让传统智能音箱秒变AI语音助手的完整指南

三步改造小爱音箱:让传统智能音箱秒变AI语音助手的完整指南 【免费下载链接】mi-gpt 🏠 将小爱音箱接入 ChatGPT 和豆包,改造成你的专属语音助手。 项目地址: https://gitcode.com/GitHub_Trending/mi/mi-gpt 还在为智能音箱的"人…...

体验Taotoken多模型路由能力在不同负载下的稳定性表现

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 体验Taotoken多模型路由能力在不同负载下的稳定性表现 在将大模型能力集成到实际业务时,服务的稳定性与响应速度是开发…...

3分钟掌握:AI 3D建模神器Wonder3D,单图转3D的终极指南

3分钟掌握:AI 3D建模神器Wonder3D,单图转3D的终极指南 【免费下载链接】Wonder3D Single Image to 3D using Cross-Domain Diffusion for 3D Generation 项目地址: https://gitcode.com/gh_mirrors/wo/Wonder3D Wonder3D是一个革命性的AI 3D建模工…...

3分钟快速上手:Unlock Music音乐解锁工具终极指南

3分钟快速上手:Unlock Music音乐解锁工具终极指南 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web 项目地址: https://g…...

3大绝技:Gifsicle如何让命令行成为GIF动画的终极编辑器?

3大绝技:Gifsicle如何让命令行成为GIF动画的终极编辑器? 【免费下载链接】giflossy Merged into Gifsicle! 项目地址: https://gitcode.com/gh_mirrors/gi/giflossy 在数字内容创作的世界里,GIF动画一直占据着特殊地位——它轻量、兼容…...

惠普OMEN游戏本性能控制终极指南:5分钟解锁风扇调速与功耗限制

惠普OMEN游戏本性能控制终极指南:5分钟解锁风扇调速与功耗限制 【免费下载链接】OmenSuperHub Control Omen laptop performance, fan speeds, and keyboard lighting, and unlock power limits. 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub …...

数据丢失时的数字救援队:TestDisk与PhotoRec的救赎之路

数据丢失时的数字救援队:TestDisk与PhotoRec的救赎之路 【免费下载链接】testdisk TestDisk & PhotoRec 项目地址: https://gitcode.com/gh_mirrors/te/testdisk 想象一下这个场景:你正准备打开电脑完成重要的工作报告,却发现硬盘…...

Windows生态融合新路径:APK-Installer让安卓应用无缝接入桌面环境

Windows生态融合新路径:APK-Installer让安卓应用无缝接入桌面环境 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾想在Windows电脑上运行某个安卓专…...

Wonder3D:如何用一张照片在3分钟内创建专业3D模型?

Wonder3D:如何用一张照片在3分钟内创建专业3D模型? 【免费下载链接】Wonder3D Single Image to 3D using Cross-Domain Diffusion for 3D Generation 项目地址: https://gitcode.com/gh_mirrors/wo/Wonder3D 你是否曾想过将一张普通的2D照片变成可…...

AppImageLauncher终极指南:10分钟掌握Linux便携应用系统集成

AppImageLauncher终极指南:10分钟掌握Linux便携应用系统集成 【免费下载链接】AppImageLauncher Helper application for Linux distributions serving as a kind of "entry point" for running and integrating AppImages 项目地址: https://gitcode.c…...

5个AI音频处理神器:用OpenVINO插件让Audacity变身专业音频工作站

5个AI音频处理神器:用OpenVINO插件让Audacity变身专业音频工作站 【免费下载链接】openvino-plugins-ai-audacity A set of AI-enabled effects, generators, and analyzers for Audacity. 项目地址: https://gitcode.com/gh_mirrors/op/openvino-plugins-ai-auda…...