美文网首页
XSS和CSRF

XSS和CSRF

作者: TheoLin | 来源:发表于2017-06-15 21:18 被阅读0次

XSS篇:

XSS,(cross site scripting),跨站脚本注入,指攻击者利用一些技巧向页面注入脚本代码并让其执行,从而达成攻击效果。

XSS原理

攻击者利用页面输入和输出的功能,在输入时使用闭标签再加脚本代码等技巧,当服务器输出这些输入信息到页面时,就会插入并执行脚本代码。解决方法是可以在服务端对客户端的输入进行过滤或转义。注意:这里不一定只用script标签,还可以用img等其他标签,或者用onclick等事件方法达到执行脚本代码。简单例子如下:

//Web 请求如下所示:
GET http://www.somesite.com/page.asppageid=10&lang=en&title=Section%20Title
//在发出请求后,服务器返回的 HTML 内容包括:
<h1>Section Title</h1>
//攻击者可以通过摆脱 <h1> 标记来注入代码:
http://www.somesite.com/page.asp?pageid=10&lang=en&title=Section%20Title</h1><script>alert(‘XSS%20attack’)</script>
//最终这个请求的 HTML 输出将为:
<h1>Section Title</h1><script>alert(‘XSS attack’)</script>
XSS危害与防范

攻击者可以使用 XSS 漏洞搞恶作剧,窃取 Cookie,劫持帐户,执行 ActiveX,执行 Flash 内容,强迫您下载软件,官网挂钓鱼网站,或者是对硬盘和数据采取操作。防范的方法就是服务端对能被攻击的输入进行过滤或转义。

CSRF篇

CSRF,(Cross-site request forgery),跨站请求伪造,指通过伪装来自受信任用户的请求来进行对受信任的网站一些操作。

CSRF原理

攻击者一般通过XSS使用户在已经授权的网站中不知不觉发起某些请求,从而实现自己的目的。XSS是实现CSRF的有效方法,但不是唯一方法。常见的例子有:

//假如一论坛网站的发贴是通过 GET 请求访问,点击发贴之后 JS 把发贴内容拼接成目标 URL 并访问:
http://example.com/bbs/create_post.php?title=标题&content=内容
//那么,我只需要在论坛中发一帖,包含一链接:
http://example.com/bbs/create_post.php?title=我是脑残&content=哈哈
//只要有用户点击了这个链接,那么他们的帐户就会在不知情的情况下发布了这一帖子。
CSRF危害与防范

既然发贴的请求可以伪造,那么删帖、转帐、改密码、发邮件全都可以伪造。CSRF不能绝对的防范,因为他是通过伪造请求来实现的,而请求可以来自各自各样的方式。我们可以通过提高CSRF的攻击门槛进行适当的防范,做法有:重要的请求应该通过post方式进行(杜绝通过点击链接进行攻击)、服务端生成随机token,保存在页面隐藏域中,在发出请求的时候一并发出,服务端在验证其在session中的token,两者一致后才处理请求,处理请求后必须马上销毁token。(这种做法可以提高攻击难度)、防范XSS攻击(这样能有效防范CSRF)。

参考文献

  1. http://www.ruanyifeng.com/notes/2006/12/xss.html (阮一峰XSS)
  2. http://www.cnblogs.com/wangyuyu/p/3388180.html (XSS和CSRF)

相关文章

  • laravel的CSRF防护机制和延伸

    在说laravel框架里对CSRF的攻击防护之前先对XSS和CSRF攻击做一下简单的介绍。 XSS和CSRF攻击 ...

  • web安全-加餐篇

    一. 问:xss 和 csrf 到底有的不同怎么理解 你可以能会问,xss, 和 csrf 都是 1. 用户点...

  • 浅说 XSS 和 CSRF

    在 Web 安全领域中,XSS 和 CSRF 是最常见的攻击方式。本文将会简单介绍 XSS 和 CSRF 的攻防问...

  • 贰--某服

    1.xss和csrf的本质区别 xss和csrf是两种不同维度的攻击形式。xss跨站脚本,主要是一种攻击手段,恶意...

  • web安全1

    xss 类型 Dom Based Xss、反射型Xss和存储型Xss 攻击 获取cookie基本是配合csrf一起...

  • XSS和CSRF

    CSRF CSRF(Cross-Site-Request-Forgery):跨站请求伪造,简单点说就是 攻击者伪造...

  • XSS 和 CSRF

    XSS XSS,即 Cross Site Script,中译是跨站脚本攻击;其原本缩写是CSS,但为了和层叠样式(...

  • CSRF 和 XSS

    1.XSS 是什么?如何防范 网页设置了提交信息的模式为拼接HTML,若遭到恶意用户提交一个script脚本,就会...

  • xss和csrf

    XSS是什么?它的全名是:Cross-site scripting,为了和CSS层叠样式表区分所以取名XSS。是一...

  • XSS和CSRF

    xss(cross site script),跨站脚本攻击,简称本应该是css,但是为了避免和css层叠样式表冲突...

网友评论

      本文标题:XSS和CSRF

      本文链接:https://www.haomeiwen.com/subject/kwzeqxtx.html