🗒️Cross-Site Scripting 跨站脚本攻击(XSS)
2021-7-2
| 2023-4-12
0  |  0 分钟
type
status
date
slug
summary
tags
category
icon
password
 

Cross-Site Scripting 跨站脚本攻击(XSS)

跨站点脚本 (XSS) 攻击是一种注入,其中 恶意脚本被注入到其他良性和受信任的脚本中 网站。当攻击者使用 Web 应用程序执行以下操作时,会发生 XSS 攻击 发送恶意代码(通常以浏览器端脚本的形式)到 不同的最终用户。允许这些攻击成功的缺陷是 相当普遍,并且发生在 Web 应用程序使用来自 用户在其生成的输出中,而无需对其进行验证或编码。
攻击者可以使用 XSS 向毫无戒心的人发送恶意脚本 用户。最终用户的浏览器无法知道脚本应该 不可信,并将执行脚本。因为它认为 脚本来自受信任的来源,恶意脚本可以访问任何 Cookie、会话令牌或 浏览器并与该站点一起使用。这些脚本甚至可以重写 网页的内容。 一般XSS可以分为如下几种常见类型: 反射性XSS; 存储型XSS; DOM型XSS; 3.在控制台输入javascript:alert(document.cookie) 可以查看当前网站cookie.

常见的注入点

将搜索字符串回显给用户的输入字段,用于回显用户数据
返回用户提供的文本的错误消息
包含用户提供的数据的隐藏字段
显示用户提供的数据的任何页面 留言板 自由评论
HTTP头信息

XSS攻击危害

窃取会话cookie
创建虚假请求
在页面上创建虚假字段以收集凭据
将页面重定向到“非友好”站点
创建伪装成有效用户的请求
窃取机密资料
在最终用户系统上执行恶意代码(活动脚本)
插入恶意和不适当的内容
XSS攻击增加了网络钓鱼攻击的有效性
URL中使用了有效的域

XSS攻击场景

  1. 攻击者向受害者发送恶意URL
  1. 受害者点击恶意网页中的链接
  1. URL中嵌入的恶意脚本在受害者的浏览器中执行
脚本窃取敏感信息,如会话id,并将其释放给攻击者
7.在输入框里输入函数,查看哪一个是有回显的,在有回显输入框尝试注入<script>alert(' 111')</script>

反射的和基于dom的XSS

基于dom的XSS是反射XSS的另一种形式。这两种方法都是通过发送带有反射到浏览器的输入的链接来触发的。DOM和“传统的”反射XSS之间的区别在于,使用DOM,有效负载永远不会到达服务器。它只会被客户端处理。
攻击者向受害者发送恶意URL
受害者点击链接
该链接可能会加载恶意网页或他们使用的网页(是否已登录?),该网页具有脆弱的路由/处理程序
如果是恶意网页,它可能会使用自己的JavaScript攻击另一个具有易受攻击的路由/处理程序的页面/url
易受攻击的页面呈现有效负载,并在该页面/站点的用户上下文中执行攻击
攻击者的恶意脚本可能使用本地帐户的权限运行命令
恶意攻击者不使用<script>alert('xss')</ script>
10.查找测试用的路径 使用全局搜索ctrl+shift+f 查找test可以找到GoatRoute.js后中有带有路径的test 答案为:start.mvc#test/ 11.对<script>webgoat.customjs.phoneHome()</ script>及进行编码,然后在新的窗口打开http://3556d1885ea14b26a4a122ba3d483206.app.mituan.zone:8080/WebGoat/start.mvc#test/%3Cscript%3Ewebgoat.customjs.phoneHome()%3C%2fscript%3E 在开发者工具的控制台查看随机数 12.反射型XSS.类似于sql注入,不过是针对于html,通过对未进行输入检验的输入点注入可执行代码.
WebGoat靶场通关
  • 靶场
  • 健康
  • content-typeAD域控
    目录