🇰🇷 한글 설명
Tuleap 9.7 이전 버전의 PhpWiki 1.3.10 SyntaxHighlighter 플러그인이 proc_open 함수를 사용할 때 사용자 입력을 안전하게 검증하지 않아 커맨드 인젝션 취약점을 유발합니다. 인증된 사용자가 쉘 메타문자를 포함한 syntax 파라미터를 조작하여 임의의 시스템 명령어를 실행할 수 있습니다.
💡 쉬운 설명
Tuleap 위키의 코드 강조 기능이 사용자 입력을 제대로 검증하지 않아 인증된 사용자가 서버에서 몰래 명령어를 실행할 수 있는 보안 문제입니다. 예를 들어 '<?plugin SyntaxHighlighter syntax="c;id"' 같은 입력으로 서버의 id 명령어를 실행할 수 있습니다.
🇺🇸 원문 (English)
Tuleap before 9.7 allows command injection via the PhpWiki 1.3.10 SyntaxHighlighter plugin. This occurs in the Project Wiki component because the proc_open PHP function is used within PhpWiki before 1.5.5 with a syntax value in its first argument, and an authenticated Tuleap user can control this value, even with shell metacharacters, as demonstrated by a '<?plugin SyntaxHighlighter syntax="c;id"' line to execute the id command.
📍 영향받는 시스템
Tuleap 9.7 이전 버전, PhpWiki 1.5.5 이전 버전의 SyntaxHighlighter 플러그인
⚔️ 공격 벡터
인증된 Tuleap 사용자가 Project Wiki의 SyntaxHighlighter 플러그인 syntax 파라미터에 쉘 메타문자(;, |, &&, `, $())를 포함하여 임의 명령어 실행
🛡️ 대응 방법
Tuleap을 9.7 이상으로 업그레이드하고, PhpWiki를 1.5.5 이상으로 업데이트하며, SyntaxHighlighter 플러그인의 입력값을 화이트리스트 기반으로 검증
🔧 검증 코드
표시된 Tuleap 버전이 9.7 미만(8.x, 9.0-9.6)이면 취약 상태이며, 9.7 이상이면 패치 완료 상태입니다.
rpm -q tuleap 2>/dev/null | grep -oE '[0-9]+\.[0-9]+' | awk -F. '{if ($1<9 || ($1==9 && $2<7)) print "Vulnerable"; else print "Patched"}' || dpkg -l tuleap 2>/dev/null | tail -1 | awk '{print $3}'