🇰🇷 한글 설명
MISP의 대시보드 템플릿 필터링 과정에서 권한 플래그를 처리할 때 발생하는 논리적 오류입니다. 특정 권한이 필요한 템플릿이 데이터베이스의 숫자형 변환 오류로 인해 권한이 없는 사용자에게도 노출될 수 있습니다.
💡 쉬운 설명
시스템이 권한을 확인할 때 글자를 숫자로 잘못 계산하여, 보안이 걸려 있어야 할 화면이 아무에게나 보이는 문제입니다. 관리자 전용 메뉴가 일반 사용자에게도 나타날 수 있는 보안 허점이 존재합니다.
🇺🇸 원문 (English)
Affected versions of MISP incorrectly filter dashboard templates that are restricted to a specific permission flag.
DashboardsController::listTemplates() allowed a template when either:
- its restrict_to_permission_flag matched one of the current user’s permission flags, or
- restrict_to_permission_flag equaled integer 0
However, restrict_to_permission_flag is a varchar. MySQL therefore performed numeric coercion when comparing the column against integer 0. Strings such as perm_site_admin convert numerically to zero, making expressions such as perm_site_admin = 0 evaluate true and causing the “unrestricted” branch to match permission-restricted templates as well.
Version affected: ≤2.5.45
📍 영향받는 시스템
MISP 버전 2.5.45 이하
⚔️ 공격 벡터
권한이 낮은 사용자가 대시보드 템플릿 목록을 요청하여 제한된 템플릿에 접근
🛡️ 대응 방법
MISP를 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 MISP 버전이 2.5.45 이하인지 확인하십시오.
misp-version 2>/dev/null || echo 'Check MISP version via your installation method'