常见的跨站脚本(XSS)利用与检测原理,零基础入门到精通,看这篇就够了!赶紧收藏!

常见的跨站脚本(XSS)利用与检测原理

什么是 跨站脚本 (XSS)

跨站脚本(也称为 XSS)是一种 Web 安全漏洞,它破坏用户与应用程序的交互。跨站点脚本漏洞通常允许攻击者伪装成受害者用户,执行用户能够执行的任何操作,并访问用户的任何数据。如果受害者用户在应用程序中具有特权访问权限,则攻击者可能能够完全控制应用程序的所有功能和数据。

XSS 是如何产生的

跨站点脚本就是操纵易受攻击的 Web 站点,使其将恶意 JavaScript 返回给用户。当恶意代码在受害者的浏览器中执行时,攻击者可以完全破坏受害者与应用程序的交互。

如何确认是否存在****XSS漏洞

XSS 漏洞通常发生在应用程序未能正确验证或转义用户输入时,导致恶意代码被注入到网页中并由浏览器执行。因为生成 HTML 的过程中,HTML语法中含有特殊意义的字符(元字符)没有被正确处理结果导致 HTML或 JavaScript 被肆意注入,从而使得原先的HTML结构产生变化。为了消除元字符的特殊意义,将其转化为普通字符,就需要用到转义(Escape)处理。HTML的转义处理对于消除 XSS 至关重要。

在确认 XSS 漏洞时,alert() 函数是一个常用的工具。alert() 函数会弹出一个对话框,显示指定的消息,并等待用户点击“确定”按钮。由于其简短、无害且易于识别的特点,alert() 函数常被用于测试 XSS 漏洞。在谷歌的浏览器版本中,禁止了跨域 iframe 中的 alert() 调用。可以使用print() 函数替代。当 print() 函数被调用时,它会打开打印对话框,这同样可以用来确认 XSS 漏洞的存在。

例如:当你发现一个输入框,输入以下内容并提交:

<script>alert('XSS')</script> #或着<script>print()</script>

代码片如果页面加载后弹出一个显示“XSS”的对话框,那么你就成功确认了该页面存在 XSS 漏洞。段:可切换语言,无法单独设置文字格式

XSS 攻击有哪些类型

1、反射型 XSS,其中恶意脚本来自当前 HTTP 请求。

2、存储型 XSS,恶意脚本来自网站的数据库。

3、基于 DOM 的 XSS,其中漏洞存在于客户端代码而不是服务器端代码中。

1

反射型跨站脚本

当应用程序在 HTTP 请求中接收数据并以不安全的方式将该数据包含在即时响应中时,就会出现这种情况。如:

https://website.com/status?message=All+is+well.<p>Status: All is well.</p>

该应用程序不执行任何其他数据处理,因此攻击者可以轻松构建如下攻击:

https://website.com/status?message=<script>/*+Bad+stuff+here...+*/</script><p>Status: <script>/* Bad stuff here... */</script></p>

当用户访问攻击者构建的上述 URL,则攻击者的脚本将在用户的浏览器中执行,在该用户与应用程序的会话上下文中执行。此时,脚本可以执行用户有权访问的任何操作,并检索任何数据。

攻击者还可以通过多种方式诱使受害者用户发出他们控制的请求,以提供反射型 XSS 攻击。这些操作包括在攻击者控制的网站上放置链接,或放置在允许生成内容的其他网站上,或者通过电子邮件、推文或其他消息发送链接。攻击可以直接针对已知用户,也可以是针对应用程序的任何用户的攻击。

2

存储型跨站脚本

存储型 XSS(也称为持久 XSS 或二阶 XSS)是指应用程序从不受信任的来源接收数据,并以不安全的方式将该数据包含在其后续的 HTTP 响应中。

有些数据可能会通过 HTTP 请求提交给应用程序;例如,对博客文章的评论、聊天室中的用户昵称或客户订单上的联系人详细信息。数据还可能来自其他不受信任的来源;例如,显示通过 SMTP 接收的消息的 Web 邮件应用程序,显示社交媒体帖子的营销应用程序,或显示来自网络流量的数据包数据的网络监视应用程序。

3

基于 DOM 的跨站脚本

基于 DOM 的 XSS(也称为 DOM XSS)是指应用程序包含一些客户端 JavaScript,这些 JavaScript 以不安全的方式处理来自不受信任的来源的数据,通常是将数据写回 DOM。

一般情况下输入字段将从 HTTP 请求的一部分(例如 URL 查询字符串参数)填充,从而允许攻击者以与反射型 XSS 相同的方式使用恶意 URL 进行攻击。

XSS 可以用来做什么

冒充或伪装成受害者用户。执行用户能够执行的任何操作。读取用户能够访问的任何数据。捕获用户的登录凭证。对网站执行虚拟污损。将特洛伊木马程序功能注入网站。

如何查找和检测 XSS 漏洞

XSS 漏洞都可以使用 Web 漏洞扫描程序快速可靠地找到。在采用 CSP 的应用程序包含类似 XSS 的行为,则 CSP 可能会阻止利用此漏洞。可以绕过 CSP 以利用潜在漏洞。(内容安全策略 (CSP) 是一种浏览器机制,旨在减轻跨站点脚本和其他一些漏洞的影响。)

在由于输入过滤器或其他防御措施而无法进行完整的跨站点脚本利用的情况下悬空标记注入技术跨域捕获数据。它通常可以被用来捕获其他用户可见的敏感信息,包括可用于代表用户执行未经授权的操作的 CSRF 令牌。

Tips:

1、XSS 和 CSRF 有什么区别?

XSS 涉及导致网站返回恶意 JavaScript,而 CSRF 涉及诱使受害者用户执行他们不打算执行的操作。

2、XSS 和 SQL 注入有什么区别?

XSS 是针对其他应用程序用户的客户端漏洞,而 SQL 注入是针对应用程序数据库的服务器端漏洞。

3、如何在 PHP 中防止 XSS?

使用允许的字符白名单过滤您的输入,并使用类型提示或类型转换。对于 HTML 上下文,使用 htmlentities 和 ENT_QUOTES 或 JavaScript 上下文使用 JavaScript Unicode 转义来转义您的输出。

4、如何在 Java 中防止 XSS?

使用允许字符的白名单过滤您的输入,并使用 Google Guava 等库对 HTML 上下文的输出进行 HTML 编码,或对 JavaScript 上下文使用 JavaScript Unicode 转义。

黑客/网络安全学习路线

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

网络安全学习资源分享:

下面给大家分享一份2025最新版的网络安全学习路线资料,帮助新人小白更系统、更快速的学习黑客技术!

一、2025最新网络安全学习路线

一个明确的学习路线可以帮助新人了解从哪里开始,按照什么顺序学习,以及需要掌握哪些知识点。

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

读者福利 | 优快云大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)

我们把学习路线分成L1到L4四个阶段,一步步带你从入门到进阶,从理论到实战。

在这里插入图片描述

L1级别:网络安全的基础入门

L1阶段:我们会去了解计算机网络的基础知识,以及网络安全在行业的应用和分析;学习理解安全基础的核心原理,关键技术,以及PHP编程基础;通过证书考试,可以获得NISP/CISP。可就业安全运维工程师、等保测评工程师。

在这里插入图片描述

L2级别:网络安全的技术进阶

L2阶段我们会去学习渗透测试:包括情报收集、弱口令与口令爆破以及各大类型漏洞,还有漏洞挖掘和安全检查项目,可参加CISP-PTE证书考试。

在这里插入图片描述

L3级别:网络安全的高阶提升

L3阶段:我们会去学习反序列漏洞、RCE漏洞,也会学习到内网渗透实战、靶场实战和技术提取技术,系统学习Python编程和实战。参加CISP-PTE考试。

在这里插入图片描述

L4级别:网络安全的项目实战

L4阶段:我们会更加深入进行实战训练,包括代码审计、应急响应、红蓝对抗以及SRC的挖掘技术。并学习CTF夺旗赛的要点和刷题

在这里插入图片描述

整个网络安全学习路线L1主要是对计算机网络安全的理论基础的一个学习掌握;而L3 L4更多的是通过项目实战来掌握核心技术,针对以上网安的学习路线我们也整理了对应的学习视频教程,和配套的学习资料。

二、技术文档和经典PDF书籍

书籍和学习文档资料是学习网络安全过程中必不可少的,我自己整理技术文档,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,(书籍含电子版PDF)

在这里插入图片描述

三、网络安全视频教程

对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的网安视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

在这里插入图片描述

四、网络安全护网行动/CTF比赛

学以致用 ,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。

在这里插入图片描述

五、网络安全工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。在这里插入图片描述

面试不仅是技术的较量,更需要充分的准备。

在你已经掌握了技术之后,就需要开始准备面试,我们将提供精心整理的网安面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。

如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

在这里插入图片描述

img

**读者福利 |** 优快云大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值