后端—算法、安全、性能优化 | 学习笔记 2024.11

104 阅读4分钟

241106:网站常见安全漏洞问题  观看学习时长3.5h(01:00——02:00、14:00——16:30)

  • 学习目的:如何提前规避风险、反向验证内部安全

  • 一个网站的构成:前端、网关、后端、前后端交互

    • 安全事件:数据泄露(泄露个人隐私信息)、服务瘫痪(官网出现技术性故障)、成功失窃(窃取商业机密)、系统劫持
    • 攻击意图:政治意图、经济意图、炫技泄愤、竞争目的
  • 网站常见漏洞:

    • 服务端漏洞
      • 第三方组件漏洞
      • SQL注入
      • 命令执行
        • 设置白名单
        • 无法确定白名单时,需要对数据类型进行校验
        • 没法白名单和类型判断时,考虑黑名单
      • 越权漏洞
        • 未授权:不需要任何认证就可以get
        • 水平越权: 能去操作同等级别的他人信息
          • 黑灰产场景:攻击者可以遍历订单id获取其他用户的信息。
          • 防护方式:资源id尽量不要使用短id(遍历难度小),一定要做好资源属主校验
        • 垂直越权:普通用户能够越权获得管理员权限去操作等
          • 黑灰产场景:攻击者可以通过开通另外的测试管理员账户抓包获取接口,或者通过逆向前端代码方式获取实际接口,然后绕过前端直接尝试访问后端接口,获取数据详情。
          • 防护方式:简单场景可以将接口在路由级别进行分组,对不同的API分组引入Middelware进行权限拦截,Middelware获取当前用户角色(判断)以确定是否可以访问此接口。
      • SSRF漏洞:服务端请求伪造攻击:攻击者利用后端服务器作为跳板,让后端服务向非预期网络地址(一般指内网)发出恶意请求,获取敏感信息或执行恶意操作。 - 防护方式:对url的host进行白名单过滤,获取对host解析的ip进行判定,是否是内网地址。
      • 文件上传漏洞:找到公开上传点(视频图文创作、客服反馈等),上传恶意文件(视频图文),获取图片url,然后直接分享url至外部恶意软件或群组。
        • 防护方式:限制文件类型,比如只能传入特定的文件格式;站库分离:应用部署的位置和上传的文件分离,一般可以使用TOS、oss等文件存储;防止图床,对图片访问链接限制,包括时间限制、访问身份限制等。

    • 客户端漏洞
      • 开放重定向:某些需要重定向到其他站点的功能, 往往在参数中携带需要重定向的url,但实际逻辑程序没有控制好重定向的范围,导致攻击者可以构造恶意链接,诱导用户重定向到恶意站点。
        • 它的危害:钓鱼攻击
        • 修复方案:对重定向严格进行白名单控制,并正确校验匹配白名单
      • XSS:本质是一种script代码注入(注入一段恶意代码)。攻击者往目标web页面里插入恶意script代码,当用户访问页面/有客户端时需要交互的时候,嵌入其中的恶意script代码会被执行,从而达到攻击用户的目的。
        • 场景:反射型、存储型、Dom型
        • 一般危害:窃取用户敏感信息、以用户身份执行敏感操作
        • 防护方法:输入过滤(对特殊字符提前拦截)、输出过滤(对危险字符进行转义、避免使用危险指令)、富文本场景(文章发布需要富文本功能,可以在代码层面做白名单和黑名单)、CSP(用于缓解XSS,允许加载什么源的资源,发送什么请求能进行限制)
      • 跨站请求伪造(CSRF):允许攻击者诱导用户访问恶意链接,执行非用户预期的操作。危害如让用户无意识执行敏感操作,关注其他用户或者更改账号的安全邮箱等对攻击者有利的行为。
        • 防护方法:核心判断请求来源是否合法
      • 点击劫持:将恶意代码隐藏到看似无害的内容里,诱导用户误点击后,用户往往会执行一些非预期操作。
        • 防护方式:不让非预期网站iframe我的站点
      • CORS跨域配置错误:配置错误时会出现漏洞,导致非预期的站点可以跨域访问,最终可能导致信息泄露。
        • 防护核心:正确设置跨域白名单
      • WEBSOCKET:
  • 注意事项: - 网络运营者:确保收集其个人信息安全,禁止以非法方式窃取个人信息。《中华人民共和国网络安全法》。

  • 深入简出零拷贝及应用:零拷贝是一门技术,偏技术理论,听了一遍留个浅浅印象吧。