🇰🇷 한글 설명
superduper 프로젝트 v0.10.0 이하에서 query.py의 _parse_op_part() 함수가 사용자 입력을 unsafe eval()로 평가하여 원격 코드 실행이 가능합니다. 공격자는 os 모듈 등을 임포트하고 임의의 시스템 명령어를 실행하여 서버 전체를 손상시킬 수 있습니다.
💡 쉬운 설명
superduper의 이전 버전에서는 사용자가 보낸 텍스트를 그대로 프로그램 코드로 실행시키는 문제가 있습니다. 악의적인 사용자가 특수한 텍스트를 보내면 서버에서 원하는 어떤 명령이든 실행시킬 수 있어서 매우 위험합니다.
🇺🇸 원문 (English)
The superduper project thru v0.10.0 contains a critical remote code execution vulnerability in its query parsing component. The _parse_op_part() function in query.py uses the unsafe eval() function to dynamically evaluate user-supplied query operands without proper sanitization or restriction. Although the function attempts to limit the execution context by providing a restricted global namespace, it does not block access to dangerous built-in functions. A remote attacker can exploit this by submitting a specially crafted query string containing Python code that imports modules (e.g., os) and executes arbitrary system commands, leading to complete compromise of the server.
📍 영향받는 시스템
superduper project through v0.10.0
⚔️ 공격 벡터
Remote attacker sends specially crafted query string containing Python code that imports modules (os) and executes arbitrary commands via network API
🛡️ 대응 방법
Upgrade to patched version; replace eval() with safe alternative; implement strict input validation and sandboxing for query parsing
🔧 검증 코드
If version output is v0.10.0 or earlier, system is vulnerable and must be upgraded immediately; no version output means package is not installed
pip list 2>/dev/null | grep -i superduper | awk '{print $2}'