当前位置: 首页 > news >正文

如何检测出定制服务器中预装的恶意软件?

企业面临着相当大的成本压力,他们需要不断思考,寻找各种办法来优化业务流程。

在数据中心领域,这意味着企业需要对硬件成本进行严格审核,而这促使很多网络企业在采购服务器硬件时选择不太传统的办法;即他们设计大部分硬件,再交由定制制造商生产服务器。

这则意味着企业需要对更多硬件安全承担责任,并更多地依靠定制制造商,而不是传统服务器供应商。而正因为这种结构所引起的问题,苹果公司似乎已经结束与Super Micro Computer公司的关系。

在本文中,我们将探讨苹果公司公开的定制服务器问题,以及企业如何避免类似的问题。

苹果公司面临的定制服务器问题

根据最新报告称,苹果公司已经将Super Micro服务器从其数据中心移除,因为苹果公司在其固件中发现预装恶意软件。目前还没有报告有关该恶意软件的详细信息,但可能是针对苹果的针对性攻击。该恶意软件可能由Super Micro或者Super Micro的供应商在设计或组装阶段植入到固件中。

Super Micro主要负责设计和组装服务器组件,例如网卡、存储接口和CPU。对于Super Micro操作系统在现代系统运行,它需要与BIOS及固件相连接,很多时候,BIOS和固件包含重要功能,这些工具可能来自与制造商签约的第三方。BIOS和固件可能需要更新,但仍然可能被感染。

除了定制服务器,很多服务器的组件类似于大众市场服务器,Super Micro使用类似固件和驱动程序来保持低成本。随着更多第三方参与,服务器攻击面变更大,而成品产品的硬件安全责任就越模糊。固件或BIOS可能在任何点受到攻击,如果在组装的下一步没有得到检查,受感染系统可能会影响整个企业网络。

虽然我们无法知道详细信息,但定制硬件的供应链安全问题都应该引起企业重视。这类似于Android手机上预装恶意软件,以及通过由制造商添加的硬件调试环境引入的预装膨胀软件或者后门程序。据报道,美国国家安全局就采取了类似的措施。

企业必须关注供应链安全,因为服务器或任何技术产品都可能在供应链的很多不同点受到攻击,并可能会到达最终用户。

企业如何确保定制硬件安全?

定制硬件有很多好处,例如可提供更安全的系统,而不需要安装不必要的功能或者在硬件中包含可信平台模块或加密协处理器等组件。而另一方面,这意味着企业需要负责检查定制服务器的安全性。

我们可从某些迹象判断固件在开箱使用时被感染:意外的网络连接、高于预期的CPU温度或者在系统中运行的恶意软件导致的意外电力使用。

企业可从单独的系统监控网络或电源情况,并可调查异常活动。如果发现某些异常,企业可替换不同硬件组件以识别恶意软件,但企业需要付出很大努力才可能识别所有潜在受感染组件。对于企业可能无法发现的特定恶意组件,唯一响应办法是完全移除该硬件,否则将无法确保系统安全。

当安装新服务器(或者连接任何东西到网络)时,应遵循基于企业风险承受能力的标准化流程。如果企业具有高风险承受能力,则该过程可能相对简单,只需要涉及机架摆放以及物理连接布线并安装所需操作系统的已知安全版本。

如果企业风险承受能力低,这个过程则会更详细,包括检查防拆包装以查看包装是否在制造商运输过程中被拆开、更新所有固件和BIOS、连接该硬件到不安全网络并监控所有网络活动,然后设置好以查看硬件中是否存在预装恶意软件。

美国国家标准与技术研究所(NIST)针对这些情况提供了具体文件,例如“针对服务器的BIOS保护指南”。还有很多其他标准可提供更多指导建议,例如NIST 800-53v4、互联网安全中心基准以及微软的服务器硬化基准。这些标准可适应企业要求以确保服务器的安全部署。

总结

成本和性能压力通常给企业带来新的安全挑战,他们需要确保部署适当的保护来保护定制服务器及其供应链。这些定制服务器可能比大众市场服务器更安全更便宜,但企业需要部署额外的措施来确保安全。

本文转自d1net(转载)

相关文章:

  • Unity中使用ulua的个人经验总结
  • Spring获取bean
  • erlang远程调用示例
  • AAC头部格式,RTP打包格式
  • JNDI学习总结(3)——Tomcat下使用C3P0配置JNDI数据源
  • 51 Nod 1057 N的阶乘【Java大数乱搞】
  • 矛与盾——扫描器盲打对主动安全防护的启示
  • Linux运行级别的配置文件
  • Swift Strings and Characters
  • Munin监控的安装与配置
  • [转载]PhotoShop性能优化
  • [转]公钥,私钥和数字签名这样最好理解
  • 利用国内的源安装 Python第三方库
  • .net反编译的九款神器
  • 「译」Node.js Streams 基础
  • 【vuex入门系列02】mutation接收单个参数和多个参数
  • 【面试系列】之二:关于js原型
  • 4个实用的微服务测试策略
  • css属性的继承、初识值、计算值、当前值、应用值
  • Docker 笔记(2):Dockerfile
  • ES6 ...操作符
  • IP路由与转发
  • Laravel深入学习6 - 应用体系结构:解耦事件处理器
  • Vue ES6 Jade Scss Webpack Gulp
  • vue.js框架原理浅析
  • 阿里云应用高可用服务公测发布
  • 纯 javascript 半自动式下滑一定高度,导航栏固定
  • 对象管理器(defineProperty)学习笔记
  • 翻译:Hystrix - How To Use
  • 使用 Xcode 的 Target 区分开发和生产环境
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 使用Swoole加速Laravel(正式环境中)
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 学习笔记DL002:AI、机器学习、表示学习、深度学习,第一次大衰退
  • python最赚钱的4个方向,你最心动的是哪个?
  • 第二十章:异步和文件I/O.(二十三)
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • #中国IT界的第一本漂流日记 传递IT正能量# 【分享得“IT漂友”勋章】
  • (03)光刻——半导体电路的绘制
  • (14)Hive调优——合并小文件
  • (done) ROC曲线 和 AUC值 分别是什么?
  • (HAL库版)freeRTOS移植STMF103
  • (vue)页面文件上传获取:action地址
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (转)socket Aio demo
  • (自用)learnOpenGL学习总结-高级OpenGL-抗锯齿
  • .NET 5种线程安全集合
  • .NET CORE 2.0发布后没有 VIEWS视图页面文件
  • .NET Core/Framework 创建委托以大幅度提高反射调用的性能
  • .NET 依赖注入和配置系统
  • .NET 中使用 Mutex 进行跨越进程边界的同步
  • .NET基础篇——反射的奥妙