🇰🇷 한글 설명
FreePBX의 Text-To-Speech 모듈에서 인증된 관리자가 TTS 목적지 이름을 저장할 때 발생하는 취약점입니다. 저장된 이름이 다이얼플랜 생성 및 AGI 인자 전달 과정에서 디코딩되어 agi-bin/propolys-tts.agi 내의 쉘 명령 실행 경로에 도달하게 됩니다. 이를 통해 asterisk 서비스 사용자 권한으로 임의의 운영체제 명령을 실행할 수 있습니다.
💡 쉬운 설명
관리자 권한을 가진 사용자가 특수하게 조작된 이름을 입력하면 서버에 몰래 명령을 내릴 수 있는 보안 약점입니다. 이로 인해 해커가 서버의 제어권을 탈취할 위험이 있습니다.
🇺🇸 원문 (English)
FreePBX is an open source IP PBX. Prior to 16.0.6 and 17.0.5.4, the FreePBX Text-To-Speech module allows an authenticated administrator to save a TTS destination name that is HTML-encoded for storage, decoded during dialplan generation, passed as an AGI argument, and used to build filenames inside agi-bin/propolys-tts.agi. The TTS destination name reaches a raw shell-command execution path, allowing arbitrary operating-system command execution as the asterisk service user. This issue is fixed in versions 16.0.6 and 17.0.5.4.
📍 영향받는 시스템
FreePBX 16.0.6 미만 및 17.0.5.4 미만 버전
⚔️ 공격 벡터
인증된 관리자가 TTS 목적지 이름에 쉘 명령어를 포함시켜 저장하는 방식
🛡️ 대응 방법
FreePBX를 버전 16.0.6 또는 17.0.5.4 이상으로 업데이트하십시오.
🔧 검증 코드
명령어 결과에 16.0.6 또는 17.0.5.4 버전이 포함되어 있지 않으면 취약한 상태입니다.
rpm -q freepbx | grep -E '16.0.6|17.0.5.4' || dpkg -l | grep freepbx | grep -vE '16.0.6|17.0.5.4'