🇰🇷 한글 설명
WWBN AVideo 26.0 이하 버전의 Scheduler 플러그인에서 세 개의 list.json.php 엔드포인트가 인증 검사 없이 노출되어 있습니다. 이로 인해 인증되지 않은 공격자가 예약 작업(내부 콜백 URL 및 파라미터 포함), 관리자가 작성한 이메일 메시지, 사용자-이메일 매핑 정보를 조회할 수 있습니다.
💡 쉬운 설명
관리자만 볼 수 있어야 할 예약 작업과 이메일 내용이 로그인 없이도 누구나 조회할 수 있는 취약점입니다. 공격자는 간단한 GET 요청만으로 민감한 정보를 빼낼 수 있습니다.
🇺🇸 원문 (English)
WWBN AVideo is an open source video platform. In versions up to and including 26.0, three `list.json.php` endpoints in the Scheduler plugin lack any authentication check, while every other endpoint in the same plugin directories (`add.json.php`, `delete.json.php`, `index.php`) requires `User::isAdmin()`. An unauthenticated attacker can retrieve all scheduled tasks (including internal callback URLs and parameters), admin-composed email messages, and user-to-email targeting mappings by sending simple GET requests. Commit 83390ab1fa8dca2de3f8fa76116a126428405431 contains a patch.
📍 영향받는 시스템
WWBN AVideo 26.0 이하 버전 (Scheduler 플러그인)
⚔️ 공격 벡터
인증되지 않은 공격자가 list.json.php 엔드포인트에 단순 GET 요청을 보내 예약 작업, 이메일 메시지, 사용자 매핑 정보를 조회
🛡️ 대응 방법
커밋 83390ab1fa8dca2de3f8fa76116a126428405431 패치를 적용하거나 AVideo를 패치된 최신 버전으로 업그레이드하고, list.json.php 엔드포인트에 User::isAdmin() 인증 검사를 추가
🔧 검증 코드
list.json.php 파일에 isAdmin 검사 구문이 출력되면 패치가 적용된 것이며, 아무 결과도 없으면 인증 검사가 없는 취약 상태이므로 즉시 패치가 필요합니다.
grep -n 'isAdmin' $(find / -path '*Scheduler*' -name 'list.json.php' 2>/dev/null) 2>/dev/null