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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
cve-2026-16219-croogo-lab | Kitploit
도구/GitHubGitHub/hellboy3110/cve-2026-16219-croogo-lab
Vulnerability ScannersExploitationWeb SecurityPapers & ResearchLearning & EducationLabs & Practice
GitHubhellboy3110/cve-2026-16219-croogo-lab

cve-2026-16219-croogo-lab

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-16219: Croogo FileManager 방어 연구소

Safety: loopback only PoC payload: text only

이 저장소는 Croogo CMS에서 CVE-2026-16219로 추적되는 경로 권한 부여(path-authorization) 결함을 문서화하고 안전하게 시연합니다. 본인 소유 시스템이나 명시적으로 평가를 승인받은 시스템을 테스트하는 방어자, 유지보수자, 학생, 연구자를 대상으로 합니다.

안전 경계: 포함된 HTTP proof of concept은 리터럴 루프백 주소 127.0.0.1만 허용하며, 고정된 비웹(non-web) 대상 디렉터리 /tmp/croogo-cve-2026-16219/에 생성된 .txt 마커만 작성하고, 리디렉션을 따르지 않으며, 명시적인 실습실 승인 없이는 실행을 거부합니다. 실행 가능한 페이로드나 원격 대상 모드는 포함되어 있지 않습니다.

상태 요약

스냅샷 날짜: 2026-07-20.

필드값
제품Croogo CMS, Admin File Manager
NVD 영향 버전4.0.0 ~ 4.0.7
취약점CWE-22, 경로 순회 / 부적절한 경로 제한
NVD CNA CVSS v3.16.3 중간(Medium)
권한인증된 FileManager 사용 가능 계정
사용자 상호작용인증 후 없음
공개 정보업스트림 이슈 및 공개 공격 정보 존재
패치 버전인용된 권고 스냅샷에서 식별되지 않음

현재 상태는 변경될 수 있습니다. 프로덕션 결정을 내리기 전에 docs/references.md의 1차 출처를 다시 확인하십시오.

무엇이 문제인가

Croogo는 WWW_ROOT/assets와 같은 좁은 편집 가능 루트를 구성합니다. 영향받는 헬퍼는 Configure::read()가 아닌 Configure::check()를 사용하여 FileManager.editablePaths를 얻습니다. check()는 키가 존재하는지 여부만 응답하며 구성된 경로 목록을 반환하지 않습니다. 그 결과인 Boolean이 경로 포함 검사에 사용되어 의도된 권한 부여 경계를 약화시킵니다.

File Manager의 생성 및 편집 작업은 해당 검사를 신뢰합니다. 업스트림 보고서에 설명된 조건에서, 인증된 FileManager 사용자는 PHP 서비스 계정이 선택한 위치에 쓸 수 있을 때 구성된 편집 가능 루트 밖에 쓸 수 있습니다.

데이터 흐름은 docs/technical-analysis.md에서, 강화 지침은 docs/remediation.md에서 확인하십시오.

저장소 내용

root@kitploit:~
.
|-- demo/                         독립형 로직 시연; Croogo 불필요
|-- docs/                         분석, 실습실 구성, 탐지, 수정, 참고 자료
|-- patches/                      설명용 심층 방어(defense-in-depth) 패치
|-- poc/                          엄격한 루프백, 텍스트 마커 HTTP PoC 및 정리 도구
|-- tests/                        가드레일(guardrail) 및 데모 테스트
|-- .github/workflows/validate.yml
|-- DISCLAIMER.md
|-- GITHUB_UPLOAD.md
|-- LICENSE
|-- Makefile
|-- SECURITY.md
`-- VERSION

가장 빠른 안전한 시연

독립형 모델은 취약한 CMS를 실행하거나 네트워크 요청을 보내지 않고도 버그를 설명합니다:

root@kitploit:~
php demo/path_authorization_demo.php

예상 결과:

root@kitploit:~
Buggy modeled check for outside path: ALLOWED
Safe boundary check for outside path: DENIED

이 데모는 운영 체제 임시 디렉터리에 임시 파일을 생성하고 종료 전에 제거합니다.

로컬 Croogo 실습실 PoC

1. 격리된 실습실 준비

docs/lab-setup.md를 따르십시오. 애플리케이션을 127.0.0.1에만 바인딩하고 Croogo와 동일한 VM 또는 컨테이너 내부에 고정 마커 디렉터리를 생성합니다:

root@kitploit:~
sudo install -d -o www-data -g www-data -m 0750 \
  /tmp/croogo-cve-2026-16219

일회용 실습실에서 www-data를 PHP-FPM 또는 웹 서버 계정으로 바꾸십시오.

2. 실습실 전용 인증 값 내보내기

본인 실습실의 합법적인 File Manager 요청에서 전체 Cookie 헤더와 CakePHP CSRF 토큰을 얻으십시오. 절대 커밋하지 마십시오.

root@kitploit:~
export BASE='http://127.0.0.1:8080'
export COOKIE='CAKEPHP=lab-session; csrfToken=lab-cookie-token'
export CSRF_TOKEN='lab-request-token'
export LAB_ACK='I_OWN_THIS_LAB'

3. 요청을 보내지 않고 안전장치 검증

root@kitploit:~
POC_VALIDATE_ONLY=1 ./poc/croogo_local_poc.sh

4. 텍스트 마커 요청 보내기

root@kitploit:~
./poc/croogo_local_poc.sh

스크립트는 생성된 파일 이름과 HTTP 상태를 출력합니다. HTTP 리디렉션 또는 성공 응답만으로는 증명이 되지 않습니다. Croogo VM 또는 컨테이너 내부에서 마커를 확인하십시오:

root@kitploit:~
sudo ./poc/verify_marker.sh

WWW_ROOT/assets 밖의 마커는 권한 부여 실패를 입증합니다. 마커는 일반 텍스트이며 웹에서 실행할 수 없습니다.

5. 정리

root@kitploit:~
sudo LAB_ACK='I_OWN_THIS_LAB' ./poc/cleanup_marker.sh
unset COOKIE CSRF_TOKEN LAB_ACK BASE

저장소 테스트

root@kitploit:~
make test

테스트는 셸 구문을 확인하고, 비루프백 및 URL 혼동 입력을 거부하며, 검증 중에 비밀이 출력되지 않는지 확인하고, 독립형 모델의 예상 결과를 검증합니다.

수정 우선순위

  1. 검증된 수정 사항이 배포될 때까지 Admin File Manager를 비활성화하거나 신뢰할 수 있는 최소 관리자 집합으로 제한하십시오.
  2. Configure::read()를 사용하도록 구성 검색을 수정하십시오.
  3. 허용된 루트와 후보 디렉터리를 모두 정규화한 다음 구분 기호를 인식하는 포함 검사를 수행하십시오.
  4. 제출된 파일 이름에서 경로 구분 기호, NUL 바이트, 안전하지 않은 이름을 거부하십시오.
  5. PHP가 애플리케이션 소스 및 실행 가능한 웹루트 위치에 쓰지 못하게 하십시오.
  6. docs/detection.md를 사용하여 로그와 쓰기 가능한 위치를 검토하십시오.

patches/illustrative-hardening.patch의 유틸리티 패치와 patches/create-file-hardening-example.md의 컨트롤러 지침은 검토 보조 자료이며 공식 공급업체 수정 사항이 아닙니다. 실제 배포된 브랜치에 대해 테스트하십시오.

윤리적 사용

이 저장소는 본인 소유이거나 명시적인 서면 승인을 받은 시스템에서만 사용하십시오. 공개 대상을 위한 PoC, 실행 가능한 페이로드, 지속성, 자격 증명 접근 또는 파괴적 행위에 PoC를 개조하지 마십시오. SECURITY.md 및 DISCLAIMER.md를 참조하십시오.

라이선스

MIT. LICENSE를 참조하십시오.

도구 다운로드