🇰🇷 한글 설명
Typebot 3.15.2 및 이전 버전에서 발생하는 SSRF 취약점으로, 인증되지 않은 사용자가 서버 측 코드 블록을 포함한 커스텀 정의를 통해 서버 내부로 요청을 보낼 수 있습니다. 이 취약점은 기존의 SSRF 방어 메커니즘을 우회하여 클라우드 자격 증명 탈취나 내부 네트워크 접근을 허용할 수 있습니다.
💡 쉬운 설명
챗봇 제작 도구인 Typebot의 보안 구멍을 이용해 해커가 서버를 조종하여 내부 정보를 훔쳐갈 수 있는 문제입니다. 인증 없이도 공격이 가능하여 매우 위험하며, 서버가 내부 네트워크에 접근하는 통로로 악용될 수 있습니다.
🇺🇸 원문 (English)
Typebot is a chatbot builder tool. In versions 3.15.2 and prior, the preview chat endpoint (POST /api/v1/typebots/{typebotId}/preview/startChat) allows unauthenticated users to achieve Server-Side Request Forgery (SSRF) by supplying a custom typebot definition with server-side code blocks. The fetch function exposed inside the isolated-vm sandbox calls Node.js native fetch without the SSRF validation (validateHttpReqUrl) that protects the HTTP Request block. This bypasses all SSRF mitigations added after GHSA-8gq9-rw7v-3jpr. Exploitation of this unauthenticated SSRF vulnerability can lead to cloud credential theft, internal network access and data exfiltration for any self-hosted Typebot deployments and hosted services. This issue has been fixed in version 3.16.0.
📍 영향받는 시스템
Typebot 3.15.2 및 그 이전 모든 버전
⚔️ 공격 벡터
인증되지 않은 사용자가 preview chat 엔드포인트에 조작된 서버 측 코드 블록을 포함한 요청을 전송
🛡️ 대응 방법
Typebot을 최신 보안 패치가 적용된 버전 3.16.0 이상으로 즉시 업데이트
🔧 검증 코드
출력된 버전 정보가 3.16.0 미만인 경우 해당 취약점에 노출된 상태입니다.
curl -s http://<target-ip>/api/v1/health | grep -i 'version' || echo 'Check version via application UI'