🇰🇷 한글 설명
Sync-in Server 2.4.0 미만 버전에서 발생하는 취약점으로, 인증 토큰 생성 시 TOTP 2FA 활성화 여부를 확인하지 않습니다. 공격자가 탈취한 계정 정보를 사용하면 2단계 인증을 우회하여 즉시 전체 액세스 권한을 획득할 수 있습니다.
💡 쉬운 설명
아이디와 비밀번호만 알면 2단계 인증(OTP)을 거치지 않고 바로 로그인이 가능한 보안 결함입니다. 해커가 계정 정보를 훔쳤을 때 추가 보안 절차를 무력화할 수 있어 위험합니다.
🇺🇸 원문 (English)
Sync-in Server is an open-source platform for file storage, sharing, collaboration, and syncing. Prior to version 2.4.0, `POST /api/auth/token` authenticates with username and password only, then calls `getTokens()`, which returns full access and refresh JWTs without checking whether the account has TOTP 2FA enabled. An attacker with stolen or phished credentials can bypass 2FA in a single request. The parallel login endpoint (`POST /api/auth/login`) correctly enforces 2FA by calling `setCookies(user, res, true)`, which gates on `user.twoFaEnabled`. Version 2.4.0 patches the issue.
📍 영향받는 시스템
Sync-in Server version < 2.4.0
⚔️ 공격 벡터
탈취된 자격 증명을 사용하여 POST /api/auth/token 엔드포인트로 직접 인증 요청을 보냄
🛡️ 대응 방법
Sync-in Server를 버전 2.4.0 이상으로 업데이트하십시오.
🔧 검증 코드
명령어 결과에 2.4.0 미만의 버전 번호가 출력되면 취약한 상태입니다.
curl -s http://<target-ip>/api/version | grep -E '2\.[0-3]\.'