River的学习笔记|青训营

50 阅读2分钟
  • 本笔记是基于第二篇学习笔记--网络安全漏洞之服务端漏洞,续篇。

网络安全漏洞--客户端漏洞

  • 开放重定向: 需要重定向到其他站点的功能时,参数中携带需要重新定向的URL。但是URL如果没有限制,攻击者可能会构造恶意链接,将用户重定向到恶意站点。
    解决方式:对重定向网址进行白名单控制,正确校验白名单。

  • XSS:
    跨站脚本攻击,一种Script代码注入。攻击者在目标网站页面里插入恶意Script代码,在用户和网页交互时该代码被执行。
    种类:反射型、储存型、Dom型
    举例: 使用指令将用户输入的请求直接渲染进Dom(Document Object Model,接口作用,方便网页动态获取用户与其互动的内容。[1] )中。这时攻击者可以通过网站反馈入口向管理员发送恶意链接来获取Token和权限。
    解决方式:输入过滤(与防SQL注入类似)、输出过滤(字符输出到Dom时,对危险字符进行加密、使用Vue和React等框架时使用安全的指令)、富文本场景(比如这篇线上笔记,要进行严格的tag和atttibute限制,设置黑白名单)、CSP(Content- Security- Policy, 对当前站点允许加载的资源的来源、能发出的请求进行限制)

  • CSRF(跨站请求伪造):
    允许攻击者诱导用户访问恶意链接、执行用户的非预期操作。比如更改用户敏感信息等。
    解决方式:判断请求来源 使用CRSF token(和用户密码加密类似,客户端每次去访问都必须带上此token)、SameSite cookies: Strick-> Lax(Default)-> (禁止某些场景发送第三方cookie)、Referer-based validation(检验referer是否来自合法站点)

  • 点击劫持(clickjacking):
    网页中,将恶意代码隐藏在一些按钮等看似无害的交互位置,用户点击后会带来非法操作
    举例:将自制的含有恶意链接的网页调整透明度覆盖在原网站上。
    解决方式:在页面代码上,禁止不让非预期网站iframe(比如内嵌页面)我的站点。

[1][blog.csdn.net/SKI_12/arti… XSS学习笔记)