🇰🇷 한글 설명
xrdp는 오픈소스 RDP 서버이며, 0.10.6 이하 버전에서는 연결 초기 단계의 GCC Conference Create Request 내 Client Security Data 파싱 시 길이 검증이 부족합니다. 원격의 인증되지 않은 공격자가 조작된 RDP 패킷을 보내면 경계를 벗어난 소량의 메모리가 노출될 수 있으며, 이는 다른 취약점과 결합될 수 있습니다. 해당 문제는 0.10.6.1 버전에서 수정되었습니다.
💡 쉬운 설명
RDP 원격 데스크톱 서버인 xrdp의 연결 처리 과정에 입력값 길이 검증 누락 문제가 있습니다. 공격자가 특별히 조작된 연결 요청을 보내면 서버 메모리의 일부 내용이 외부로 새어 나갈 수 있습니다.
🇺🇸 원문 (English)
xrdp is an open source RDP server. Versions 0.10.6 and prior contain a vulnerability concerning the parsing of Client Security Data within the Client MCS Connect Initial PDU with GCC Conference Create Request during the connection sequence. During the initial capability and security negotiation phase, the parser fails to perform sufficient length validation for the incoming data block. A remote, unauthenticated attacker could potentially exploit this flaw by sending a specially crafted RDP packet containing malformed data. Due to missing bounds checks, the xrdp process may read a small number of bytes beyond the declared data block boundary, potentially disclosing process memory contents that could be combined with other vulnerabilities. This issue has been fixed in version 0.10.6.1.
📍 영향받는 시스템
xrdp 0.10.6 이하 버전을 사용하는 Linux 원격 데스크톱 서버
⚔️ 공격 벡터
네트워크로 RDP 포트에 접속해 조작된 Client Security Data를 포함한 패킷을 전송 (인증 불필요)
🛡️ 대응 방법
xrdp를 0.10.6.1 이상 버전으로 업데이트하고, 업데이트 전까지 RDP 포트를 신뢰된 네트워크로만 제한
🔧 검증 코드
출력된 버전이 0.10.6.1 이상이면 수정된 버전이며, 0.10.6 이하이거나 설치되어 있지 않으면 취약 여부를 추가 확인해야 합니다.
xrdp --version 2>/dev/null || dpkg -l xrdp 2>/dev/null | grep xrdp