xss就是在页面执行javascript文件。
XSS攻击全称跨站脚本攻击,是为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS,XSS是一种在web应用中的计算机安全漏洞。恶意web用户将代码植入到提供给其它用户使用的页面中,也就是我们平时打开一个危险网站后,网站会下载一些javascript脚本,存储在计算机上,不间断运行监听获取我们的存储数据,发送回恶意用户,这样我们的信息就被泄露,篡改了。
我们如果存储在localstorage和全局变量使用的信息,很容易被javascript获取到,因此注意在全局变量中不要存储敏感信息,而采用闭包的形式或加密形式。设置website设置 http-only、crossdomian.xml则可防御。
xss有三种攻击类型:
1. 本地漏洞,客户端脚本自身。
A用户访问危险网站B,B将带有恶意代码javascript的Html网页发送给A,恶意代码获取A用户存储在浏览器的内容。
2. 反射式漏洞,Web客户端使用Server端脚本生成页面为用户提供数据,而参数数据会在生成的页面上不被html编码注入到动态页面中。
例如:web网站地址为:http://********?param=AAAA,如果对应的页面中会将参数AAAA展示或存储到页面。
恶意用户在web网址上修改:http://********?param=AAAA;alert('CCC'),这样在对应页面上就会出现弹出框alert,这就是反射漏洞攻击。
3.存储式漏洞,该类型是应用最为广泛而且有可能影响到Web服务器自身安全的漏洞。
web站点允许用户发布信息和浏览发布信息。恶意用户B编写<script></script>恶意代码及一些热点新闻,发布到网站,
一般用户点击浏览B发布的信息,这时恶意脚本获取用户的存储信息。
1仅危害单个用户, 2,3 会危害到所有用户。
防御机制:
1. 传统防御检验javascript关键字,检查是否有xss攻击。恶意用户可使用java script等在关键字中添加回车换行等形式规避关键字检查。
2. 对请求代码的url进行长度限制,规范化输入内容。这种会使得web应用功能降低。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性