案例一:Dirty Cow(脏牛)漏洞攻击链 —— 针对服务器的本地权限提升

CVE编号: CVE-2016-5195
影响范围: 自 2007 年(Linux 内核 2.6.22)起,几乎所有版本的 Linux 内核,直至 2016 年 10 月修复。
漏洞类型: 内核竞争条件漏洞,导致可写的内存页被错误地映射到只读文件。

攻击场景与步骤

这通常不是一次独立的攻击,而是攻击者在已经获得一个低权限的 Linux 系统访问权(例如,通过 Web 应用漏洞获得了一个 www-data 用户的 shell)后,用于提权至 root 权限的关键一步。

  1. 初始入侵:攻击者首先通过其他方式获得一个低权限 shell。例如:

    • 利用 WordPress 插件漏洞上传 webshell。
    • 通过 SSH 弱口令猜解获得一个普通用户账号。
    • 利用一个远程服务(如 Samba, MySQL)的漏洞获得执行权限。
  2. 信息收集:攻击者登录后,运行 uname -a 等命令查看内核版本,发现其版本在受影响范围内。

  3. 漏洞利用:攻击者上传或在线编译针对“脏牛”漏洞的利用程序(Exploit)。该程序的工作原理是:

    • 利用 Linux 内核内存管理子系统中的“写时复制”和“内存映射”机制的竞争条件。
    • 通过多线程反复“竞态”操作,最终能够写入原本只读的内存映射页面,而这个页面可能属于一个重要的系统文件。
  4. 提权操作:标准的利用方式是修改 /etc/passwd 文件SUID 文件(如 /bin/bash)注入代码

    • 修改 /etc/passwd:在 root 用户行,将其密码哈希值替换为一个已知的哈希(例如,用 openssl 生成一个密码为 “pwned” 的哈希),或者添加一个具有 root 权限的新用户(UID=0)。修改成功后,攻击者即可直接用新密码切换到 root 用户。
    • SUID 提权:将 /usr/bin/passwd 这类 SUID 文件替换为恶意的、自带 root shell 的程序。
  5. 获取完全控制:利用成功后,攻击者获得 root 权限,可以:

    • 安装后门、Rootkit 以维持持久化访问。
    • 横向移动,攻击内网其他机器。
    • 窃取服务器上所有数据。
    • 将服务器变成僵尸网络节点。
为何此案例极具代表性?
  • 影响范围极广:潜伏近 10 年,影响全球数十亿台服务器、PC 和安卓设备。
  • 利用稳定可靠:利用代码公开后,攻击门槛极低,几乎“一击必中”。
  • 攻击闭环的“临门一脚”:完美展示了攻击链中“权限提升”这一关键环节,是无数服务器失陷的最后一根稻草。
  • 内核级漏洞的威力:证明了内核的一个微小逻辑缺陷,足以彻底瓦解整个系统的安全根基。

案例二:Mirai 僵尸网络 —— 针对物联网设备的大规模自动化攻击

时间: 2016年
目标: 全球基于 Linux 的物联网设备(网络摄像头、路由器、DVR 录像机等)。
漏洞利用: 并非单一高危漏洞,而是利用设备出厂默认/弱口令进行暴力破解。

攻击场景与步骤

这是一个完全自动化、规模化的攻击模式,目标是组建一个庞大的“僵尸网络”以发动 DDoS 攻击。

  1. 扫描与发现:Mirai 的控制服务器(C&C)持续向互联网随机 IP 地址段的特定端口(如 Telnet: 23, SSH: 22)发送探测包。

  2. 暴力破解登录:一旦发现开放端口,僵尸程序会使用一个内置的62组用户名密码字典进行登录尝试。这些密码都是设备出厂时的默认或通用弱密码,例如:

    • root:admin
    • admin:admin
    • support:support
    • root:xc3511 (某特定摄像头品牌默认密码)
  3. 感染与植入:一旦登录成功,僵尸程序会执行一系列命令:

    • 检测设备架构(ARM, MIPS等),下载对应的恶意二进制文件。
    • 杀死设备上可能存在的其他恶意软件进程(Mirai 会“独占”设备)。
    • 将自身写入设备启动项,实现持久化。
    • 隐藏进程,并关闭 Telnet/SSH 端口以防被其他攻击者或研究人员登录。
  4. 组建僵尸网络:被感染的设备(称为“肉鸡”或“僵尸”)会定期向 C&C 服务器报告,接收指令。

  5. 发动攻击:攻击者通过 C&C 下达指令,指挥数十万甚至百万台被控设备,同时对单一目标发动多种类型的 DDoS 攻击,例如:

    • TCP FloodUDP Flood:耗尽目标网络带宽。
    • HTTP Flood:模拟大量正常 HTTP 请求,耗尽目标 Web 服务器资源。
    • DNS 水刑攻击:利用开放的 DNS 解析器放大攻击流量。
为何此案例极具代表性?
  • 攻击 IoT 的典范:精准抓住了 Linux 嵌入式设备安全“原罪”:1) 从不更新;2) 弱/默认密码;3) 服务暴露于公网
  • 破坏力惊人:2016年,Mirai 僵尸网络发动了当时历史上最大规模的 DDoS 攻击:
    • 攻击了网络安全记者布莱恩·克雷布斯的网站,峰值流量达 620 Gbps
    • 攻击了法国主机商 OVH,峰值流量达 1 Tbps
    • 攻击了美国 DynDNS 公司,导致大半个美国互联网(Twitter, GitHub, Netflix, Reddit 等)瘫痪数小时。
  • 商业模式成熟:Mirai 的源代码被公开后,催生了一个“DDoS 即服务”的黑产产业链,任何人均可租用类似的僵尸网络进行攻击。
  • 暴露了供应链安全瘫痪:设备制造商、销售商、消费者和运营商没有一方对设备的安全生命周期负责,造成了全球性的、持续至今的网络安全威胁。

总结与对比

特性 Dirty Cow 攻击链 Mirai 僵尸网络
目标 单台高价值服务器(提权、控制) 海量低安全性物联网设备(组建军队)
入口 Web漏洞、弱口令等(获得低权限) Telnet/SSH默认弱口令(直接获得root)
核心漏洞 内核级代码缺陷(CVE) 供应链与配置缺陷(弱口令、不更新)
攻击性质 针对性、后渗透阶段 自动化、大规模扫描感染
终极目的 数据窃取、长期潜伏、横向移动 发动DDoS攻击、敲诈勒索、破坏服务
反映的深层问题 1. 开源内核代码质量与审计挑战
2. 补丁管理的重要性
1. IoT设备安全生命周期缺失
2. 默认不安全的行业生态
3. 互联网基础架构的脆弱性

一方面,攻击者会利用复杂的代码漏洞攻破坚固的服务器堡垒;另一方面,他们更会利用简单的生态和管理漏洞,将数以百万计的边缘设备转化为攻击武器。这要求防御者既要关注每一处代码细节,也要有全局的供应链和资产管理视野。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐