🔍 CVE-2026-47391

9.8
CVSS Score
CRITICAL
2026-07-21
2026-07-23 15:17
✅ 완료

🇰🇷 한글 설명

PraisonAI 4.6.40 미만 버전의 A2A 서버 예제에서 인증되지 않은 사용자가 JSON-RPC 엔드포인트를 통해 임의의 파이썬 코드를 실행할 수 있는 취약점이 발견되었습니다. 공격자는 LLM이 위험한 `calculate` 도구를 호출하도록 유도하여 서버 프로세스 내에서 임의의 명령을 실행할 수 있습니다. 또한 작업 내역 노출 및 작업 취소 API를 통해 기밀성과 무결성에도 영향을 미칠 수 있습니다.

💡 쉬운 설명

해커가 별도의 로그인 없이도 인공지능 시스템에 명령을 내려 서버를 마음대로 조종할 수 있는 심각한 보안 구멍이 발견되었습니다. 이로 인해 서버에 악성 파일을 만들거나 중요한 정보를 훔쳐가는 것이 가능해집니다.

🇺🇸 원문 (English)

PraisonAI is a multi-agent teams system. Prior to version 4.6.40, PraisonAI's first-party A2A server example exposes an unauthenticated A2A JSON-RPC endpoint and registers a `calculate(expression)` tool implemented with Python `eval()`. The example also binds to `0.0.0.0`. A remote unauthenticated attacker can send `message/send` to `/a2a`; the request reaches `agent.chat()`, and a real LLM can invoke the registered `calculate` tool. In testing with `gemini/gemini-2.5-flash-lite`, this resulted in arbitrary Python execution in the server process, confirmed by creation of a marker file from an unauthenticated HTTP request. The issue affects deployments following the official A2A example or similar unauthenticated public A2A deployments with unsafe tools. The default unauthenticated A2A surface also exposes task history and task cancellation APIs, increasing confidentiality and integrity impact. Version 4.6.40 patches the issue.

📍 영향받는 시스템

PraisonAI version < 4.6.40 (A2A 서버 예제를 사용하는 배포 환경)

⚔️ 공격 벡터

인증되지 않은 원격 공격자가 `/a2a` 엔드포인트로 `message/send` 요청을 보내 LLM이 `eval()` 함수를 사용하는 도구를 실행하도록 유도

🛡️ 대응 방법

PraisonAI를 최신 버전인 4.6.40 이상으로 업데이트하고, A2A 서버를 외부로 노출할 경우 반드시 인증 절차를 추가하십시오.

🔧 검증 코드

출력된 버전 번호가 4.6.40 미만이면 취약한 상태입니다.

Shell / Script
pip show praisonai | grep Version

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Python