[关闭]
@1kbfree 2018-04-20T06:04:44.000000Z 字数 1839 阅读 1399

XSS攻击漏洞

渗透


介绍

XSS又叫CSS (CrossSiteScript),因为与层叠样式表(css)重名,所以叫Xss,中文名叫跨站脚本攻击。

凡是存在输入框的地方,都可能存在xss漏洞

Xss漏洞原理

Xss攻击,主要就是攻击者通过“html注入”篡改了网页,插入了恶意的脚本,从而在用户浏览网页时,控制用户浏览器的一种攻击方式。

一起来见证一下Xss

  1. <?php
  2. $context = $_GET['name']; #将GET过来的name值赋值给$context
  3. echo "<h1>".$context."</h1>"; #将$context打印在h1标签里
  4. ?>

然后我们访问网站并传输一个值:http://127.0.0.1/xsstest/test.php?name=free
1.png-31.2kB

可以看到我们输入的free的确在页面中显示了出来,而在代码中是这样的

  1. <h1>free</h1>

如果我们现在插入一条恶意脚本(JavaScript)会怎么样,让我们看看,输入http://127.0.0.1/xsstest/test.php?name=alert('xss')
2.png-65.5kB

可以看到,这个网站是存在Xss漏洞攻击的,再看看现在网站的原代码
<h1><script>alert('xss')</script></h1>用户输入的内容,被当成代码执行了,这样的Xss叫做反射型Xss

Xss分这几种:

Xss攻击进阶

接下来,我们将以攻击者角度体验一下Xss的威力

Xss攻击成功后,攻击者可以对用户当前浏览的页面植入恶意脚本,来控制用户的浏览器,这些用来完成各种具体功能的恶意脚本被称为“Xss Payload”

Xss其实就是JavaScript脚本还可以是Flash或其他客户端的脚本,所以,任何JavaScript能实现的功能,Xss Payload都能做到

一个常见的Xss payload就是获取浏览器的Cookie,从而发起“cookie劫持”攻击,从而导致攻击者不用输入密码,直接使用盗取过来的Cookie登录进用户的账户。

xss payload原理(简单的获取cookie):

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注