web安全

常见的web安全问题

XSS 攻击

跨站脚本攻击(Cross Site Script),为了和CSS区别,所以简称XSS

XSS 利用网站没有对用户提交的数据进行转义处理或者过滤,导致恶意脚本被执行,最终用户的信息被窃取等严重后果

例子: 一个网站的评论功能没有对用户评论的内容没有进行过滤和处理,存储到了数据库中,然后直接展现到了页面中,执行了js代码,插入了一张华丽丽的图片引导用户点击到其他的站点,甚至将用户的信息,cookie的窃取

CSRF (跨站请求伪造)

利用用户对于目标站点的信任,引诱或者在用户不知情的情况下,通过利用网站验证的漏洞(简单的身份验证只能保证请求发自某个用户的浏览器,却不能保证请求本身是用户自愿发出的。)

例子:

  1. 假如一家银行用以执行转账操作的URL地址如下:

    1
    http://www.examplebank.com/withdraw?account=AccoutName&amount=1000&for=PayeeName
  2. 那么,一个恶意攻击者可以在另一个网站上放置如下代码:

    1
    <img src="http://www.examplebank.com/withdraw?account=Alice&amount=1000&for=Badman">
  3. 如果有账户名为Alice的用户访问了恶意站点,而她之前刚访问过银行不久,登录信息尚未过期,那么她就会损失1000资金。

所以,需要具备以下的条件就会CSRF得逞

  1. 用户登录了信任网站
  2. session未过期,用户这个时候访问了其他的站点,这个站点中包含了一个请求信任站点某个接口(例如转账、关注等),而这些接口也没有其他的认证措施,导致信任网站受到攻击。

防范措施:

  1. referer字段验证
  2. 添加token校验
文章作者: webaifei
文章链接: http://yoursite.com/2018/05/19/web-safe/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 个人博客