🇰🇷 한글 설명
Termix 1.5.0 이하 버전의 공식 Docker 이미지에서 Nginx 리버스 프록시 설정 오류로 인해 클라이언트 IP 대신 프록시 IP를 인식하는 취약점이 발견되었습니다. 이로 인해 isLocalhost 검증이 항상 참이 되어, 인증 없이 /ssh/db/host/internal 엔드포인트에 접근할 수 있습니다. 공격자는 이를 통해 시스템에 저장된 SSH 호스트 주소, 사용자 이름, 비밀번호 등 민감한 정보를 탈취할 수 있습니다.
💡 쉬운 설명
서버의 주소 확인 기능에 오류가 있어, 로그인하지 않은 외부인도 관리자 권한으로 접속할 수 있는 상태입니다. 이로 인해 서버에 저장된 중요한 비밀번호와 접속 정보가 유출될 위험이 매우 높습니다.
🇺🇸 원문 (English)
Termix is a web-based server management platform with SSH terminal, tunneling, and file editing capabilities. The official Docker image for Termix versions 1.5.0 and below, due to being configured with an Nginx reverse proxy, causes the backend to retrieve the proxy's IP instead of the client's IP when using the req.ip method. This results in isLocalhost always returning True. Consequently, the /ssh/db/host/internal endpoint can be accessed directly without login or authentication. This endpoint records the system's stored SSH host information, including addresses, usernames, and passwords, posing an extremely high security risk. Users who use the official Termix docker image, build their own image using the official dockerfile, or utilize reverse proxy functionality will be affected by this vulnerability. This issue is fixed in version 1.6.0.
📍 영향받는 시스템
Termix 1.5.0 이하 버전 (공식 Docker 이미지, 자체 빌드 이미지, 리버스 프록시 사용 환경 포함)
⚔️ 공격 벡터
인증되지 않은 상태에서 /ssh/db/host/internal 엔드포인트에 직접 HTTP 요청을 보내 SSH 자격 증명 탈취
🛡️ 대응 방법
Termix를 버전 1.6.0 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 이미지의 TAG 또는 버전 정보가 1.5.0 이하인지 확인하십시오.
docker images | grep termix