🇰🇷 한글 설명
Frappe 프레임워크 16.31.0 및 이전 버전에서 frappe.client.set_value 함수가 필드명을 검증하는 과정 중 타입 혼동(Type Confusion) 취약점이 존재합니다. 인증된 공격자는 이를 악용하여 보호된 표준 필드나 자식 테이블 필드에 값을 임의로 할당하는 대량 할당(Mass-assignment) 공격을 수행할 수 있습니다.
💡 쉬운 설명
로그인한 사용자가 시스템의 중요한 설정값을 허가 없이 마음대로 수정할 수 있는 보안 약점입니다. 데이터의 규칙을 확인하기 전에 잘못된 형식의 데이터를 처리하면서 발생하는 문제입니다.
🇺🇸 원문 (English)
Frappe is a full-stack web application framework. In version 16.31.0 and earlier, frappe.client.set_value in frappe/client.py checks a dictionary supplied through the fieldname parameter against forbidden standard and child-table fields before parsing the dictionary into individual field names. An authenticated caller can exploit this type confusion to mass-assign protected fields through the client endpoint. No released fixed version is available as of this review.
📍 영향받는 시스템
Frappe Framework version 16.31.0 and earlier
⚔️ 공격 벡터
인증된 사용자가 클라이언트 엔드포인트를 통해 조작된 딕셔너리 데이터를 전송하여 보호된 필드에 접근
🛡️ 대응 방법
현재 공식 패치가 발표되지 않았으므로, 프레임워크 업데이트를 모니터링하고 접근 제어 정책을 강화해야 합니다.
🔧 검증 코드
출력된 버전이 16.31.0 이하인지 확인하여 취약 여부를 판단합니다.
pip show frappe | grep Version