我有一个开发团队,他们正在编写内部网和外部网站。
该网站由 DMZ 内的两台服务器和一个负载均衡器组成。
DMZ 有一个向 LAN(http/80)开放的针孔,用于从 LAN 公开 API 服务。
例如 WAN -> haproxy -> web01 (+web02) -> 针孔 -> LAN 服务 (haproxy -> lan01/lan02)
问题是,开发人员已经全部局域网上的服务——包括那些只运行网站的服务。例如,此时的 web01/02 只是充当一个聚合器。
更糟糕的是,LAN 服务已与我们的 AD 基础设施绑定在一起 - 并且内部 API 暴露给 DMZ - 因为内部/外部 API 都在端口 80 上运行。
开发人员不想将他们的 API 分成“内部”和“外部”视图,并且这些 API 目前没有身份验证/授权。
由于使用本地文件存储,一些服务也只能在“lan01”上运行,而不能在“lan02”上运行 - 即没有高可用性。
现在,整个内部公司架构 (DNS、AD) 都依赖于外部网站的运行。
没有安全实践的概念,即某些 LAN API 以“系统”级权限运行,并且无法控制开发人员所针对的系统(因为他们具有域管理员凭据)
我曾建议将大多数网站服务移回 DMZ 并锁定这些服务,但却被告知开发人员无法区分什么是“LAN”应用程序和什么是互联网应用程序。
有人对如何处理这个问题有什么建议吗?这看起来像是一场即将发生的安全噩梦。
答案1
聘请一些新的开发人员,因为他们的工作似乎从上到下都很糟糕。
他们似乎甚至忽视了最基本的 OWASP 建议。你没有提到公司的规模和你的角色,但开发人员的工作无法通过安全审查。
干杯