
CVE-2026-52824 (GHSA-jr9p-4h4j-6c58)에 대한 PoC 익스플로잇 — Kimai 시간 추적의 기본 APP_SECRET 인증 우회로, 버전 ≤ 2.57.0에 영향
참고: 저장소 URL에는 오래된 CVE ID(CVE-2026-49865)가 포함되어 있습니다. 이 저장소에서 추적하는 정확하고 최신 CVE는 CVE-2026-52824 (GHSA-jr9p-4h4j-6c58)입니다.
Kimai 시간 추적(버전 ≤ 2.57.0)의 하드코딩된 기본 APP_SECRET 취약점에 대한 개념 증명 익스플로잇 툴킷입니다. 패치되지 않은 Docker 배포에서 위조된 KIMAI_REMEMBER 쿠키를 통한 인증 우회를 허용합니다.
CVE-2026-52824가 공개되었을 때 — 수천 명의 셀프 호스터가 사용하는 Docker 이미지에 하드코딩된 기본 시크릿이 존재하는 CVSS 9.1 치명적 취약점 — 기술 커뮤니티는 이를 인지하고 있었고, 수정 사항은 2.58.0에 포함되었습니다. 하지만 아무도 작동하는 개념 증명을 공개하지 않았습니다.
그래서 저는 권고문만으로 이를 재구성했습니다.
공격 체인: Kimai는 Docker와 .env.dist에 APP_SECRET=change_this_to_something_unique를 포함하여 배포합니다. v2.57.0에서 remember-me 쿠키의 signature_properties가 비어 있어 FieldsHash가 상수(SHA256(''))로 축소됩니다. 알려진 시크릿과 빈 해시를 결합하면 모든 사용자 ID — 관리자(id:1) 포함 — 에 대한 KIMAI_REMEMBER 쿠키를 위조할 수 있습니다.
이 저장소는 패치되지 않은 모든 인스턴스에서 권고문에서 관리자 세션으로 이어지는 완전한 작동 툴킷입니다.
| 필드 | 값 |
|---|---|
| CVE | CVE-2026-52824 |
| GHSA | GHSA-jr9p-4h4j-6c58 |
| CVSS | 9.1 (치명적) |
| CWE | CWE-1188 — 안전하지 않은 기본 리소스 초기화 |
| 영향받는 버전 | Kimai ≤ 2.57.0 (Docker 이미지 / .env.dist) |
| 수정 버전 | 2.58.0 |
| 공로 | Trent M. (AzureADTrent) |
Kimai는 Docker 이미지와 .env.dist에 하드코딩된 기본 APP_SECRET을 포함하여 배포됩니다:
APP_SECRET=change_this_to_something_unique
v2.57.0에서 remember-me 쿠키의 signature_properties가 비어 있어 FieldsHash가 상수(SHA256(''))가 됩니다. 알려진 시크릿과 결합하면 누구나 모든 사용자 — 관리자 포함 — 에 대한 유효한 KIMAI_REMEMBER 쿠키를 위조할 수 있습니다.
APP_SECRET → HMAC-SHA256 서명 계산KIMAI_REMEMBER 쿠키 위조| 측면 | v2.57.0 (취약) | v2.58.0 (패치됨) |
|---|---|---|
| Dockerfile | ENV APP_SECRET=change_this_to_something_unique | 하드코딩된 기본값 없음 |
| entrypoint.sh | 시크릿 생성 없음 | 첫 부팅 시 bin2hex(random_bytes(32)) 생성 |
| 저장소 | N/A | /opt/kimai/var/data/.appsecret에 유지 |
| 파일 | 용도 |
|---|---|
exploit.py | 단일 대상 익스플로잇 — 쿠키를 위조하고 인증 |
batch_pwn.py | 호스트 목록에 대한 멀티스레드 배치 익스플로잇 |
quick_scan.py | 2단계 스캐너 — 빠른 필터 후 심층 프로브 |
deep_probe.py | 여러 엔드포인트를 통한 버전 탐지 |
probe_batch.py | 파일에서 호스트를 프로브하여 버전 + 취약점 확인 |
shodan-scanner.py | Kimai 인스턴스 발견을 위한 Shodan 통합 |
git clone https://github.com/cyeezy08/Kimai-CVE-2026-49865-POC.git
cd Kimai-CVE-2026-49865-POC
pip install -r requirements.txt
python3 exploit.py https://kimai.example.com
python3 exploit.py https://kimai.example.com admin --dump
# From a file of URLs
python3 batch_pwn.py kimai_hosts.txt results.txt 30
export SHODAN_API_KEY="your_key"
python3 shodan-scanner.py --search --output kimai_hosts.txt
python3 deep_probe.py kimai_hosts.txt versioned_results.txt
python3 quick_scan.py hosts_file.txt
requests — HTTP 클라이언트shodan — Shodan API 클라이언트 (shodan-scanner.py 전용)이 툴킷은 승인된 보안 테스트 및 연구 전용으로 제공됩니다. 컴퓨터 시스템에 대한 무단 접근은 불법입니다. 테스트 전에 항상 적절한 승인을 받으십시오. 저자는 오용에 대해 어떠한 책임도 지지 않습니다.
MIT idk iam tired ok thx