我要咨询

api接口风险需警惕-做好这几点可预防api风险

文章来源:四九八网络发布时间:2020-08-03 16:32:53热度:4052

  API的出现和广泛使用给快速开发提供前所未有的便利条件,但是这种便利的背后也伴随着不容忽视的风险,今天498科技就给大家来介绍一下API安全风险:


       想了解无风险,靠谱api接口的朋友,欢迎拨打咨询热线:400 0591 498 或者点击留言,498科技免费为大家提供咨询和解答。


  风险一:API接口鉴权失效


  调用API其实本质上就是对后端服务的调用,但后端服务并不对所有人开放,除少数API(如提供公开素材下载的网站)外,绝大部分API需要对用户进行鉴权后,再决定是否允许用户调用该服务。鉴权简而言之就是验证用户是否有权访问资源、能访问哪些资源,其通常分成两个环节:先身份验证,后权限控制,两者不可分割。但是,不少API接口由于存在开发、配置缺陷等问题,导致鉴权机制失效。


      常见的鉴权失效有:用户身份鉴权失效、对象级别的鉴权失效和功能级别的鉴权失效。用户身份鉴权失效通常指用户无需认证令牌,或通过一定方式可以绕过认证环节,使得非法用户入侵后台系统,进而可能导致存储在该系统内的个人信息泄漏。对象级别的鉴权失效即为水平越权,指的是用户只需更改API路径(End Point)即可实现对请求中的对象ID所属的敏感数据进行未授权访问的情况,例如,通过修改薪资系统API接口参数中的员工号,即可了解其他员工的薪资待遇水平。


      功能级别的鉴权失效即为垂直越权,指的是通过更改API接口中关于层级、群组或角色的参数,即可实现对不同层级、群组或角色可访问的敏感信息的未授权访问,例如,恶意人员可将普通用户名篡改为管理员用户名,即可访问所有原本仅系统管理员才能查看的敏感信息。


  风险二:敏感信息展示不当


  敏感信息脱敏展示机制通常用于保护用户敏感信息不被其他未授权人员访问,以避免用户权益受损。敏感信息脱敏展示机制失效通常有三种情况:未脱敏、伪脱敏、脱敏策略不一致。未脱敏指的是敏感信息没有经过脱敏展示即通过API接口从前端界面进行展示,例如直接在客户端应用的界面展示个人姓名、手机号码和身份证等信息。


        伪脱敏指的是敏感信息仅在前端展示界面脱敏,未在服务器后端进行脱敏,一旦流量被截获,则可能造成敏感信息泄漏。脱敏策略不一致指的是对同一类敏感信息,未采取一致的脱敏策略,导致将同一条信息不同的未脱敏部分进行组合后仍可得到未脱敏的数据,例如A界面展示王五的手机号为123***789,而B界面展示王五的手机号为123456***,则进行组合后可以得到王五的完整手机号123456789。


  风险三:过量数据暴露风险


  该风险指的是API接口在接收到参数请求时,后台服务器未做筛选,便将大量数据返回至前端,仅依赖客户端对数据数量及类型进行选择性展示,但此时数据,尤其是敏感数据,可能已经全部在前端界面进行缓存,访问者查看前端即可获取大量数据。

       

       例如,王五在前端界面提交了访问A部门所有员工电话号码的请求,但是后端服务器却除了返回了A部门所有员工的电话号码,还返回了身份证号码、家庭住址等个人敏感信息,造成个人信息的过度收集和敏感信息的暴露。同理,在通过数据接口间接收集个人信息时,如果配置不当,将可能导致大量无关个人信息被过度收集。


  风险四:第三方通过API违规留存数据


  当下社会分工逐渐细化,企业开放很多不同的API接口给第三方合作伙伴已成常态,从而支持数据处理、资源共享等操作。但是,若双方未约定,或第三方未按照约定,则可能存在第三方通过频繁访问合作接口,私自过量缓存、获取数据资源的行为,当留存的数据资源达到一定程度,则效果上等同于“拖库”。


       前段时间曝光的某征信企业非法倒卖个人信息案件中,其便是利用上游企业接口非法缓存公民个人信息,累计缓存公民姓名、身份证号码和身份证照片一亿多条,供下游企业牟利,造成严重公民个人信息泄漏。



  思考与建议


  如上述风险分析过程可见,对于用户的个人信息保护,API安全极其关键,App运营者应当引起高度重视。一旦在API安全问题上采取措施不力,造成大量个人信息泄露,可能涉嫌违反《网络安全法》第四十二条“网络运营者应当采取技术措施和其他必要措施,确保其收集的个人信息安全,防止信息泄露、毁损、丢失。”


       App运营者不仅应关注API安全,还需梳理API接口清单、API接口设计脆弱性,加强API全生命周期(上线、变更和下线)管理,监测API使用过程的数据安全风险,真正付诸于实际行动,让个人信息“采之以理、用之以道、存之以安”。具体有以下建议供参考:


  一是加强API技术安全防护能力


  虽然API存在安全风险,若采取恰当的技术防护手段,则可以有效的把风险控制在可接受范围内。组织应将API安全纳入安全防护体系中,在应用系统各个环节与其他技术手段协同以达到加强API安全的目标。


       以加强API鉴权机制为例,在身份验证环节,组织应排查无需认证的API清单,定位弱密码API,加强密码强度并强制定期更换密码,或建立多因素认证,可设立黑名单机制,将多次访问失败的IP纳入黑名单,拒绝其访问,有效减少非法访问风险;在授权管理环节,组织可使用采用RBAC(角色授权)、ABAC(属性授权)等多种不同细粒度权限管理结合资源访问时环境因子(如UA头、refer、token)认证等技术减少未授权访问关键数据资源,同时配置资源访问流量控制,访问次数限制和日志监测分析技术等防护手段,进一步强化安全屏障。


  二是建立API安全长效风险管控机制


  只要API一直在启用,即使合法用户或第三方仍可能存在滥用自身权限,频繁访问、修改、下载、留存敏感数据的风险,因此,组织应建立API安全长效管理机制,该机制不仅应具备长期监测、发现和预警来自组织内部和外部的非授权、滥用API安全风险的能力,更应该具备在发生数据安全泄漏事件时快速定位泄漏源头,有效控制数据泄露负面影响的能力。只有建立了长效风险管控机制,才能真正保障组织业务稳定运营和公民个人信息安全。


       三是寻找靠谱的api接口公司


  结语


  必须明确的是,API安全是App安全不可缺少的一部分,没有足够安全的数据接口,再完善的“隐私政策”,再充分的用户权利保障,都将因为数据的泄露让所有努力付之东流。API为每一位用户、App运营者搭建着无数座供数据快速通行的“无形桥梁”,如何切实保障这些桥梁足够安全、足够可靠,是当下持续深入开展治理、精准施策的“痛点”,也是组织切实提升个人信息安全能力水平的“刚需”。


原创作者:四九八科技。禁止转载,本文链接:

您关注的城市合伙人案例

查看更多成功案例

|聚合支付的使用场景

  • 餐饮
  • 超市
  • 酒店
  • KTV

|热门关注