什么是勒索攻击?
勒索软件是当前主要网络攻击威胁,一般通过木马病毒的形式传播,将自身掩盖为看似无害的文件,利用钓鱼邮件或软件漏洞等方式进行攻击,攻击后将受害者主机硬盘上的文件进行加密,以此来达到勒索的目的。所有的勒索软件都会要求受害者缴纳赎金以取回对电脑的控制权,或是取回受害者根本无从自行获取的解密密钥以便解密文件,对全球的政府、金融、医疗等各行业都造成了严重损失。
云上环境被勒索的原因
- 高危端口暴露:系统暴露高危端口,攻击事件涉及端口暴露最多的如:3389、445、135、139、3306、5800、5900等。
- 弱密码:系统或应用密码复杂度低,未定期更新密码,使用统一的密码等,能够被攻击者成功爆破。
- 高危漏洞未修复:系统或者第三方软件存在漏洞,勒索软件利用已知的漏洞实施攻击。
- 钓鱼邮件:发送钓鱼邮件,将恶意脚本/程序掩盖为普通的文件,欺骗受害者下载、运行。
如何做好基础暴露面管理
设置复杂密码
- 长度为8~26个字符;包含大小写字母、数字及符号3种;不能包含与账号名相关的信;不能使用连续3个及以上键位排序字符,如123,Qwe;不能使用常用的具有特殊含义的字符串等
关闭不必要的端口
- 精细化安全组配置,源地址按需开放,关闭不必要的端口和网络访问,减少暴露面。常见高危风险端口如下
Linux:
- 22 (SSH):SSH服务是远程管理的常用方式,常受到暴力破解和其他攻击。
- 23 (Telnet):Telnet未加密的协议,容易被窃听和攻击,因此存在安全风险。
- 21 (FTP):FTP协议传输数据不加密,易受到中间人攻击和密码破解。
- 80 (HTTP):未加密的网页服务,容易受到各种攻击(如SQL注入、XSS等)。
- 443 (HTTPS):虽然HTTPS在一定程度上更安全,但如果SSL证书不正确或存在漏洞,仍然可能被攻击。
- 3306 (MySQL):MySQL数据库端口,如果没有强密码或未做防护,容易被攻击。
- 5432 (PostgreSQL):与MySQL类似,PostgreSQL数据库端口也容易受到未经授权的访问。
- 6379 (Redis):默认情况下,Redis没有身份验证,容易被外部攻击。
- 5900 (VNC):VNC远程桌面连接,通常安全性较低,容易受到攻击。
- 3389 (RDP):Windows远程桌面协议,也可能在Linux上通过类似的服务使用,常见于暴力破解攻击
Windows:
- 135 (MS RPC):Microsoft远程过程调用服务(RPC),常用于各种服务的远程调用,但也曾是许多安全漏洞的目标。
- 445 (SMB):Server Message Block(SMB)协议,用于文件共享和网络打印服务。若未配置妥当,容易受到WannaCry等勒索病毒的攻击。
- 3389 (RDP):远程桌面协议,常用于远程访问计算机,但如果配置不当或密码不安全,容易遭受暴力破解和恶意攻击。
- 21 (FTP):FTP服务,用于文件传输,但传输的数据不加密,可能会被嗅探或中间人攻击。
- 23 (Telnet):Telnet协议同样用于远程管理,但不加密数据传输,因此存在安全风险。
- 53 (DNS):域名系统服务,虽然主要用于域名解析,但也可能受到DNS缓存投毒等攻击。
- 80 (HTTP):未加密的网页服务,容易受到各种攻击,如SQL注入、跨站脚本(XSS)等。
- 443 (HTTPS):尽管HTTPS使用了加密,但如果配置不当或存在证书问题,仍然可能被攻击。
关闭不必要的网络访问:
- 通过安全组设置可信的IP访问,原则上避免所有IP公网可达的访问策略。
总结
通过基础的暴露面梳理和整改,能够有效避免云上环境被扫描爆破,缓解被入侵勒索的风险。但是应对复杂的网络环境,如果要更好的保护系统的健壮性,还需要配合云上的安全服务,实现网络攻击的自动化检测和响应。