🇰🇷 한글 설명
PraisonAI의 CommandValidator가 첫 번째 실행 파일만 검증하고 전체 명령어를 쉘에 전달하는 취약점이 발견되었습니다. 공격자는 허용된 명령어 뒤에 쉘 메타문자를 사용하여 임의의 명령어를 실행할 수 있습니다. 이 문제는 1.7.2 버전에서 수정되었습니다.
💡 쉬운 설명
허용된 프로그램 이름 뒤에 몰래 다른 명령어를 붙여서 실행할 수 있는 보안 구멍이 있습니다. 이를 통해 해커가 사용자의 컴퓨터에서 원하지 않는 명령을 마음대로 내릴 수 있습니다.
🇺🇸 원문 (English)
PraisonAI is a multi-agent teams system. From 1.2.3 until 1.7.2, CommandValidator in src/praisonai-ts/src/cli/features/sandbox-executor.ts validates only the first whitespace-delimited executable against allowedCommands, then SandboxExecutor passes the complete command string to sh -c. A command beginning with an allowed executable can append a non-allowlisted command through shell metacharacters, causing arbitrary commands to run with the PraisonAI process privileges. This issue is fixed in version 1.7.2.
📍 영향받는 시스템
PraisonAI 1.2.3 버전부터 1.7.2 미만 버전
⚔️ 공격 벡터
허용된 명령어 뒤에 쉘 메타문자(예: ;, |, &&)를 사용하여 임의의 명령어를 추가 전달
🛡️ 대응 방법
PraisonAI를 최신 버전인 1.7.2 이상으로 업데이트
🔧 검증 코드
출력된 버전이 1.7.2 미만인 경우 취약한 상태입니다.
npm list -g praisonai-ts | grep -E 'praisonai-ts@'