可别小看了XSS漏洞

​ 对于初了解xss漏洞的人来说,XSS漏洞的危害就是获取受害者的cookie,来进行 ‘cookie劫持’。

​ 今天就总结一下XSS漏洞的危害性,望安全人员不要轻视,开发人员不要忽视

XSS漏洞简介

​ XSS攻击通常指黑客通过“HTML注入”篡改网页,插入恶意脚本,从而使用户浏览网页时控制用户浏览器的一种攻击。

​ 例如:

      <p>a</p>

​ 如果我能控制a,将a改为</p><script>alert("1")</script><p>,这个地方的代码就会变成这样:

      <p></p>
<script>alert("1")</script>
<p></p>

就会执行script脚本,这么想我们是不是能篡改网页html文件,来让他执行我们的语句?

第一 cookie劫持:

​ 如果网站存在XSS漏洞,可以通过XSS漏洞来获取用户的cookie

​ 危害:利用用户的cookie来进行登录用户后台

​ payload:<script>alert(document.cookie)</script>

第二 构造GET或POST请求:

​ 黑客可以通过XSS漏洞,来使得用户执行GET或POST请求

​ 危害:可以控制用户删除数据或者发送邮件

​ 例如GET payload:

<script>window.location.href='http://http://www.xxx.com/index.php?type=delete&id=1';</script>

​ POST请求 需要线创建一个表单,然后让表单自动提交信息。

第三 钓鱼

​ 我们从一开始的XSS漏洞简介可知道,XSS漏洞可以让我们对网页进行篡改,如果黑客在登录框的地方把原来的登录框隐藏一下,自己伪造一个登录框,用户在登录框上输入账号密码就会传送到黑客的服务器上

​ 危害:获取用户账号密码

第四 识别用户浏览器

​ 通过script语句能获得用户的浏览器信息

​ 危害:获取浏览器信息,利用浏览器漏洞进行攻击

​ payload:<script>alert(navigator.userAgent)</script>

第五 识别用户安装的软件

​ 通过script语句能够识别用户安装的软件

​ 危害:获取用户软件信息,利用软件漏洞进行攻击

​ 如下代码:

 try{
var Obj=new ActiveXObject('XunLeiBHO.ThunderIEhelper');
}
catch(e){
//异常
}

第六 获得用户真实ip地址

​ 借助第三方软件,比如客户端安装了Java(JRE)环境,那么可以通过调用JavaApplet接口获取客户端本地IP

第七 判断用户是否访问某个网站

​ style的visited属性,访问过的链接,颜色会变化.

第八 蠕虫

​ 用户之间发生交互行为的页面,如果存在存储型XSS,则容易发起XSS Worm攻击.

​ 如:2003年的冲击波蠕虫,利用的是Windows的RPC远程溢出漏洞

​ 还有百度空间蠕虫,可自行百度搜一下

XSS绕过方式

  • JS编码
  • HTML编码
  • URL编码
  • 长度绕过
  • 标签绕过(标签闭合,标签优先性)
  • window.name利用
  • Flash XSS
  • 利用Javascript开发框架漏洞
  • 利用浏览器差异
  • 关键字、函数

XSS防护方法

  • 过滤输入的数据,非法字符
  • 对数据进行编码转换
  • 添加HttpOnly
  • 输入合法性检查
  • 白名单过滤标签
  • DOM XSS防御

可别小看了XSS漏洞的更多相关文章

  1. WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案(转)

    对web安全方面的知识非常薄弱,这篇文章把Xss跨站攻击和sql注入的相关知识整理了下,希望大家多多提意见. 对于防止sql注入发生,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避 ...

  2. WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案

    对web安全方面的知识非常薄弱,这篇文章把Xss跨站攻击和sql注入的相关知识整理了下,希望大家多多提意见. 对于防止sql注入发生,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避 ...

  3. 基于dom的xss漏洞原理

    原文:http://www.anying.org/thread-36-1-1.html转载必须注明原文地址最近看到网络上很多人都在说XSS我就借着暗影这个平台发表下自己对这一块的一些认识.其实对于XS ...

  4. PHP通用的XSS攻击过滤函数,Discuz系统中 防止XSS漏洞攻击,过滤HTML危险标签属性的PHP函数

    XSS攻击在最近很是流行,往往在某段代码里一不小心就会被人放上XSS攻击的代码,看到国外有人写上了函数,咱也偷偷懒,悄悄的贴上来... 原文如下: The goal of this function ...

  5. XSS漏洞

    跨站脚本攻击(也称为XSS)指利用网站漏洞从用户那里恶意盗取信息 坚决不要相信任何用户输入并过滤所有特殊字符.这样既可消灭绝大部分的XSS攻击.另一个建议是输出页面时将 < 和 > 变换成 ...

  6. 2016-02-03 xss漏洞

    应用上出现了xss漏洞.是由一个get请求的ajax接口返回的一个字段中有xss漏洞引起的.该字段本来是要展示出来的,但是补丁版的时候去掉了这块的展示,接口还是返回的.现在引发了xss漏洞,有些同事是 ...

  7. xss漏洞挖掘小结

    xss漏洞挖掘小结 最近,在挖掘xss的漏洞,感觉xss真的不是想象的那样简单,难怪会成为一类漏洞,我们从防的角度来讲讲xss漏洞的挖掘方法: 1.过滤 一般服务器端都是采用这种方式来防御xss攻击, ...

  8. 使用Fiddler的X5S插件查找XSS漏洞

    OWASP top 10的安全威胁中的CrossSite Scripting(跨站脚本攻击),允许攻击者通过浏览器往网站注入恶意脚本.这种漏洞经常出现在web应用中需要用户输入的地方,如果网站有XSS ...

  9. Atitit. Xss 漏洞的原理and应用xss木马

    Atitit. Xss 漏洞的原理and应用xss木马 1. XSS漏洞1 2. XSS的用途2 2.1. 盗取cookie2 2.2. 刷新流量 刷分3 2.3. DOS 窃取隐私”.“假冒身份”. ...

随机推荐

  1. 第1期 考研中有关函数的一些基本性质《zobol考研微积分学习笔记》

    在入门考研微积分中,我们先复习一部分中学学的初等数学的内容.函数是非常有用的数学工具. 1.函数的性质理解: 首先考研数学中的所有函数都是初等函数.而函数的三个关键就是定义域.值域.对应关系f. 其中 ...

  2. 你是否有一个梦想?用JavaScript[vue.js、react.js......]开发一款自定义配置视频播放器

    前言沉寂了一周了,打算把这几天的结果呈现给大家.这几天抽空就一直在搞一个自定义视频播放器,为什么会有如此想法?是因为之前看一些学习视频网站时,看到它们做的视频播放器非常Nice!于是,就打算抽空开发一 ...

  3. 【RPA之家转载】苏桦 华为RPA 企业财务实践:RPA与AI结合,实现百万级票据、合同处理自动化

    [RPA之家转载]苏桦 华为RPA 企业财务实践:RPA与AI结合,实现百万级票据.合同处理自动化 看到大会的主题,说每一位开发者都了不起,说白了我也非常的感触,因为我自己本身也是一个开发者,我从01 ...

  4. 飞鱼CRM

    直接放干货吧,今日头条飞鱼CRM的PHP调用方法,点我跳转. 很简单的两个方法,加密时重要的是有一个空格,必须要有,这个也是坑了我很长时间的一个坑. 接下来具体说一下飞鱼CRM系统接口加密的方法. & ...

  5. 8.4 苹果macOS电脑如何安装Java开发环境(JDK)

    和Windows电脑安装差不多. 下载 来到JDK官方下载界面,点击Java SE 8(简称JDK 8)后面的JDK下载,来到该界面,先同意协议,然后下载对应平台的JDK,我们这里下载Mac OS X ...

  6. tail -f 、tail -F、tailf的区别

    三者经常在工作中会使用到,以下是三条命令的区别,帮忙大家理解:1.tail -f 等同于--follow=descriptor,根据文件描述符进行追踪,当文件改名或被删除,追踪停止,但是不是断开. 2 ...

  7. # Vue3 setup 函数

    Vue3 setup 函数 vue2 和 vue3 开发的区别 首先,目前来说 vue3 发布已经有一段时间了,但是呢,由于还处于优化完善阶段,对于 vue3 开发项目的需求不是很高,主要还是以 vu ...

  8. arcgis中栅格矢量计算技巧收藏

    ​ ​编辑 一.计算面积 ( 可以帮我们计算小班面积 )添加 AREA 字段,然后右键点击字段列,然后点击 CALCULATE VALUES; ---> 选择 ADVANCED -->把下 ...

  9. Thread类的常用方法_获取线程名称的方法和设置线程名称的方法

    Thread类的常用方法 获取线程的名称: 1.使用Thread类中的方法getName() String getName() 返回该线程的名称 2.可以先获取到当前正在执行的线程,使用线程中的方法g ...

  10. 数学工具类Math

    概述 java.lang.Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数.类似这样的工具 类,其所有方法均为静态方法,并且不会创建对象,调用起来非常简单 基本运算的方法 ...