博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
XSS学习笔记(一)
阅读量:5117 次
发布时间:2019-06-13

本文共 851 字,大约阅读时间需要 2 分钟。

学习来源: 

靶场地址:

 


 

一、概述

  • XSS 名为跨站脚本漏洞,XSS 是指恶意攻击者利用网站没有对用户提交数据进行转义处理或者过滤不足的缺点,进而添加一些代码,嵌入到web页面中去。使别的用户访问都会执行相应的嵌入代码;
  • XSS 是一种发生在 Web 前端的漏洞,所以其危害的对象也主要是前端用户;
  • XSS 漏洞可以用来进行钓鱼攻击、前端js挖矿、用户 Cookie 获取等。

 


 

二. XSS 漏洞攻击流程举例(窃取 Cookie ):

    


 

三. XSS 漏洞常见分类

  按照危害程度 : 存储型 > 反射型 > DOM 型

  1. 反射型:交互的数据一般不会被存在在数据库里面,一次性,一般出现在查询页面等。(与服务器交互)
  2. 存储型:交互的数据会被存在在数据库里面,永久性存储,一般出现在留言板注册页面等。(与服务器交互)
  3. DOM 型:不与后台服务器产生数据交互,通过 DOM 操作前端代码输出的时候产生的问题,也属于反射型。

 


. XSS 漏洞形成的原因

    

 

形成 XSS 漏洞的主要原因是程序对输入输出的控制不够严格,导致“精心构造”的脚本代码输入 后,在输出到前端时被浏览器当作有效代码解析执行从而产生危害。


五. XSS 漏洞测试流程

  1. 在目标站点上找到输入点,比如查询接口留言板等;
  2. 输入一组“特殊字符 + 唯一识别字符”,点提交后,查看返回的源码,看是否有相应的处理;
  3. 通过搜索定位唯一字符,结合唯一字符前后语法确认是否可以构造 js 的条件(构造闭合)
  4. 提交构造的脚本代码(以及绕过姿势),看是否成功执行,如果成功说明存在 XSS 。  
  • 一般查询接口容易出现反射型 XSS ,留言板容易出现存储型 XSS 。
  • 由于后台可能存在过滤措施,构造的 script 可能会被过滤掉,而无法生效,或者限制了执行(浏览器)。
  • 通过变化不同的 script ,尝试绕过后台过滤机制。

 

转载于:https://www.cnblogs.com/yinhf2019/p/10931899.html

你可能感兴趣的文章
算法和数据结构(三)
查看>>
Ubuntu下的eclipse安装subclipse遇到没有javahl的问题...(2天解决了)
查看>>
alter database databasename set single_user with rollback IMMEDIATE 不成功问题
查看>>
WCF揭秘——使用AJAX+WCF服务进行页面开发
查看>>
【题解】青蛙的约会
查看>>
IO流
查看>>
mybatis调用存储过程,获取返回的游标
查看>>
设计模式之装饰模式(结构型)
查看>>
面向对象的设计原则
查看>>
Swift3.0服务端开发(三) Mustache页面模板与日志记录
查看>>
【转】 FPGA设计的四种常用思想与技巧
查看>>
EntityFrameWork 实现实体类和DBContext分离在不同类库
查看>>
新手算法学习之路----二叉树(在一个二叉查找树中插入一个节点)
查看>>
autopep8
查看>>
GIT在Linux上的安装和使用简介
查看>>
基于C#编程语言的Mysql常用操作
查看>>
s3c2440实验---定时器
查看>>
MyEclipse10安装SVN插件
查看>>
[转]: 视图和表的区别和联系
查看>>
Regular Experssion
查看>>