🇰🇷 한글 설명
PraisonAI 4.6.37 미만 버전의 _safe_extractall 헬퍼 함수에서 발생하는 취약점입니다. 압축 파일 내 심볼릭 링크의 대상 경로를 검증하지 않고 tar.extractall()을 호출하여, 공격자가 임의의 파일 내용을 시스템의 원하는 위치에 작성할 수 있는 경로 이탈 취약점이 존재합니다.
💡 쉬운 설명
압축 파일을 풀 때 파일이 저장될 위치를 벗어나 시스템의 중요한 파일을 마음대로 바꿀 수 있는 보안 구멍이 발견되었습니다. 악의적으로 만들어진 압축 파일을 실행하면 컴퓨터의 다른 폴더에 파일을 몰래 심을 수 있습니다.
🇺🇸 원문 (English)
PraisonAI is a multi-agent teams system. Prior to version 4.6.37, the _safe_extractall helper that all recipe pull, recipe publish, and recipe unpack flows route through validates each archive member's name for absolute paths, .. segments, and resolved-path escape — but does not validate member.linkname, does not reject symlink/hardlink members, and calls tar.extractall(dest_dir) without filter="data". A bundle that contains a symlink with a name inside dest_dir but a linkname pointing outside it, followed by a regular file whose path traverses through the just-created symlink, escapes dest_dir and lets the attacker write arbitrary content to an attacker-chosen location on the victim's filesystem. This issue has been patched in version 4.6.37.
📍 영향받는 시스템
PraisonAI version < 4.6.37
⚔️ 공격 벡터
심볼릭 링크와 경로 조작이 포함된 악성 압축 번들(bundle)을 업로드하거나 실행하여 파일 시스템 경로 이탈 유도
🛡️ 대응 방법
PraisonAI를 최신 버전인 4.6.37 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 번호가 4.6.37보다 낮으면 취약한 상태이며, 4.6.37 이상이면 안전합니다.
pip show praisonai | grep Version