【随笔】XSS漏洞

原理

XSS是跨站脚本攻击,是指用户向web页面插入js代码,当用户浏览这个页面时,web中嵌入的js代码会被执行。xss漏洞主要是对输入和输出没有严格控制与检验,导致输入的脚本到前端时可以被执行从而产生一些危害。

XSS的分类

思维导图

 

 

 

反射型

交互的数据一般不存在数据库中,例如查询等页面
xss代码出现在url参数中,浏览器发出的请求后参数提交到服务器,服务器接收后参数值出现在相应的html中,浏览器解析并执行了xss代码
1
<script>alert("helloworld")</script>
作用可获取cookie值

存储型

交互的数据一般存储在数据库中,例如注册,留言等页面

DOM型

不与后台服务器产生交互

防御方法

调用函数

对用户提交的数据可以通过调用函数进行过滤
1
2
htmlspecialchars()//函数将输入的内容进行html编码,效果最好
str_replace()//函数可以将指定的字符串转为其他字符串的,但是会被绕过

  

  • 输出编码

可以使用HTML编码(PHP的htmlspecialchars()函数、ASP的Server.HTMLEncode()函数、ASP.NET的Server.HtmlEncode()函数),用对应的HTML实体替代字面量字符,此时浏览器会将恶意代码当作HTML文档的内容而不是结构加以处理。

利用黑白名单

Noscript

Httponly

Web安全编码规范

 
posted @   GoIcejio  阅读(32)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
点击右上角即可分享
微信分享提示