勒索病毒入侵服务器或数据库后,会对您的业务数据进行加密勒索,从而导致您的业务中断、数据泄露、数据丢失等严重问题。本文介绍导致勒索病毒入侵的不安全因素,并提供相应防护方案。
背景信息
您的业务系统存在以下问题时,会被攻击者利用:
- 关键账号存在弱口令或无认证机制
- 服务器关键账号(root、administrator)密码简单或无密码。
- 数据库(Redis、MongoDB、MySQL、MS SQL Server)等重要业务使用弱密码或无密码。
- 无访问控制策略,业务直接暴露在互联网上
可以通过互联网直接访问RDP、SSH、Redis、MongoDB、MySQL等高危服务。
- 服务器操作系统和软件存在高危漏洞
恶意攻击者可以利用服务器操作系统和应用服务软件存在的高危漏洞,上传加密勒索软件或执行勒索操作,实现远程攻击。
为了降低勒索病毒入侵业务系统的可能性,建议您了解并部署以下安全防护方案。
按重要等级对资产分类
对您的资产(服务器、应用代码、数据等)按照重要级别进行分类,针对敏感数据与日常数据制定不同的防护策略。
- 确保区域划分,通过云防火墙或安全组等措施进行微隔离,并限制对容易受到威胁的区域的访问行为。
- 将敏感业务系统和数据部署在不同的位置。
- 评估业务是否要对互联网用户开放,对无需对外开放的业务仅提供内部访问通道。
数据备份与恢复
可靠的数据备份可以最小化勒索软件带来的损失,同时您需要对这些备份数据做安全防护,避免数据感染和损坏。
- 建议您至少备份两份数据:本地备份和异地备份。
- 建议您采用多种不同的备份方式,以确保在发生勒索事件后,尽可能地挽回损失。
您可以使用以下方法:
- 使用ECS快照功能备份数据。具体操作,请参见创建一个云盘快照。
- RDS提供的数据备份功能,具体操作,请参见备份SQL Server数据。
- 使用OSS存储服务备份重要数据文件。具体操作,请参见备份存储空间。
- 自行制定数据备份策略或方案,例如自建数据库MySQL备份。
关键业务账号安全策略
- 阿里云账号(主账号)
阿里云为您提供账号登录多因素验证机制(MFA)、密码安全策略和审计功能,您可以登录RAM控制台方便地启用并设置以上功能,确保云服务账号安全。
针对组织内部多角色场景,企业需要使用访问控制服务的身份管理功能为不同角色合理分配账号并授权,以防止在运维管理活动中出现意外操作带来安全风险。
- 高权限账号
当您使用了云服务器ECS,并在其中部署了关键业务(例如据库服务、文件服务、缓存等与数据强相关的核心服务),您需要妥善设置并保管相应账号和密码。
- 避免在互联网上公开这些高危服务。
- 启用认证鉴权功能。
- 禁止使用root账号直接登录ECS。
- 如果使用的是Windows系统,建议您修改默认账号administrator的名称。
- 为所有服务配置强密码。强密码要求长度至少为8位字符,包含大小写字母、数字、特殊符号,不包含用户名、真实姓名、公司名称和完整的单词。
推荐使用:云安全中心、运维安全中心(堡垒机)
强化网络访问控制
很多企业的网络安全架构缺少业务分区分段,如果被黑客入侵,往往会对全局业务产生影响。这种情况下,通过有效的安全区域划分、访问控制和准入机制可以减小攻击渗透范围,减缓攻击渗透速度,阻止不必要的人员访问业务环境。
例如,您可以设置SSH、RDP等管理协议,并对FTP、Redis、MongoDB、Memcached、MySQL、MS SQL Server、Oracle等数据相关服务的连接源IP进行访问控制,实现访问范围最小化,仅允许受信任的IP地址访问,并实时分析和审计出方向网络行为。
推荐您使用安全的VPC网络。
- 通过VPC和安全组,划分不同安全等级的业务区域,让不同的业务处在不同的网络隔离空间。
- 配置入方向、出方向安全组防火墙策略,同时对入方向和出方向的流量进行过滤。具体说明如下:
- 常用的数据库服务无需通过互联网直接管理或访问,可以通过配置入方向的访问控制策略防止数据库服务暴露在互联网上,减少被黑客入侵的风险。
- 禁止通过互联网直接使用SSH和RDP等方式远程登录。进行服务器日常管理时,必须使用加密通道和强口令进行登录连接和身份认证,建议使用运维安全中心(堡垒机)统一管理登录连接和审计登录行为。
- 配置严格的内网访问控制策略,例如:在内网入方向配置仅允许内网某IP访问指定的数据库服务器。
推荐使用:云防火墙
搭建具有容灾能力的基础业务架构
在云环境下,您可以使用SLB集群搭建高可用架构。当某一个节点发生紧急问题,高可用架构可以无缝切换至备用节点,既能防止业务中断,也能防止数据丢失。
在资源允许的条件下,企业或组织可以搭建同城或异地容灾备份系统,当主系统出现发生勒索事件后,可以快速切换到备份系统,从而保证业务的连续性。
推荐使用:阿里云负载均衡、云数据库RDS等高性能服务组合而成的容灾架构。更多信息,请参见阿里云负载均衡(SLB)、阿里云云数据库RDS。
定期扫描外部端口
端口扫描可以检验企业的弱点暴露情况。如果企业存在一些服务与互联网连接的服务,需要确定哪些业务是必须要发布到互联网上,哪些仅需要内部访问。公开到互联网的服务数量越少,攻击者的攻击范围就越窄,从而遭受安全风险的可能性就越低。
推荐使用:安全管家服务
定期进行安全测试
企业IT管理人员需要定期对业务软件进行安全漏洞探测,如果确定存在暴露在互联网的服务,应使用漏洞扫描工具对其进行扫描,尽快修复扫描发现的漏洞。同时,应关注软件厂商发布的安全漏洞信息和补丁信息,及时做好漏洞管理和修复工作。
基础安全运维
- 制定并实施IT软件安全配置,对操作系统(Windows、Linux)和软件(FTP、Apache、Nginx、Tomcat、Mysql等服务)进行初始化安全加固,并定期核查其有效性。
- 为Windows操作系统云服务器安装防病毒软件,并定期更新病毒库。
- 定期更新安全补丁。
- 修改默认账号administrator的名称,为登录账号配置强口令。
- 开启日志记录功能,集中管理日志,并进行审计分析。
- 合理地分配账号并授权,开启审计功能,例如:为服务器、RDS数据库设立不同权限账号并启用审计功能;如果有条件,可以实施类似堡垒机、VPN等更严格的访问策略。
- 实施强密码策略,并定期更新维护,对于所有操作行为严格记录并审计。
- 对所有业务关键点进行实时监控,当发现异常时,立即介入处理。
推荐使用:云安全中心、运维安全中心(堡垒机)、操作审计
应用系统代码安全
代码安全直接影响到业务安全。代码层的安全需要程序员从开始就将安全架构设计纳入到整体软件工程内,按照标准的软件开发流程,在每个环节内关联安全因素。
企业需要重点关注开发人员或软件服务提供商的安全编码和安全测试结果,对开发完成的业务代码需进行代码审计评估和上线后的黑盒测试,也可以不定期地进行黑盒渗透测试。
建立全局的外部威胁和情报感知能力
安全是动态对抗的过程,在安全事件发生之前,要时刻了解和识别外部不同类型的风险。防范措施必不可少,预警和响应的时间差也同样关键。实现快速精准的预警能力需要深入了解外部威胁,建立有效的监控和感知体系是实现安全管控措施必不可少的环节。
您可以免费开通阿里云云安全中心服务,查看实时的外部攻击行为和内部漏洞(弱点)情况。
推荐使用:云安全中心
建立安全事件应急响应流程和预案
在安全攻防的动态过程中,建议您为突发的安全事件准备好应急策略。在安全事件发生后,使用标准化的应急响应流程快速响应,标准范的事件处置流程来降低安全事件带来的损失。
推荐使用:安全管家服务
为企业员工提供网络安全教育和意识培训
- 制定员工网络安全培训课程,日常进行网络安全教育宣传,让员工了解公司的安全政策。提高员工的网络威胁意识,使员工可以识别常见的网络钓鱼和网络安全事件,并知晓遇到可疑活动时的处理方法。
- 定期进行员工信息安全培训,例如,组织针对鱼叉式网络钓鱼的模拟攻击,避免员工访问恶意网站或打开恶意附件。
- 提供一种便捷方式来报告钓鱼电子邮件、可疑网络安全事件的渠道,以方便公司员工快速了解当前网络安全事件趋势,并快速响应和处理安全事件。
推荐使用:安全管家服务