可别小看了XSS漏洞


可别小看了XSS漏洞

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

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

XSS漏洞简介

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

? 例如:

      

a

? 如果我能控制a,将a改为

,这个地方的代码就会变成这样:

      

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

第一 cookie劫持:

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

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

? payload:

第二 构造GET或POST请求:

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

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

? 例如GET payload:


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

第三 钓鱼

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

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

第四 识别用户浏览器

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

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

? payload:

第五 识别用户安装的软件

? 通过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防御