xss漏洞总结

学了好久的漏洞,现在来做个小总结。

目录

一、xss简要概述

二、同源策略

三、主要危害

四、存在的场景

五、攻击类型

反射型、储存型、DOM型

六、绕过技巧

七、payload标签

八、防御

一、xss简要概述

概述:

xxs全称:跨站脚本(cross site scrpiting)不要与CSS 混淆。

原理:

攻击者在网页中嵌入恶意脚本(通常是javascript),当用户使用浏览器加载嵌入恶意脚 本的网页,恶意脚本就会执行,造成跨站脚本攻击。

二、同源策略

学到后面才发现要了解同源策略知识。

1、同源含义

如果两个页面的域名、协议、端口都相同,则两个页面具有相同的源。

****2、同源策略概念:

同源策略全称(Same origin policy-SOP)是一种约定,它是浏览器最核心也最基本的安全功能。也就是说浏览器只允许访问同一个源下的服务器资源,限制访问不同源下的资源,以防止潜在的恶意文件。

如果非同源,共有三种行为受到限制:

  1. Cookie、LocalStorage 和 IndexDB 无法读取。
  2. DOM 无法获得。
  3. Ajax请求不能发送。

三、主要危害

危害分为两方面:

针对用户:窃取cookie劫持会话、网络钓鱼、放马挖矿、广告刷流量等。

针对WEB服务:劫持后台、篡改页面、传播蠕虫、内网扫面等。

四、存在的场景

重灾区:评论区、留言区、个人信息、订单信息等。

针对型:站内信、网页即时通讯、私信、意见反馈等。

存在风险:搜索框、当前目录、图片属性等。

注意:遇到能够输入的地方都可以尝试插入JS脚本尝试是否弹框。

五、攻击类型

|----------|-------------------------------------|-----------------------|-----------------------|
| | 反射型: | 储存型: | DOM型: |
| 触发过程 | 黑客构造xss脚本; 正常用户访问携带xss脚本的页面 | 正常用户访问携带xss脚本的URL | 正常用户访问携带xss脚本的URL |
| 数据存储 | 数据库 | URL | URL |
| 输出 | 后端Web应用程序 | 后端Web应用程序 | 前端JS |
| 输出位置 | HTTP响应中 | HTTP响应中 | 动态构造的DOM节点 |
| 是否持久 | 是 | 否 | 否 |

六、绕过技巧

当后端服务器过滤掉javascript,alert等常见关键词、单引号、双引号、分号时,可以尝试使用以上不同的标签插入,达到绕过后端过滤的目的!

1、大小写绕过:<sCrit>alert(1)</sCript>

2、双写绕过:<sc<script>ript>alert(1)</sc</script>ript>

3、alert被过滤,可以尝试prompt和confirm

4、空格被过滤: <img/src""οnerrοr=alert(1)><svg/οnlοad=alert(1)></svg>

5、长度限制时: <q/oncut=alert(1)> //在限制长度的地方很有效

7、过滤关键字:

(如: javascript)可以在属性中的引号内容中使用空字符、空格、TAB换行、注释、特殊的函数,将代码行隔开。如: javas%09cript:alert()、javas%0acript:alert()、javas%0dcript:alert(),其中%0a表示换行。

8、宽字节绕过:gbxxxx系列的编码,那么我们尝试一下宽字节%cO,%bf,%5c,%df。

9、编码绕过:十六进制编码、jsfuck编码、url编码、unicode编码。

七、payload标签

payload标签:

script 、img 、video 、audio 、svg 、body 、select 、testarea 、iframe等。

payload函数:

onerror当出错时触发、onclick 当鼠标点击触发、onmousemove当鼠标移动就触发、onload 当页面加载完成后触发。

如下例子:

p标签 #可以直接使用事件触发

<p/οnmοuseοver=alert(1)>点我</p>

八、防御

1.设置1HttpOnly,使js获取不到cookie值

2.输入检查,对用户输入的参数进行过滤

3.输出检查,数据输出到HTML中可以进行绕过,对输出值进行过滤

4.对数据进行编码和防御

相关推荐
星恒讯工业路由器17 分钟前
2030通信网络决策:5G-A与6G的战略选择框架
网络·物联网·信息与通信·6g·5g-a·通信物联网·tco成本
嘟哩DuliDuli22 分钟前
AI创作工作区的项目上下文与多模态任务边界
android·人工智能·安全·ai·软件工程
见合八方29 分钟前
光通信系统中的光电探测器
网络·soa·光通信·激光雷达·半导体光放大器
星恒讯工业路由器39 分钟前
双栈时代的访问断层:当同一个域名走向两条网络路径
网络·物联网·信息与通信·ipv4·通信·ipv6·双栈网络
pusheng20251 小时前
普晟传感再获“消防产业核心配套优质品牌”:以可靠传感技术,让全球合规变简单
大数据·前端·人工智能·物联网·安全
EasyGBS1 小时前
通信基站/铁塔机房无人值守,国标GB28181公网平台EasyGBS视频能力怎么去管
深度学习·安全·音视频
猿究院_夏燊2 小时前
SpringMVC 到底是怎么干活的?
java·网络·职场和发展
电子制造自留地2 小时前
AI服务器高多层PCB设计:阻抗控制、层间对位与孔金属化工程要点
大数据·网络·人工智能·科技·pcb工艺
最强小杰3 小时前
Claude Opus 4.8 调用报 529 怎么办?并发限制触发过载——退避策略与降级方案完整指南
运维·网络·python·ai