在生产 API 上大摇大摆

信息安全 网络服务 api
2021-09-06 19:46:57

将Swagger页面留在暴露敏感数据(尽管使用 OAuth 保护)的生产 API 上可能会出现哪些安全问题?是否有网络爬虫希望以邪恶的手段收集 Open API 定义文件(即 swagger)?

1个回答

公开记录您的 API 可以让攻击者在识别滥用 API 的可能方式方面占得先机。

如果您希望托管一个功能性的Swagger UI页面,请确保您的 API 的跨域资源共享策略不会过于宽松,并且您有跨站点请求伪造保护。

同样,注意保护 Swagger UI 页面免受框架劫持,例如通过X-Frame-Options标题。

除此之外,请考虑以下其他与业务相关的风险:

  • 您的 API 文档反映了您的组织,因此不应包含诸如亵渎之类的内容
  • 您的 API 可能会准确揭示其处理的敏感数据类型
    • 社会安全号码和其他 PII 将成为攻击者的一大吸引力
  • 您的 API 可能会揭示您组织的业务联系,无论好坏
    • 例如,如果您的 API 文档包含名为“exclude_data_we_stole_from_the_fbi”的查询参数,您可能会因为窃取他们的数据而引起 FBI 的注意
  • API 的更新频率可能会向竞争对手表明您的开发或维护速度