🇰🇷 한글 설명
Foundation Agents MetaGPT의 actionoutput_str_to_mapping 함수에서 사용자 제공 문자열의 적절한 검증이 이루어지지 않아 원격 공격자가 임의의 코드를 실행할 수 있는 취약점
💡 쉬운 설명
Foundation Agents MetaGPT의 취약점으로 인해 공격자가 시스템에 접근할 수 있으며, 인증이 필요하지 않아 매우 위험합니다. 이는 사용자 제공 문자열의 검증이 제대로 이루어지지 않아 발생합니다.
🇺🇸 원문 (English)
Foundation Agents MetaGPT actionoutput_str_to_mapping Code Injection Remote Code Execution Vulnerability. This vulnerability allows remote attackers to execute arbitrary code on affected installations of Foundation Agents MetaGPT. Authentication is not required to exploit this vulnerability.
The specific flaw exists within the actionoutput_str_to_mapping function. The issue results from the lack of proper validation of a user-supplied string before using it to execute Python code. An attacker can leverage this vulnerability to execute code in the context of the service account. Was ZDI-CAN-28124.
📍 영향받는 시스템
Foundation Agents MetaGPT
⚔️ 공격 벡터
원격 공격을 통해 임의의 코드를 실행
🛡️ 대응 방법
최신 패치 또는 보안 업데이트를 적용
🔧 검증 코드
로컬 시스템에서 Python을 실행하여 Foundation Agents MetaGPT의 버전을 확인합니다. 최신 버전과 비교하여 취약점 여부를 판단합니다. 실행 전 Python과 pip가 설치되어 있어야 하며, 관리자 권한이 필요할 수 있습니다.
import subprocess
output = subprocess.check_output(['pip', 'show', 'Foundation-Agents-MetaGPT']).decode('utf-8')
if 'Version: ' in output:
version = output.split('Version: ')[1].split('\n')[0]
if version < '최신 버전':
print("{"result": "취약", "reason": "Foundation Agents MetaGPT 버전이 낮음"}")
else:
print("{"result": "양호", "reason": "Foundation Agents MetaGPT 버전이 최신"}")
else:
print("{"result": "확인 실패", "reason": "Foundation Agents MetaGPT 패키지 정보를 확인할 수 없음"}")