SETHC.EXE 의 취약성을 이용한 백도어 공격 기법

윈도 운영체제는 태생적으로 갖고 있는 문제들로 인해 아직도 매우 취약한 운영체제로 분류됩니다. 현재 진행형인 보안사고 사례에서 재미있는(?) 윈도 운영체제의 취약성을 알게 되어 소개하고자 합니다. 윈도서버에 매우 손쉽게 백도어를 생성할 수 있는 방법 중 하나입니다.

유닉스나 리눅스가 갖고 있는 쉘카피백도어와 비슷한 백도어 생성기법 중 하나입니다. sethc.exe는 C:\Windows\system32 디렉토리에 있는 시스템 파일입니다.(이 파일의 용도 설명은 생략합니다.)  그리고 이 명령어는 Shift 키를 다섯번 연속으로 누르면 실행되는 다음 화면을 보여주는 명령어 입니다.

SETHC.EXE 의 취약성을 이용한 백도어 공격 기법

아마 많은 분들이 “아하~~이 화면…”이라고 생각하실 겁니다. 맞습니다. sethc.exe는 바로 이 화면을 보여주는 명령어 입니다. 그리고 아래 화면처럼 작업관리자에서 확인할 수 있습니다. 그런데 웃긴 것은 로그아웃 된 상태에서도 shift 키를 다섯 번 누르면 실행된다는 사실입니다.

해커들은 여기서 힌트를 얻은 것으로 보입니다. 만약 sethc.exe 파일을 삭제하고 cmd.exe를 복사하여 sethc.exe로 바꿔치기 하거나 해커들이 실행되기를 원하는 악성코드파일로 변조하면 어떨까?? 라는 생각을 하게 된 것입니다. 그리고 해커들은 더 나아가 sethc.exe가 shift 키 5회 연속 눌림이 아닌 다른 방법으로도 원격에서 호출할 수 있다는 것과 sethc.exe가 관리자 계정의 비밀번호를 변경할 수 있는 취약점이 있다는 것도 찾아냈습니다. (정말 존경스러울 만큼 대단한 열정을 갖고 있습니다.. -.-)

Windows 2003 서버는 물론이고 Windows7도 이 아이디어가 그대로 현실로 적용됩니다. Windows 2008 이상의 서버는 운영체제의 변조를 막아주긴 합니다만 관리자 권한을 얻으면 얼마든지 해제할 수 있기 때문에 실상 큰 도움은 되지 않습니다. 오늘 현재 해커의 공격을 받고 있는 서버도 이 sethc.exe가 변조된 것을 확인했으니까요.

그래서 위 화면을 캡쳐한 Windows 2008에서 테스트를 해봤습니다. sethc.exe를 다른이름으로 변경해놓고 cmd.exe를 sethc.exe로 복사하여 두고 로그오프된 상태에서 Shift 키를 5회 연속으로 눌러봤습니다. 로그인을 하지 않고도 cmd.exe를 호출할 수 있었습니다. 로그인하지 않은 채 cmd.exe를 사용할 수 있는 완벽한 백도어인 셈입니다.

이 취약점은 운영체제 파일들에 대한 변조(수정,삭제,생성,리네임)등을 관리자 권한으로도 하지 못하도록 통제하지 않으면 제거할 수 없는 매우 크리티컬한 취약점이라고 할 수 있습니다. 방법은 RedCastle과 같은 SecureOS를 통해 관리자 권한으로도 해제할 수 없는 운영체제 파일의 수정/변조 차단을 적용하는 것입니다.

아래 동영상을 확인하세요. 로그오프 상태에서 15초 지점에서 Shift키를 5회 연속으로 눌렀고 로그인 한 뒤 55초 지점에서 또 shift키를 5회 연속으로 눌러줬습니다. 두 번 모두 cmd.exe가 실행되는 것을 확인할 수 있습니다.

너무 쉽죠??? 그만큼 Windows 운영체제는 보안에 취약합니다. 위 화면에 표시된 대로 접근성 센터에 가서 이 기능을 꼭 꺼주시기 바랍니다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Scroll to Top