VED测试镜像发布:Linux数字军火漏洞利用方法和抵挡 July 16, 2023 | 4 最小读取

VED测试镜像发布:Linux数字军火漏洞利用方法和抵挡

声明

VED (Vault Exploit Defense)测试镜像只包含VED内核模块,不包含HardenedVault的任何安全基线、访问控制规则以及场景化加固方案内容。此镜像仅供测试使用,如直接用于生产环境造成的任何风险,HardenedVault概不负责。

背景

HardenedVault在之前发布的VED技术白皮书后,收到了一些反馈。为了进一步沟通和解答,HardenedVault决定发布一份关于漏洞利用方法的测试镜像。

什么是数字军火行业?

数字军火涉及利用计算机技术和网络渗透技术来制造和销售用于攻击和侵入计算机、网络和软件等信息系统的工具、程序和服务。这些工具和服务也包括漏洞利用工具、远控软件、木马病毒、网络钓鱼和黑客攻击技术等,目标是窃取敏感信息、控制或破坏目标系统。数字军火的使用者可能包括政府军事和情报机构、犯罪团伙和黑客组织等。0-day漏洞利用是数字军火行业的重要部分,您可以参考Maor Shwartz的文章以获取更多关于0-day行业数字军火行业的趋势的信息。像Drebin这样的团队,他们在全球各地的数字军火领域都有同行。

alter-text

漏洞利用阶段

在我们之前的文章中,我们提到漏洞利用攻击过程的检测可以在三个阶段进行。越早的阶段检测效率会更高,但遗憾的是,除了少数的防御机制(如PaX KERNSEAL)可以在pre-exploitation stage阶段进行检测外,大部分防御机制都在Exploitation stage和Post-exploitation stage阶段工作。VED能在特定的漏洞利用方法中提早实施检测和阻断,但大部分情况下,它仍然在通常理解的漏洞利用阶段工作。

alter-text

漏洞利用方法

Vault Exploits Defense (VED)是一个Linux内核运行时威胁检测与防御方案,它能检测并阻止已知(Nday)和未知(0day)的 Linux 内核漏洞利用。这些漏洞利用通常具有极高的杀伤力,同时又极其难以检测。值得注意的是,VED是针对漏洞利用方法进行检测和防护的,而非对特定漏洞进行硬编码式的防御。

漏洞利用测试镜像

HardenedVault使用CVE-2021-22555进行测试是因为其公开的PoC/exploit中同时涵盖了主流和非主流的攻击方法,具体来说,基于CVE-2021-22555编写了3种不同利用方法的漏洞利用,VED的防御目标并不是具体的某个漏洞,而是漏洞利用方法(攻击模式)。这个测试镜像中的针对CVE-2021-22555的三个漏洞利用使用以下漏洞利用方法实现提权和容器逃逸:

  • 绕过SMAP
  • 绕过KASLR/SMEP
  • 信息泄漏
  • 堆喷
  • 内核JOP/ROP
  • Pipe primitive
  • 绕过内核模块安全机制

测试镜像信息:

  • QEMU
  • Ubuntu 20.04 for x86_64
  • 用户名:ved
  • 密码:hardening
镜像下载 过期日期
Vault-Range镜像1 Aug 13 2023
Vault-Range镜像2 Aug 15 2023

btw: 下载链接过期请联系 contact(at)hardenedvault.net

下载镜像解压后,启动镜像:

# qemu-system-x86_64 -cpu host -smp cores=4 -m 8192 -hda ved-ubuntu2004.img --enable-kvm -net nic -net user,hostfwd=tcp::7788-:22

虚拟机镜像启动后也可以SSH方式登录:

# ssh -p 7788 [email protected]

这里面基于CVE-2021-22555有三个不同的漏洞利用,加载VED:

# cd exploit_methods_tests/
# sudo insmod ved-5.8.0-48-generic.ko

之后执行

# ./build.sh
# ls
build.sh                 exploit.c      original_exploit  pipeprimitive.c  ved-5.8.0-48-generic.ko
bypass_tetragon_exploit  exploit_mod.c  pipe_exploit      readme.md        writeup.md

后得到三个漏洞利用:original_exploit, bypass_tetragon_exploit, pipe_exploit。基本测试流程:

1)不加载VED,执行其中一个 ,如果提权成功建议重启后进行其他测试。

2)加载VED,执行任意一个漏洞利用,阻断成功后如果要进行其他测试建议重启。

这三个漏洞利用使用的方法分别对应如下:

original_exploit:

https://google.github.io/security-research/pocs/linux/cve-2021-22555/writeup.html

bypass_tetragon_exploit:

https://hardenedvault.net/zh-cn/blog/2022-05-25-vspp/

https://grsecurity.net/tetragone_a_lesson_in_security_fundamentals

pipe_exploit:

https://github.com/veritas501/pipe-primitive

alter-text

VED实现

VED基于内核模块的实现有三个版本,1)开源版(免费但不稳定,没有高级防护特性)2)VED-LTS(基于开源版本的稳定版,AWS和阿里云都是这个版本) 3)商业版(带高级防护特性)

如果你计划在生产环境中使用VED,可以尝试公有云版本,比如AWS的安全加固镜像(集成了基础长期维护版本的VED):

https://aws.amazon.com/marketplace/pp/prodview-4nur74fayxeis

对VED高级版本有兴趣并且计划私有化部署的可以直接联系:contact(at)hardenedvault.net