Windows Server 2008 R2 최신 보안 업데이트 적용 후 원격 데스크탑 연결이 실패 되는 현상
リュちゃん
2012. 6. 26. 00:01
Windows Server 2008 R2 최신 보안 업데이트 적용 후 원격 데스크탑 연결이 실패 되는 현상이 종종 발생 하고 있습니다. 이러한 현상은 지난 3월에 한 차례 경험을 하였고 4월과 5월 그리고 6월에도 똑같은 현상이 발생하여 내용을 정리 해 봅니다. 참고 하시기 바랍니다.
[환 경] Windows Server 2008 R2
[증 상] Windows update 실행 후 원격 데스크탑을 연결을 할 경우 로그온 화면에서 사용자 계정 정보 입력 후 연결이 실패 되는 현상 - 원격 데스크탑 연결 시 TermService를 실행하는 svchost.exe에 크래시가 발생 함
최신 핫 픽스 적용 후 원격 데스크탑 연결이 실패 될 경우 해당 서버에 로그온 후 Remote desktop service를 다시 시작 한 후 Tasklist 커멘드를 이용해서 TermService를 실행하는 svchost.exe의 process ID를 확인 합니다.
Tasklist /svc |fnidstr Term*
위 명령어를 통해서 확인 된 PID를 기억합니다. 다음으로 Adplus나 user dump 를 수집 할 수 있는 툴을 이용해서 해당 프로세스의 crash 덤프를 설정 합니다. 서버에 Windows Debugging tool이 설치 되어 있다는 가정하에 Windows debugging tool이 설치 된 폴더로 이동하여 아래와 같은 명령어를 실행 합니다.
adplus –crash –p 2060 –o c:\temp
User dump를 수집 하는 자세한 방법 아래 제 블로그를 통해서 확인이 가능 합니다. Windows server 프로세스 덤프 (user dump) 수집 방법 http://ryuchan.kr/230
svchost.exe에 대한 crash 덤프 설정 후 다시 원격 데스크탑 연결을 시도 해 봅니다. 로그온 화면에서 사용자 계정 정보 입력 후 접속을 시도 할 경우 다시 연결이 실패 되고 C:\temp 폴더에 크래시 덤프가 수집 될 것입니다.
수집 된 해당 덤프를 Windows Debugging tool이용해서 확인 해 보면 아래와 같이 svchost.exe 에서 Access Violation이 발생 한 것을 확인 할 수 있으며 문제를 유발 시킨 모듈은 rdpcorekmts.dll 임을 확인 할 수 있습니다.
Windows Server 2008 R2에 대한 최신 업데이트 이후 위와 같은 문제가 발생 한다면 최초 위에서 언급 한 대로 프로그램 추가 제거에서 KB2621440, KB2667402를 제거 하시면 원격 접속이 가능 합니다. 또한 해당 hoitfix를 제거 후 다시 설치 할 경우 아무런 문제 없이 원격 데스크탑 연결이 가능 합니다.
그러므로 위와 같은 문제가 발생하여 두 핫 픽스를 제거 한 후 문제가 해결 되더라도 반드시 두 핫 픽스를 다시 설치 하실 것을 권장 합니다.
DEFAULT_BUCKET_ID: INVALID_POINTER_WRITE PROCESS_NAME: svchost.exe ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%08lx referenced memory at 0x%08lx. The memory could not be %s. EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%08lx referenced memory at 0x%08lx. The memory could not be %s. EXCEPTION_PARAMETER1: 0000000000000001 EXCEPTION_PARAMETER2: 00000000fffffffe WRITE_ADDRESS: 00000000fffffffe