xss漏洞挖掘经验分享

简介: xss漏洞挖掘经验分享

本文转载:https://xiaochuhe.blog.csdn.net/article/details/122792268
一、简述
XSS 攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指
令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程
序通常是 JavaScript ,但实际上也可以包括 Java , VBScript , ActiveX , Flash 或者
甚至是普通的 HTML 。 攻击成功后,攻击者可能得到更高的权限(如执行一些操
作)、私密网页内容、会话和 cookie 等各种内容。
二、常用的 XSS 攻击手段和目的

1.盗用 cookie,获取敏感信息。
2.利用植入 Flash,通过 crossdomain 权限设置进一步获取更高权限;或者利用 Java 等得到类似的操作。
3.利用 iframe、frame、XMLHttpRequest 或上述 Flash 等方式,以(被攻击)用户的身份执行一些管理动作,或执行一些一般的操作如发微博、加好友、发私信等操作。
4.利用可被攻击的域受到其他域信任的特点,以受信任来源的身份请求一些平时不允许的操作,如进行不当的投票活动。
5.在访问量极大的一些页面上的 XSS 可以攻击一些小型网站,实现 DDOS 攻击的效果 。

三、分类
反射型
反射型跨站脚本( Reflected Cross-Site Scripting )是最常见,也是使用最广的一种,可将恶
意脚本附加到 URL 地址的参数中。反射型 XSS 的利用一般是攻击者通过特定手法(如电子邮件),诱使用户去访问一个包含恶意代 码的 URL ,当受害者点击这些专门设计的链接的时候,恶意代码会直接在受害者主机上的浏览器执 行。此类 XSS 通常出现在网站的搜索栏、用户登录口等地方,常用来窃取客户端 Cookies 或进 行钓鱼欺骗。
存储型
持久型跨站脚本( Persistent Cross-Site Scripting )也等同于存储型跨站脚本( Stored
Cross-Site Scripting )。此类 XSS 不需要用户单击特定 URL 就能执行跨站脚本,攻击者事先将恶意代码上传或储存到漏洞 服务器中,只要受害者浏览包含此恶意代码的页面就会执行恶意代码。持久型 XSS 一般出现在网 站留言、评论、博客日志等交互处,恶意脚本存储到客户端或者服务端的数据库中。
DOM 型
传统的 XSS 漏洞一般出现在服务器端代码中,而 DOM-Based XSS 是基于 DOM 文档对象模型的一种漏洞,所以,受客户端浏览器的脚本代码所影响。客户端 JavaScript 可以访问浏览器的 DOM
文本对象模型,因此能够决定用于加载当前页面的 URL 。换句话说,客户端的脚本程序可以通过
DOM 动态地检查和修改页面内容,它不依赖于服务器端的数据,而从客户端获得 DOM 中的数据
(如从 URL 中提取数据)并在本地执行。另一方面,浏览器用户可以操纵 DOM 中的一些对象,例如 URL 、 location 等。用户在客户端输入的数据如果包含了恶意 JavaScript 脚本,而这些脚
本没有经过适当的过滤和消毒,那么应用程序就可能受到基于 DOM 的 XSS 攻击。
无任何过滤情况下一些常见标签

<scirpt>alert("xss");</script>

<img src=1 οnerrοr=alert("xss");>

<input οnclick="alert('xss');">

点击事件

<input οnfοcus="alert('xss');">

竞争焦点,从而触发 onblur 事件

<input οnblur=alert("xss") autofocus><input autofocus>

通过 autofocus 属性执行本身的 focus 事件,这个向量是使焦点自动跳到输入元素上,触发焦点事
件,无需用户去触发

<input οnfοcus="alert('xss');" autofocus>

<details οntοggle="alert('xss');">

使用 open 属性触发 ontoggle 事件,无需用户去触发

<details open οntοggle="alert('xss');">
通过 autofocus 属性执行本身的 focus 事件,这个向量是使焦点自动跳到输入元素上,触发焦点事 件,无需用户去触发 frameLabelStart--frameLabelEnd
相关文章
|
7天前
|
安全 JavaScript 前端开发
阿里云先知安全沙龙(西安站) ——浅谈XSS漏洞挖掘与构造思路
本文介绍了DOM-XSS构造、运算符的威力和模板字符串妙用三个主题。通过多个实例图解,详细展示了如何利用DOM特性构造XSS攻击、JavaScript运算符在代码中的巧妙应用,以及模板字符串在开发中的灵活运用。这些内容对提升Web安全意识和编程技巧具有重要参考价值。
|
前端开发 安全
XSS漏洞挖掘 - CSS编码和反斜杠的三个技巧
http://www.pulog.org/XSS/1269/XSS-encoding-backslash/  
655 0
|
2月前
|
JavaScript 安全 前端开发
同源策略如何防止 XSS 攻击?
【10月更文挑战第31天】同源策略通过对 DOM 访问、Cookie 访问、脚本执行环境和跨源网络请求等多方面的严格限制,构建了一道坚实的安全防线,有效地防止了 XSS 攻击,保护了用户在网络浏览过程中的数据安全和隐私。
109 49
|
6月前
|
存储 安全 JavaScript
手摸手带你进行XSS攻击与防御
当谈到网络安全和信息安全时,跨站脚本攻击(XSS)是一个不可忽视的威胁。现在大家使用邮箱进行用户认证比较多,如果黑客利用XSS攻陷了用户的邮箱,拿到了cookie那么就可以冒充你进行收发邮件,那真就太可怕了,通过邮箱验证进行其他各种网站的登录与高危操作。 那么今天,本文将带大家深入了解XSS攻击与对应的防御措施。
|
2月前
|
安全 前端开发 Java
Web安全进阶:XSS与CSRF攻击防御策略深度解析
【10月更文挑战第26天】Web安全是现代软件开发的重要领域,本文深入探讨了XSS和CSRF两种常见攻击的原理及防御策略。针对XSS,介绍了输入验证与转义、使用CSP、WAF、HTTP-only Cookie和代码审查等方法。对于CSRF,提出了启用CSRF保护、设置CSRF Token、使用HTTPS、二次验证和用户教育等措施。通过这些策略,开发者可以构建更安全的Web应用。
105 4
|
2月前
|
安全 Go PHP
Web安全进阶:XSS与CSRF攻击防御策略深度解析
【10月更文挑战第27天】本文深入解析了Web安全中的XSS和CSRF攻击防御策略。针对XSS,介绍了输入验证与净化、内容安全策略(CSP)和HTTP头部安全配置;针对CSRF,提出了使用CSRF令牌、验证HTTP请求头、限制同源策略和双重提交Cookie等方法,帮助开发者有效保护网站和用户数据安全。
90 2
|
2月前
|
存储 安全 Go
Web安全基础:防范XSS与CSRF攻击的方法
【10月更文挑战第25天】Web安全是互联网应用开发中的重要环节。本文通过具体案例分析了跨站脚本攻击(XSS)和跨站请求伪造(CSRF)的原理及防范方法,包括服务器端数据过滤、使用Content Security Policy (CSP)、添加CSRF令牌等措施,帮助开发者构建更安全的Web应用。
116 3
|
2月前
|
SQL 存储 安全
什么是XSS攻击?什么是SQL注入攻击?什么是CSRF攻击?
理解并防范XSS、SQL注入和CSRF攻击是Web应用安全的基础。通过采用严格的输入验证、使用安全编码实践以及实现适当的身份验证和授权机制,可以有效防止这些常见的Web攻击,保障应用程序和用户的数据安全。
47 0
|
4月前
|
存储 安全 JavaScript
XSS跨站脚本攻击详解(包括攻击方式和防御方式)
这篇文章详细解释了XSS跨站脚本攻击的概念、原理、特点、类型,并提供了攻击方式和防御方法。
673 1
|
3月前
|
存储 JavaScript 安全