Windows 원격 데스크톱 클라이언트의 해킹 취약점

CVE-2019-0787

근래 윈도우의 자체 원격제어 기능인 원격 데스크톱을 이용한 해킹이 증가 추세이다. 그리고 주로 서버(server)를 표적으로, 취약한 암호를 공략하는 브루트포스 공격이 대부분이다.

참고로 원격 데스크톱과 관련해 여러 용어가 혼란스럽게 쓰인다. RDC(Remote Desktop Connection), RDS(Remote Desktop Service), RDP(Remote Desktop Protocol) 등이 그것이다. RDC는 원격 데스크톱용 앱을, RDS는 원격 데스크톱 기능 자체를 말하는 것이고, RDP는 원격 데스크톱 연결에 사용되는 통신 프로토콜이다.

게다가 BlueKeep이라 불리는, 원격 데스크톱 서버에 대한 자동화된(wormable) 공격 가능성이 알려지면서, WannaCry급의 위협으로 평가됐다. 블루킵은 처음엔 구형 윈도우에만 해당하는 것으로 알려졌지만, Windows 10을 비롯한 최신 윈도우 버전 역시 유사한 취약점을 갖고 있음이 밝혀졌다(관2).

Reverse RDP attack

그런데 2019.2월 거꾸로 클라이언트(client)가 표적이 될 수 있다는 것이 입증됐다. 이런 역 RDP 공격에 대한 첫 보고서에서는 오픈소스 원격제어 앱들이 취약하다는 것이 밝혀졌지만, 윈도우는 비교적 견고한 것으로 평가됐다(관1).

그러나 해킹에 100% 안전한 것은 없다. Windows Remote Desktop Client에서도 취약점이 발견됐다. MS는 2019.9.10일 정기 보안 업데이트를 통해 이와 관련된 4개의 취약점을 패치했다. CVE-2019-0787, 0788, 1290, 1291이 그것이다.

이들은 원격코드 실행 취약점이다. 해커는 원격으로 임의의 코드를 실행할 수 있다. 대표적으로 프로그램 설치, 파일 보기/편집/삭제, 계정 생성 등을 예로 들 수 있다.

클라이언트의 취약점이므로 자동화(wormable)할 수는 없다. 해커는 표적이 악성 원격 데스크톱 서버에 접속하도록 유도해야 한다. 악성 서버는 처음부터 악의적으로 만들어진 것일 수도 있고, 정상적인 서버를 해킹한 것일 수도 있다.

악성 서버 접속을 유도하는 방법으로는 피싱(phishing), DNS poisoning(DNS 하이재킹), MITM(중간자 공격) 등이 있다.

원격 데스크톱 서버 방어가 우선

역 RDP 공격은 악성 서버에 접속할 때 가능하다. 따라서 신뢰할 수 없는 서버에 접속하지 않도록 주의해야 한다. 또한 해킹된 서버를 통해서도 가능하므로, 서버를 잘 지키는 것이 중요하다.

RDP 서버를 지키는 데 가장 중요한 것은 인터넷에 직접 노출되지 않도록 하는 것이다(관3). 인터넷에 직접 노출된다는 것은, 일반 가정의 경우에는, 모뎀이나 벽면 랜 단자에 직접 연결하는 것을 말한다. 공유기(가정용 라우터)는 방화벽 역할을 하므로, 설령 PC 1대만을 사용한다 할지라도, 공유기를 통해 연결하는 것이 좋다.


관련 자료
  1. RDP의 역습, 클라이언트가 해킹당할 수도 있다
  2. Windows 10 원격 데스크톱 해킹 취약점
  3. 해킹 통로 RDP 지키기

참고 자료
  1. Latest Microsoft Updates Patch 4 Critical Flaws In Windows RDP Client
  2. CVE-2019-0787 | Remote Desktop Client Remote Code Execution Vulnerability

댓글

이 블로그의 인기 게시물

마이크로소프트 4K 무선 디스플레이 어댑터(MS WDA 3) 리뷰

와이파이(Wi-Fi) 보안 설정

엑셀 필터 상태에서 복사와 잘라내기