XSS防护第一步:读懂xss-payload-list攻击载荷与绕过机制

写XSS防护的文章,我一直有个观点:搞清楚攻击payload,恰恰是做好防守的第一步。很多团队天天喊"防XSS",却连攻击者到底拿什么打进来的都不清楚,这防线建得就有点心虚。所以这篇我就围绕 xss-payload-list 这份堪称"攻击者弹药库"的清单,从解读payload本身入手,讲清楚它的类型原理、怎么用它来验证自己的防护是否到位,以及过程中我踩过的一些坑。

这篇文章适合三类人看:刚入门的安全新人,想搞明白XSS到底怎么打的;开发团队的负责人,想给自家系统做一轮靠谱的自测;还有做安全测试的朋友,想把手里的payload清单用得更系统一些。

1. 先搞清楚 xss-payload-list 到底是什么

1.1 从一份"攻击弹药清单"说起

xss-payload-list,从名字就能看出来,这是一份收集了各种XSS攻击载荷的清单。什么叫payload?简单理解就是攻击者真正注入到页面上、让浏览器执行的那段"坏代码"。一个完整的XSS攻击链路,通常包含"注入点 + 攻击载荷 + 触发条件"三要素,payload就是中间最核心的那一环。

网上流传的payload清单五花八门,有的是一个GitHub仓库,有的是安全团队内部维护的Cheat Sheet,里面按场景分门别类地收录了几十上百条测试载荷。有人说这玩意儿是攻击者的工具,防守方看它干嘛?我反过来说:你要是不看它,你连攻击者最常用的手法都不知道,拿什么去配置WAF规则,拿什么去跟开发说"这里必须做输出编码"?防守的本质是知彼,而payload清单就是最直接的"知彼"材料。

1.2 为什么防守方更要读懂它

我接触过不少开发团队,一说XSS防护,第一反应就是"我加了个过滤函数,把script标签和alert都过滤掉了"。听起来好像挺安全,实际上呢?我拿一条常规payload测了一下,直接就给过滤了,可换了一条带编码绕过的变体,啪,弹窗出来了。问题出在哪?出在很多人把"防XSS"理解成了"防几个关键词",而不是理解XSS的原理。

xss-payload-list存在的价值,就是帮你把攻击面完整地摊开看。你会发现攻击者不是只会用<script>alert(1)</script>这一招,他们还会利用HTML属性注入、CSS表达式、SVG事件、DOM clobbering、各种编码嵌套。你看完一遍这些payload,才会明白:原来只要输入能进到HTML上下文,并且没有被正确编码,任何标签的某些属性都可能成为执行点。

所以我的建议是,防守方不仅要看这份清单,还要把它当成自己测试用例库。每一条payload,都对应着一个潜在的防护盲区。你拿这些payload去测自己的系统,测出来有问题的,就是你要修的洞;测不出来的,再仔细分析是被什么机制拦下来的——这个分析过程,就是你理解防护原理的最好途径。

2. 常见payload的类型拆解与原理分析

2.1 基础探针类:先确认"有没有洞"

拿到一个目标站点,我不会上来就丢一堆复杂payload,而是先做基础探针。这类payload的目的很简单:验证这个地方到底能不能注入,浏览器会不会执行。

最常见的探针就是<script>alert(1)</script>,还有<img src=x onerror=alert(1)>这种。为什么用img标签?因为很多过滤规则会盯着script标签,而img标签的onerror事件处理函数同样能执行JavaScript,而且不需要用户交互,图片加载失败就触发。同理还有<svg/onload=alert(1)>、<body onload=alert(1)>,原理都是利用HTML标签的事件属性。

这里有个容易忽视的细节:测试弹窗的时候,建议弹document.domain而不是弹数字。alert(document.domain)能帮你确认payload确实在目标域下执行了,而不是在什么iframe或奇怪的作用域里弹出来的。我见过有人测试时弹了个1,高兴得不行,结果仔细一看是浏览器扩展弹的,白忙活一场。

2.2 上下文突破类:知道自己在哪,才知道怎么出去

这是payload清单里最核心的类别,也是最考验功力的地方。XSS注入的位置不总是在一个"空旷"的HTML文档里,更多时候是嵌在某个上下文中,比如:

  • 输入被放进了<a href="这里">的引号里
  • 输入被放进了<div class="这里">的HTML属性中
  • 输入被放进了<script>var x = "这里"</script>的JavaScript字符串里
  • 输入被放进了<style>标签或CSS的url()里

不同上下文,突破方式完全不同。比如在JavaScript字符串里,你只需要闭合字符串加执行代码:";alert(document.domain);//。在HTML属性里,你可能要先闭合引号,再闭合标签,构造出新的可触发事件。在href属性里,如果协议不受限制,甚至可以直接注入javascript:alert(1)。

理解这个分类特别重要,因为一套成熟的payload清单,不会是杂乱无章地堆payload,而是按照"输出上下文"来组织。你在实际测试时,第一件事不是急着测payload,而是先判断:我输入的内容到底会渲染到页面的哪个位置?这个判断对了,后续的payload选型才不会盲目。

2.3 编码绕过类:道高一尺,魔高一丈的博弈

如果说基础探针是直接敲门,编码绕过就是找侧门、翻窗户。很多系统都有基本过滤,所以payload清单里会收录大量利用解析差异绕过过滤的变体。常见的思路有:

  • 大小写混写:<ScRiPt>alert(1)</ScRiPt>,针对的是那些只匹配小写关键词的过滤器
  • HTML实体编码:&#x3c;script&#x3e;alert(1)&#x3c;/script&#x3e;,利用HTML解析器对实体解码的特性
  • URL编码:%3Cscript%3E,针对URL参数传递层
  • Unicode编码:\u003cscript\u003e,针对JavaScript层的解析
  • 双编码、混合编码:一层编码加一层编码,绕过那些只解一次码的WAF

有朋友问,这些编码绕过是不是太"攻击者思维"了?我想说的是,如果攻击者有一条payload能绕过你的过滤器,你在自己系统上却不知道,那这个问题就是定时炸弹。用编码绕过类payload来测试,本质上是在检验你的过滤和WAF规则到底有多结实,这绝对是防守工作的一部分。

2.4 存储型与DOM型场景

payload清单里大量的条目是为不同场景设计的,这里说两个最常见的场景区别。

存储型XSS,payload会先被保存到数据库,后续任何一个用户访问相关页面都可能被触发。这种场景下payload的选择要考虑"能不能存进去"和"渲染时能不能执行"两层过滤,而且因为触发者是普通用户,payload的隐蔽性和稳定性更重要。我之前在某后台系统测试时,就发现存储型过滤比较严格,但导出的Excel文件名拼接没过滤,结果绕过存储限制在导出环节触发了,这说明payload清单还要能覆盖"间接出口"。

DOM型XSS则完全不走服务端,是前端JavaScript读取URL参数或localStorage里的数据,再通过innerHTML之类的方式写进页面。这种场景用传统payload清单里很多条目测不出来,因为数据根本没到服务端就执行了。你得用专门针对DOM sink的测试方法,比如修改URL中的location.hash或location.search值,看页面前端代码有没有用不安全的方式消费这些数据。很多团队的防护重心全放在服务端过滤上,DOM型的盲区往往就是这么漏出来的。

3. 从列表到实战:一套可落地的检测流程

3.1 准备测试环境与基础工具

拿payload清单直接往生产环境扔,这事儿千万别干。正确的做法是先搭一个本地或测试环境的靶场,我常用的组合是DVWA和自建的一个模拟业务系统——某内部测试应用,专门用来跑各种payload,观察执行效果。本地环境的好处是你可以随意调整PHP或Java端过滤逻辑,快速验证"这条payload为什么在这里被拦""哪条过滤规则起了作用"。

工具方面,浏览器开发者工具是必备的,重点看Network面板里的请求参数位置和Elements面板里输入内容渲染后的DOM结构。Chrome的开发者工具还能配合断点调试看JavaScript的执行流程,这在分析DOM型XSS时几乎是不可替代的。Burp Suite的Repeater也建议备着,批量改参数测payload时效率高很多。我自己还习惯写一个简单的Python脚本,把payload清单读进来,替换掉请求里的测试参数位,循环发送,再配合浏览器截图记录执行结果。

注意:任何渗透测试实操,都必须先获得目标系统的书面授权。自己搭的靶场、测试环境随便测没问题,未经授权去测线上系统,那是给自己挖坑,这个界限一定要守住。

3.2 批量验证的操作步骤

我把一套完整的检测流程拆成五个步骤,照着做基本不会漏:

第一步,确认输入点。打开目标页面,找到所有接受用户输入的入口:搜索框、表单字段、URL参数、请求头、Cookie值、文件名上传处等。不要只盯搜索框,我见过太多漏洞藏在一个不起眼的user-agent参数里,因为开发压根没想到那里也能注入。

第二步,判断输出上下文。往每个输入点提交一个唯一标识的测试字符串,比如zzz_context_test_123,然后在页面上找这个字符串渲染到了哪个位置。是直接在HTML标签之间?还是进了某个属性的引号里?还是被写进了script标签内部?这个判断直接决定后面payload的选型。

第三步,做无害验证。根据上一步判断的上下文,从payload清单里挑对应分类的"温和型payload",先做验证。比如上下文在属性引号里,可以用"><svg/onload=alert(document.domain)>这类去尝试闭合引号标签并触发事件。这一轮的payload不会破坏数据,只会弹个提示,验证注入点是否成立。

第四步,全面扫描。用一个循环脚本把payload清单里该分类的所有条目都跑一遍,每条payload执行后记录:是否弹窗、页面是否报错、响应状态码变化、响应内容里payload被如何处理(原样返回?被过滤?被转义?)。这些记录要落到文档里,别偷懒。

第五步,人工复核。脚本跑出来的结果不能直接信,特别是那种"没有弹窗"的条目,要手动看一眼请求和响应,判断是确实被防护机制拦住了,还是payload本身写得有问题触发条件不满足。自动工具能提高效率,但最终判断还是得靠人。

3.3 结果判读与报告输出

判读测试结果,我见过新手最容易犯的错:只关心"弹没弹窗"。其实没弹窗也有多种可能,要把结果按"拦截方式"来分类。

  • 输入被直接删除:说明有黑名单或白名单过滤,字符被剥离了
  • 输入被HTML编码:说明有输出编码机制,这是相对靠谱的防护
  • 输入被完整保留但没执行:可能触发了CSP策略,或者事件没有正确绑定
  • 输入原样返回且弹窗了:那还用说吗,漏洞确认,赶紧写报告

报告里每个漏洞至少要包含:漏洞URL、注入参数、触发payload、浏览器与版本、复现步骤、截图、风险等级、修复建议。截图很重要,文字的复现步骤再详细,也不如一张弹窗或DOM结构异常的截图直观。我一般还会在报告里把payload对应的绕过思路写清楚,方便开发理解为什么这个输入必须处理。

修复建议这块,不要只会写"对输入进行过滤"。要结合漏洞的具体上下文给方案:输出在HTML标签之间,建议HTML实体编码;输出在属性值里,建议属性值编码并加引号;输出在JavaScript字符串里,建议JS编码并尽量避免拼接。这些建议越具体,开发改起来越不迷茫。

4. 常见问题与排查技巧实录

4.1 弹窗不出现时的排查思路

这是测试中最常见的情况:payload发出去了,页面也正常返回了,就是不弹窗。我的排查顺序基本是固定的。

先看响应源码,确认payload到底怎么被处理的。打开Elements面板,找到你提交的那个字符串,看它是原样返回、被转义、被过滤还是被截断。这一步能筛掉80%的"为什么没弹"问题。我之前在某系统里测一条<img src=x onerror=alert(1)>,怎么都不弹,一看源码,onerror被转义成了onerror字符串,是后端的输出编码在起作用,那这条payload在这个位置就是无效的。

再看是否有CSP。如果payload原样返回但没执行,大概率是Content-Security-Policy响应头在做拦截。打开开发者工具的Console面板,如果看到类似"Refused to execute inline script"的报错,那就是CSP拦的。这种情况你换什么payload都没用,除非能突破CSP的策略本身。

最后看触发条件。有些payload依赖特定的用户交互,比如onmouseover要鼠标悬停才触发,onclick要点击才触发。如果你只是把payload提交进去,没有主动去触发这个事件,那就不会弹窗。所以测这类payload时,要检查事件绑定的目标元素位置,必要时手动去页面里触发一下。

4.2 被过滤拦下时的绕过方向

当payload被过滤时,不要急着换下一条,先分析一下过滤器到底匹配了什么。我总结了一个快速识别方法:把payload拆成几个片段,逐个提交,看哪段被处理了。比如<script>alert(1)</script>被拦了,我就先提交<script>,看看尖括号和script关键字哪个是触发点。筛出触发点,再对照payload清单里的绕过类条目,选对应的编码变体继续测。

做几个快判断:如果只拦了script关键词,试试大小写、插入空白字符、用img或svg替代;如果拦了alert函数名,换prompt(1)或confirm(1);如果拦了尖括号,看注入点是否在属性或JavaScript字符串中,可以尝试不带尖括号的载荷,比如"onmouseover="alert(1)这种纯属性注入。

要注意,过滤器本身的实现位置不同,绕过思路也不同。服务端过滤和WAF过滤,解析链路不一样;黑名单过滤和基于正则的过滤,盲区也不一样。技术层面的细节我不过度展开,但有一个原则大家要记住:过滤永远是有限的,输出编码才是根治方案。测试时你是在帮系统找过滤的盲区,找到后真正修的时候一定要引导开发走向正确的编码方案,而不是把过滤器越堆越厚。

4.3 误报与漏报的处理

自动化测试容易产生两类问题:误报和漏报。误报就是根本没有XSS漏洞,因为某些奇怪的巧合报了"存在风险";漏报就是实际存在漏洞,但测试流程没发现。

误报的典型来源,是测试字符串被其他JavaScript函数意外处理了,或者alert被浏览器扩展拦截导致视觉效果上像没弹。处理办法就是我在2.1里说的,用alert(document.domain)代替alert(1),同时每次手动确认弹窗内容。

漏报的源头通常是对场景覆盖不全。比如只测了GET参数,没测POST表单;只测了主域,没测静态资源子域;只看了响应页面,忽略了新窗口打开的URL参数。我的习惯是建立一份"场景清单",把参数位置、请求方式、输出位置、是否登录态这些维度列成一个表格,每轮测试都照着过一遍,确保不遗漏。

这里单独提醒一下DOM型XSS的漏报问题。传统服务端XSS测试打不到DOM型漏洞,因为payload在服务端响应里通常是正常编码的,问题出在前端JavaScript重新解析并写入了DOM。测试DOM型一定要去读前端代码,找到类似innerHTML、document.write、eval这一类的危险函数,再反向构造测试输入。这个工作量确实大,但你要是做电商、金融这类对前端交互依赖很高的系统,DOM型XSS漏一个,影响面一点都不比服务端XSS小。

5. 把payload列表升级为防护体系的实践经验

5.1 从payload反推防护规则

用payload清单做测试只是入门,更高价值的用法是反推防护规则。做完一轮测试后,把那些"能触发"的payload挑出来,逐一分析它们为什么能过现有的过滤。分析结论直接转化成防护规则升级点:是不是该增加某种编码场景的输出处理?是不是某个接口缺少CSP配置?是不是某些事件属性白名单没覆盖全?

我负责某内部平台防护优化时,就是这么干的。第一轮测试跑下来,发现大量payload都是通过<a href="javascript:...">这种伪协议注入的,说明系统对URL协议的校验基本是空的。于是推动开发在服务端增加协议白名单校验,限制href和src属性只允许http、https、mailto等几种安全协议。这个规则加上去,那一整类payload就全部失效了——这条经验后来每次做安全评审我都会提到。

如果团队有自动化安全测试的需求,还可以把payload清单和常见扫描工具结合。工具负责批量探测,清单负责提供高质量的测试用例。很多开源扫描器的内置payload比较老旧,你把xss-payload-list里的新变体灌进去,扫描结果的覆盖度会有明显提升。但要注意,扫描器的结果只能作为参考,高危结果必须人工复核确认。

5.2 让开发团队真正重视XSS

说实话,项目里最难搞的往往不是技术,而是推动前端同事去改。XSS不像数据库被拖那种漏洞来得震撼,很多开发觉得"不就是弹个窗嘛,又不影响功能"。这时候光喊口号没用,你得拿实锤。

我的做法是准备几个"真实伤害"的演示payload。弹窗只是第一步,真正能说服开发的是那些不弹窗但造成实质破坏的payload:比如读取页面上的敏感信息并悄悄外带到某个地址,或者篡改页面内容诱导用户输入账号密码。你当着开发的面跑这么一条payload,让他看到自己写的功能页面被改得面目全非,他比谁都着急改。

还有就是普及成本认知。XSS漏洞被利用后,窃取用户会话、篡改交易信息、植入恶意跳转都见过。关键是这些后果要落到具体的业务场景里讲,比如"用户支付后资金被转到攻击者账户""用户看到虚假中奖信息被骗"——让开发意识到这不是一个弹窗问题,而是真实的业务风险。

5.3 维护自己的payload库

网上现成的xss-payload-list再好,那也是别人的。我的建议是,在参考公开清单的基础上,逐步搭建自己的payload库。为什么要自己维护?因为每个团队的业务形态不同、技术栈不同、框架自带的防护机制也不同,通用payload清单覆盖不了你系统里那些"业务特有"的注入点。

维护方法很简单:每次测试发现新的绕过变体,就记录到自己的文档里,注明适用场景、测试上下文、绕过原理、修复建议。你也可以把自家系统的过滤规则整理成对照表,每条规则对应它能拦截的payload类型和拦不住的类型,这样下次测试时直接看表,不用再从头盲试。

有一个特别管用的扩展方向:把主流前端框架的XSS特性补充进payload库。React、Vue这类框架自带HTML转义机制,很多通用payload打不进去,但如果你用了v-html或dangerouslySetInnerHTML这类"逃生口"API,又会整个绕过框架防护。你对照框架文档把这类API找出来,维护一套针对自家框架的测试专项payload,比通用清单的命中率高得多。

最后再分享一个长期养成的小习惯:关注行业公开的安全通告和漏洞库更新。每次有新的浏览器特性或新的绕过技巧曝光,记着同步到自己的payload库里。XSS攻防是一个动态博弈过程,没有一份清单能一劳永逸,只有持续更新、持续测试,才能让这门防护手艺始终保持在线。

相关新闻

RNN、CNN、Transformer:序列建模三大瓶颈与架构选型指南

RNN、CNN、Transformer:序列建模三大瓶颈与架构选型指南

1. 从序列建模说起&#xff1a;为什么 Encoder 架构必须迭代做序列建模的人都有一个共同的体感&#xff1a;模型结构这东西&#xff0c;不是越复杂越好&#xff0c;而是每一代架构都在解决上一代解决不了的问题。RNN、CNN、Transformer 这三代 Encoder 架构的演进&#xff0c;表…

2026/10/20 22:14:33 阅读更多 →
PyTorch搭建模型全流程:从数据加载到训练部署的实战指南

PyTorch搭建模型全流程:从数据加载到训练部署的实战指南

搞深度学习的&#xff0c;十有八九绕不开PyTorch。我自己从刚开始看文档一头雾水&#xff0c;到后来能一口气搭出完整的模型&#xff0c;中间踩过的坑大概能写满一本笔记。今天就把这套搭建模型的完整思路、代码细节和排查经验整理出来&#xff0c;核心围绕“pytorch搭建模型及…

2026/10/20 22:13:19 阅读更多 →
RAG评估三支柱:检索、生成与端到端联合评估方法

RAG评估三支柱:检索、生成与端到端联合评估方法

简介&#xff1a;本资源是一份面向AI工程师与大模型应用开发者的RAG&#xff08;检索增强生成&#xff09;系统评估实践指南&#xff0c;聚焦准确率、忠实度与召回率三大核心指标的量化方法与落地路径。资源以轻量级代码包形式提供&#xff0c;共3个文件&#xff1a;HTML格式的…

2026/10/20 22:13:19 阅读更多 →

最新新闻

动作单元驱动的能量流管理:知识工作者的复利提效法

动作单元驱动的能量流管理:知识工作者的复利提效法

1. 项目概述&#xff1a;这不是“躺平”&#xff0c;而是用系统性思维重构日常工作的能量守恒“躺平挖 alpha”这个标题一出来&#xff0c;很多人第一反应是调侃——又一个打鸡血式的时间管理法&#xff1f;或者干脆是反内卷的消极宣言&#xff1f;其实完全不是。我在某实验室带…

2026/10/20 22:54:43 阅读更多 →
截断SVD为何最优?Eckart-Young-Mirsky定理精讲与工程实践

截断SVD为何最优?Eckart-Young-Mirsky定理精讲与工程实践

如果你平时的工作离不开矩阵分解&#xff0c;那你一定绕不开Eckart-Young-Mirsky定理。这个定理还有一个更常用的名字——截断SVD最优性定理。说白了就是&#xff1a;任意一个矩阵&#xff0c;你想用一个低秩矩阵去近似它&#xff0c;只要用谱范数或Frobenius范数来衡量误差&am…

2026/10/20 22:54:43 阅读更多 →
深度学习实战:番茄成熟度识别与采摘点检测全流程解析

深度学习实战:番茄成熟度识别与采摘点检测全流程解析

智慧农业这几年喊得响&#xff0c;但真正能落地的场景里&#xff0c;番茄成熟度识别绝对算一个刚需。不管是大棚里挂满枝头的樱桃番茄&#xff0c;还是连栋温室里的串收大果&#xff0c;采摘自动化要解决的第一件事&#xff0c;就是让机器知道“哪个该摘、哪个不该摘、该摘的位…

2026/10/20 22:54:43 阅读更多 →
阿里云腾讯云华为云对比:计算存储网络数据库安全五维选型避坑指南

阿里云腾讯云华为云对比:计算存储网络数据库安全五维选型避坑指南

简介&#xff1a;这份文档面向企业技术人员、运维人员及云计算初学者&#xff0c;系统梳理主流云平台的核心概念与选型思路&#xff0c;帮助读者理解云计算平台的基本原理、企业应用价值以及不同厂商之间的差异。资源为单个doc文件&#xff0c;压缩包约306KB&#xff0c;内容以…

2026/10/20 22:54:43 阅读更多 →
未来编程的角色责任:从编码执行者到全链路负责人

未来编程的角色责任:从编码执行者到全链路负责人

每次聊到“未来编程的角色与责任”&#xff0c;我总想起自己刚入行那会儿&#xff1a;接到需求就闷头写代码&#xff0c;写完能跑就觉得万事大吉。后来才慢慢明白&#xff0c;编程从来不只是把逻辑翻译成机器指令那么简单&#xff0c;它背后牵扯的是一个人在整个系统里的定位&a…

2026/10/20 22:54:43 阅读更多 →
交互模拟API与动态沙盒:从代码执行到Agentic响应流的工程实践

交互模拟API与动态沙盒:从代码执行到Agentic响应流的工程实践

如果你最近上手过带代码执行能力的大模型应用&#xff0c;多半有过类似的体验&#xff1a;同样是"帮我分析这份数据"这句请求&#xff0c;传统接口只回你一段建议自己动手的说明文字&#xff0c;而升级后的交互模拟 API 会直接给你一个能跑代码、能读文件、能出图表的…

2026/10/20 22:53:41 阅读更多 →

日新闻

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
ESP32舵机控制指南:原理、多路驱动与避坑实战

ESP32舵机控制指南:原理、多路驱动与避坑实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
位移法实现一阶低通滤波:单片机ADC采样降噪实战

位移法实现一阶低通滤波:单片机ADC采样降噪实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型&#xff08;GMM&#xff09;的语音识别系统&#xff0c;很多人第一反应就是一堆数学公式&#xff0c;觉得门槛很高。但如果你真的在MATLAB里把它落地跑通&#xff0c;会发现核心其实就是三件事&#xff1a;把声音变成特征向量&#xff0c;用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人&#xff0c;但落到具体操作上&#xff0c;无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程&#xff1a;对图像做反白、改调色板、彩色转灰度&#xff0c;最后把像素数据导出成txt文件。单看每一…

2026/10/20 20:43:59 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词&#xff0c;你会发现一个很有意思的现象&#xff1a;每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型&#xff0c;有人指的是运动控制系统&#xff0c;还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/20 2:50:50 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 10:02:08 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:45 阅读更多 →