🇰🇷 한글 설명
Frappe Framework ERPNext 13.4.0에는 RestrictedPython의 샌드박스 탈출 취약점이 존재합니다. System Manager 권한을 가진 인증된 사용자가 프레임 내부 검사(introspection)를 악용해 임의 코드를 실행할 수 있습니다. 이를 통해 시스템 명령까지 실행될 수 있습니다.
💡 쉬운 설명
ERPNext에서 서버 스크립트를 실행할 수 있는 권한을 가진 사용자가 보안 제한을 우회할 수 있습니다. 이 우회를 통해 서버에서 임의의 시스템 명령을 실행할 수 있게 됩니다.
🇺🇸 원문 (English)
Frappe Framework ERPNext 13.4.0 contains a sandbox escape vulnerability in RestrictedPython that allows authenticated users with System Manager role to execute arbitrary code by exploiting frame introspection. Attackers can create a server script via the /app/server-script endpoint and access the gi_frame attribute to traverse the call stack and invoke os.popen to execute system commands.
📍 영향받는 시스템
Frappe Framework ERPNext 13.4.0
⚔️ 공격 벡터
System Manager 권한의 인증된 사용자가 /app/server-script 엔드포인트로 서버 스크립트를 생성하고, gi_frame 속성으로 호출 스택을 탐색해 os.popen을 호출하여 시스템 명령을 실행
🛡️ 대응 방법
ERPNext를 13.4.0 이후의 패치된 버전으로 업그레이드하고, 서버 스크립트 생성 권한을 최소한의 사용자에게만 부여
🔧 검증 코드
출력된 erpnext 버전이 13.4.0이면 취약하므로 패치된 버전으로 업그레이드가 필요하며, 버전이 13.4.0보다 높으면 취약점 영향을 받지 않습니다.
bench version 2>/dev/null | grep -i erpnext