🇰🇷 한글 설명
Kimai 오픈소스 시간 추적 애플리케이션 2.57.0 미만 버전에서 발생하는 취약점입니다. 특정 권한을 가진 사용자가 API를 통해 자신이 관리하지 않는 다른 사용자의 타임시트 상세 정보(설명, 시간 데이터, 요율 등)를 조회할 수 있는 권한 검증 미흡 문제가 존재합니다.
💡 쉬운 설명
팀장 권한을 가진 사람이 자신이 관리하지 않는 다른 팀원의 업무 기록과 급여 관련 정보를 몰래 볼 수 있는 보안 허점입니다. 시스템이 요청자가 해당 사용자의 팀장인지 제대로 확인하지 않아 발생합니다.
🇺🇸 원문 (English)
Kimai is an open-source time tracking application. Prior to 2.57.0, the GET /api/timesheets list endpoint accepts user and users[] target identifiers from a caller with view_other_timesheet but does not apply access_user or verify that a ROLE_TEAMLEAD requester leads a team containing each target user. TimesheetController::cgetAction() adds the resolved users directly to the query while project and customer filtering still permits records on unscoped projects or projects sharing ordinary team membership, allowing a teamlead to retrieve another user's descriptions, timing data, tags, rate, and internalRate even though GET /api/timesheets/{id} would deny access through TimesheetVoter. This issue is fixed in version 2.57.0.
📍 영향받는 시스템
Kimai version < 2.57.0
⚔️ 공격 벡터
GET /api/timesheets 엔드포인트에 다른 사용자의 식별자를 포함하여 요청을 보내는 방식
🛡️ 대응 방법
Kimai를 최신 버전인 2.57.0 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 정보가 2.57.0 미만이면 취약한 상태입니다.
composer show kimai/kimai | grep 'versions'
💻 영향받는 소프트웨어
IBM Security Verify Access