ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

弱口令致240万勒索损失:攻击链路与防守实操

弱口令致240万勒索损失:攻击链路与防守实操 1. 事件复盘一个弱口令如何撬走240万1.1 事情到底是怎么发生的先说结论这不是什么高深莫测的APT攻击没有零日漏洞没有精心构造的内存马攻击者做的事情简单到让人难以置信——用一套常见的用户名密码组合直接登进了服务器。根据公开的案件信息这家企业的服务器对外暴露了远程管理端口管理员账号使用的是类似admin/admin123、root/123456这种级别的口令。攻击者通过扫描工具批量探测网段内开放远程端口的机器然后用弱口令字典逐个尝试命中之后直接登录植入勒索病毒加密核心业务数据最后留下勒索信索要赎金。企业为了尽快恢复业务前后支付的赎金加上停工损失、数据恢复费用合计约240万元。整个过程从扫描到加密完成可能不超过几个小时。攻击者甚至不需要懂多少技术现成的工具链已经把门槛降到了“会点鼠标就行”的程度。1.2 为什么偏偏是弱口令很多人有个误区觉得自己的服务器IP又没对外公布别人怎么找得到。实际情况是互联网上的扫描行为从来没有停止过。根据我自己的观察一台暴露了远程管理端口的云主机快的话上线几十分钟内就会迎来第一波扫描尝试。这些扫描器不针对特定目标它们像撒网一样遍历整个公网地址段专门找那些“门没锁”的机器。弱口令之所以成为最受欢迎的突破口原因很直接成本极低一份包含几万条常见口令的字典文件跑一遍可能只需要几分钟到几十分钟。成功率不低大量运维人员为了方便记忆习惯用生日、手机号、公司名拼音、admin、test、123456这类组合。隐蔽性好用合法账号密码登录在日志里看起来就是一次正常的远程登录很多安全设备不会报警。后果严重一旦拿到管理员权限整台服务器就是攻击者的囊中之物想干什么干什么。注意弱口令不等于“密码短”。Pssw0rd看起来挺复杂但它在几乎所有弱口令字典里都排在前列。真正的强口令是长度足够、无规律、且不复用的。1.3 谁需要认真看这篇内容如果你符合以下任何一种情况这篇内容值得你花时间读完手里管着几台甚至几十台服务器远程管理端口直接暴露在公网。团队里没有专职安全人员运维工作靠开发兼职。用过123456、admin、password、公司名年份 这类口令或者从来没改过默认密码。觉得“我们小公司没人盯上”的侥幸心理持有者。我见过太多中小团队在出事之前都觉得安全是“大厂才需要考虑的事”出事之后才发现攻击者根本不挑目标大小只挑防护薄弱的。2. 攻击链路拆解从扫描到勒索的完整路径2.1 第一步资产发现与端口扫描攻击者的第一步永远是找目标。这个过程高度自动化常用的手段包括全网段扫描用工具对公网IP段进行批量探测识别哪些IP的哪些端口是开放的。搜索引擎检索利用网络空间测绘平台直接搜索特定服务特征的资产比如“开放了远程桌面且操作系统版本较旧”的机器。泄露数据利用从历史数据泄露事件中获取IP、账号、密码等信息直接拿来尝试。这里要特别提一下445端口。这个端口对应的是文件共享服务历史上出过多次大规模蠕虫事件。很多企业内网为了文件共享方便把这个端口开得到处都是一旦有一台机器中招蠕虫就能通过445端口在内网横向扩散。热搜词里提到的“445端口弱口令”和“蠕虫chaindrop入侵1300个包”说的就是这类场景——攻击者通过弱口令进入一台机器后利用共享端口在内网快速蔓延。2.2 第二步口令爆破与登录尝试找到开放端口之后攻击者会尝试登录。常见的方式有三种攻击方式原理典型工具特征暴力破解穷举所有可能的字符组合产生大量登录失败日志容易被锁定策略拦截字典攻击用常见口令列表逐个尝试尝试次数少、成功率高日志中失败记录不多撞库用其他平台泄露的账号密码尝试利用密码复用习惯一次命中多个系统弱口令字典是字典攻击的核心。一份好的字典通常包含常见英文单词、数字序列、键盘模式如qwerty、公司名变体、年份月份组合、中文拼音等。热搜词里的“弱口令字典”指的就是这类经过整理的密码集合。我实测过用一份几万条的字典对一台开放远程管理端口的机器进行尝试如果口令确实很弱通常几分钟内就能命中。而且很多系统默认不限制登录失败次数攻击者可以放心大胆地跑。2.3 第三步权限维持与内网渗透登录成功只是开始。攻击者拿到一台机器的控制权后会做几件事创建后门账号新建一个看起来像正常用户的账号设置一个不容易被发现的密码方便下次再来。关闭或绕过安全软件尝试停掉杀毒软件、防火墙等防护程序。收集信息查看网络拓扑、其他服务器的连接配置、数据库密码等敏感信息。横向移动利用已控制的机器作为跳板尝试登录内网其他机器。这一步是最危险的。很多企业只关注边界防护内网机器之间信任度极高一台失守往往意味着整个内网沦陷。热搜词里的“自适应入侵检测”和“应急响应-linux入侵排查”正是针对这个阶段——如何在攻击者横向移动时发现异常以及事后如何排查入侵痕迹。2.4 第四步植入勒索病毒与索要赎金当攻击者控制了足够多的机器或者确认目标有足够价值后就会执行最终 payload——植入勒索病毒。勒索病毒做的事情很简单遍历磁盘文件用强加密算法加密。删除卷影副本防止受害者通过备份恢复。留下勒索信要求支付加密货币。有些还会窃取数据威胁不付款就公开。热搜词里的“勒索病毒”和“蠕虫chaindrop入侵1300个包”反映的就是这个阶段的破坏力。一旦加密完成没有离线备份的情况下恢复数据的可能性极低。3. 防守实操从今天开始堵住弱口令这个洞3.1 口令策略什么样的口令才算合格先说一个反直觉的事实强制用户每90天改一次密码往往适得其反。用户为了记住新密码会采用“Summer2024”“Summer2025”这种可预测的变体反而降低了安全性。目前业界更推荐的做法是长度优先口令至少12位推荐16位以上。长度比复杂度更重要。禁止常见口令维护一个黑名单禁止使用字典中的常见口令。不强制定期更换除非有泄露迹象否则不强制用户定期改密码。启用多因素认证这是最有效的手段。即使口令泄露攻击者没有第二因素也登不进去。对于服务器管理账号我的建议是直接禁用密码登录改用密钥认证。密钥的强度远高于任何人类能记住的口令而且不存在被字典攻击的风险。3.2 网络层防护把不该开的门关上很多服务器之所以被弱口令攻破根本原因是远程管理端口直接暴露在公网。正确的做法是限制访问来源只允许特定的管理IP访问远程管理端口其他一律拒绝。使用跳板机所有服务器不直接对外提供管理入口必须先登录跳板机再从跳板机内网访问。关闭不必要的端口445端口、135端口、139端口这些历史上高危的端口如果没有业务需求一律关闭。修改默认端口虽然不能从根本上解决问题但能减少被自动化扫描器命中的概率。提示修改默认端口只是“降低被扫到的概率”不是安全措施。真正的安全措施是限制访问来源和启用强认证。3.3 监控与告警让异常登录无处遁形即使做了上述防护也不能保证万无一失。监控和告警是最后一道防线。需要重点监控的行为包括非工作时间登录凌晨三点从陌生IP登录服务器大概率有问题。短时间内大量登录失败这是暴力破解或字典攻击的典型特征。新账号创建尤其是管理员权限的新账号。敏感文件访问数据库配置文件、密钥文件、备份文件被异常读取。异常外联服务器主动连接陌生IP可能是数据外传或C2通信。热搜词里的“自适应入侵检测”和“使用wireshark查看并分析靶机桌面下的capture.pcapng数据包文件”反映的就是这个层面的工作——通过流量分析和行为分析发现潜在的入侵行为。3.4 备份策略最后一道保险勒索病毒最怕的就是离线备份。如果数据有可靠的离线备份攻击者的勒索就失去了筹码。备份策略的核心原则是3-2-13份数据原始数据加两份备份。2种介质比如本地磁盘加磁带或云存储。1份离线至少一份备份与网络物理隔离 ransomware无法加密。我见过太多企业把备份放在同一台服务器上或者放在内网共享目录里结果勒索病毒一加密全没了。离线备份不是可选项是必选项。4. 入侵排查实录如果怀疑已经中招了怎么办4.1 第一时间应该做什么如果你怀疑服务器已经被入侵第一反应不应该是“赶紧杀毒”而是先隔离、再排查。具体步骤断开网络拔网线或禁用网卡防止攻击者继续操作或数据外传。不要关机关机可能导致内存中的证据丢失也可能触发某些恶意程序的破坏逻辑。记录现场截图当前屏幕、记录异常进程和网络连接。通知相关人员如果涉及客户数据可能需要依法通知。热搜词里的“第一章 应急响应-linux入侵排查”正是这个环节的参考——按照标准流程进行排查避免破坏证据。4.2 Linux服务器排查要点对于Linux服务器重点检查以下位置# 查看当前登录用户 who w # 查看最近登录记录 last lastb # 查看异常进程 ps aux --sort-%cpu | head -20 ps aux --sort-%mem | head -20 # 查看网络连接 netstat -tunlp ss -tunlp # 查看定时任务 crontab -l ls -la /etc/cron* # 查看启动项 ls -la /etc/init.d/ systemctl list-unit-files --typeservice # 查看SSH授权密钥 cat ~/.ssh/authorized_keys cat /root/.ssh/authorized_keys # 查看命令历史 history cat ~/.bash_history重点关注有没有不认识的进程、有没有异常的外联连接、有没有新增的定时任务或启动项、SSH授权密钥里有没有陌生的公钥。4.3 Windows服务器排查要点Windows服务器的排查重点查看登录日志事件查看器中的安全日志关注4624登录成功和4625登录失败事件。查看账号net user查看所有账号net localgroup administrators查看管理员组。查看计划任务schtasks /query /fo LIST /v。查看服务sc query查看所有服务关注陌生服务。查看启动项注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run。查看网络连接netstat -ano查看所有连接和对应进程。热搜词里的“注册表入侵”和“cmd装黑客的命令”反映的就是Windows环境下的排查和攻击手法。4.4 常见问题速查表现象可能原因排查方向CPU占用异常高挖矿木马查看高CPU进程检查是否有陌生可执行文件网络流量异常数据外传或C2通信查看外联IP分析流量特征文件被加密勒索病毒立即断网检查勒索信寻找解密可能性登录日志大量失败暴力破解检查来源IP启用账号锁定策略新增陌生账号后门账号检查账号创建时间确认是否为授权操作定时任务异常权限维持检查crontab和计划任务确认任务来源5. 长效防护把安全变成日常习惯5.1 资产梳理知道自己有什么很多企业出事之后才发现自己有多少台服务器、哪些端口对外开放、哪些系统还在用默认密码根本说不清楚。资产梳理是安全的基础工作维护一份服务器清单记录IP、用途、负责人、开放端口。定期扫描发现未登记的资产。对废弃不用的服务器及时下线。热搜词里的“服务器运维”和“开源的服务器维护软件”反映的就是这个层面的需求——用工具化的方式管理资产而不是靠Excel表格和记忆。5.2 补丁管理别让已知漏洞成为突破口弱口令是入口但攻击者进来之后往往会利用系统漏洞提权或横向移动。补丁管理的关键是建立补丁更新流程定期检查和安装安全更新。对于无法及时打补丁的系统采取补偿措施如网络隔离、虚拟补丁。关注安全公告及时了解新披露的漏洞。热搜词里的“ubuntu2204安装教程详细服务器”和“ubuntu服务器安装教程”说明很多人在搭建服务器时关注的是“怎么装”但装完之后“怎么保持安全”同样重要。5.3 安全培训人是最薄弱的环节技术手段再强也架不住有人把密码写在便签上贴在显示器边框。安全培训不需要搞得很复杂重点讲清楚几件事为什么不能用弱口令。为什么不能多个系统用同一个密码。收到可疑邮件或链接应该怎么做。发现异常情况应该向谁报告。我自己的经验是与其搞一次性的集中培训不如定期发一些简短的安全提醒结合实际发生的案例讲效果更好。5.4 应急演练出事的时候不慌安全事件发生的时候最怕的是手忙脚乱。提前做好应急演练明确每个人的职责和操作步骤谁负责隔离受影响系统。谁负责排查和取证。谁负责对外沟通。谁负责恢复业务。演练不需要很频繁半年一次就够但每次演练后要复盘看看哪里可以改进。热搜词里的“应急响应-linux入侵排查”和“自适应入侵检测”说明业界对应急响应能力的重视程度在提升。这不是大企业的专利中小团队同样需要。6. 个人经验那些踩过的坑和总结的教训6.1 不要相信“没人会盯上我”我见过太多人觉得自己的服务器“没什么价值”所以不设防。但攻击者的逻辑不是“这台机器值不值得攻击”而是“这台机器好不好攻击”。一台弱口令的服务器即使本身没有敏感数据也可能被用作跳板去攻击别人或者被用来挖矿。你的服务器一旦被控制产生的法律责任和声誉损失可能远超你的想象。6.2 默认密码是最大的陷阱很多设备和软件出厂时带有默认账号密码比如admin/admin、root/root、guest/guest。这些默认凭据在互联网上公开可查攻击者根本不需要猜。我强烈建议任何设备上线前第一件事就是修改默认密码。如果设备不支持修改默认密码那就要考虑是否真的需要把它暴露在网络上。6.3 日志不是用来占磁盘的很多运维人员嫌日志占空间把日志级别调到最低或者干脆关闭日志。等到出事的时候什么线索都没有。我的建议是关键日志至少保留90天登录日志、操作日志、安全日志要重点保留。磁盘空间不够就加硬盘日志的价值在出事那一刻才会体现出来。6.4 备份要验证不是做了就行我遇到过企业做了备份但从来没验证过恢复流程。真出事的时候才发现备份文件是损坏的或者恢复出来的数据不完整。备份的核心不是“备份”这个动作而是“能恢复”这个结果。定期做恢复演练确保备份真的可用。6.5 安全是持续的过程不是一次性的项目买了一套安全设备、做了一次渗透测试、改了一轮密码不代表就安全了。攻击手法在变系统在变人员在变安全策略也需要持续调整。把安全融入日常运维流程比搞一次运动式的安全整改有效得多。热搜词里的“服务器集群”“服务器虚拟化”“云服务器”说明现在的IT环境越来越复杂安全管理的难度也在增加。但无论环境怎么变弱口令这个最基础的问题始终存在。把最基础的事情做好就能挡住绝大多数攻击。
返回列表