MenuIcon

Owl-Networks Archive

LoginIcon

자동 실행 (autorun.inf 실행) 을 방지하는 MS의 공식 패치 (KB967715)

| 분류: 컴퓨터 사용 경험 | 최초 작성: 2009-04-01 13:44:21 |

이하에서 언급되는 필자의 과거 포스팅은 자동 실행 기능을 끄는 레지스트리 수정 방법을 기술했던 다음의 게시물을 말합니다.

[[LINK::281]]



1. 들어가면서

이 홈페이지에서 외부 검색을 통하여 가장 많이 방문자가 유입되는 글은 두 개이다. 하나는 램 디스크를 생성해주는 공개 유틸리티인 Gavotte Ramdisk 에 관한 글이고, 다른 하나는 autorun.inf 의 실행을 방지하는 레지스트리 생성 방법을 서술한 글이다. 둘 모두 필자가 현재 처해 있는 상황이기도 하고, 또한 많은 다른 이들의 현재 상황이라는 생각을 해 본다.

아마도, 4GB 이상의 램이 보편화된 현실 속에서 3.25GB 이상의 램이 놀고 있는 것이 속쓰린 32비트 XP/Vista 버전 사용자들이 첫 번째 글을 검색했을 터이고, USB를 통하여 지치지도 않고 밀려 들어오는 각종 악성 코드에 고생하는 사람들이 두 번째 글을 검색했을 것이다.


특히 두 번째의 autorun.inf 차단 방법은, MS가 제공하던 정책 편집기 설정이 버그로 인하여 제대로 동작하지 않았기 때문에 더욱 문제가 되었던 것인데, 지난 2월에 MS에서 이를 수정하는 공식 패치를 내놓았다. 2월 공식 패치에 포함되었는지는 알 수 없지만, WGA 가 걸려있는 것으로 보아 포함되지 않았을 수도 있다. (다만 검색해보니 이 항목이 자동으로 업데이트되었다는 포스팅도 있는 것으로 보아 지난 2월 정기 패치에 포함이 된 듯 하다.) 현재 윈도우 업데이트 항목을 통하여 해당 항목을 업데이트할 수 있다.

Image11.jpg


해당 사항을 포스팅해주신 sonny님에게 감사드립니다.

* 게시물 링크 : http://php.chol.com/~ymister/tt/133



2. 다운로드

해당 패치는 현재 마이크로소프트의 다운로드 페이지에서 KB967715 라는 코드 이름으로 배포되고 있다.

* 기술 문서 페이지 : http://support.microsoft.com/kb/967715

* 다운로드 페이지 : http://www.microsoft.com/downloads/details.aspx?displaylang=ko&FamilyID=c7dbcde3-7814-47c5-849e-e64ecfb35d74 (32비트 XP 서비스팩 2/3용. 다른 OS의 경우 위 기술 문서 페이지를 통하여 접근하세요.)

다만 이 패치는 Windows Genuine Advantage 를 전제로 하여 다운로드가 가능하므로, 윈도우 정품 이용자가 아닌 경우 다운로드가 힘들 수도 있다. 국내 몇몇 포털 자료실에 올라와 있는 것으로 보아 다운로드를 걸어도 상관 없을 듯도 하여 여기에 링크를 함께 걸어두도록 하겠다.

다운로드 (크기: 2MB)



3. 설치 및 설정 방법

설정 방법은 이전 글에서 설명했던 방법과 같지만, 여기에 다시 소개한다.

1. 위 링크에서 패치를 다운로드 받는다

2. 패치 파일을 설치한 후 컴퓨터를 다시 부팅한다.

패치를 하지 않은 상태에서는 이하를 설정하더라도 과거처럼 불완전한 차단밖에 할 수 없으므로, 반드시 패치한 후 이하 설정을 적용하여야 한다.


3. [시작] → [실행] → gpedit.msc 를 실행한다.

Image1.jpg


4. 정책 편집기가 실행되면 [컴퓨터 구성] → [관리 템플릿] → [시스템] 으로 이동한다.

5. [시스템]의 항목 중 [자동 실행 사용 안 함] 을 더블클릭한다.

Image2.jpg


6. 설정을 [사용(E)] 로 바꾼 후, 그 아래의 대상을 "모든 드라이브" 로 설정하고, [확인] 또는 [적용(A)] 을 클릭한다.

7. 정책 편집기를 끄고 컴퓨터를 다시 시작한다.


4. 이젠 제대로 동작하나? - 테스트

이 패치를 적용하기 전에는, (아마도 버그로 인하여) 위 정책 편집기 항목을 설정하여도 단지 디스크를 연결/삽입하는 순간에만 자동 실행이 실행되지 않을 뿐, 연결/삽입된 디스크를 더블클릭 하는 등의 액션이 있으면 자동 실행 기능이 실행되곤 했다. (그래서 이 버그를 회피하기 위하여 작성되었던 게시물이 과거의 게시물이다.) 그래서, 이 패치가 제대로 동작을 하는지 한번 테스트를 해 보았다.


테스트 방법

지난 글에서 필자가 언급했던 악성코드의 autorun.inf 를 그대로 흉내낸 autorun.inf 파일을 작성하여 필자의 USB 드라이브에 복사한 후, USB 삽입, 더블클릭, 탐색 등을 수행하여 보았다.

* USB 디스크가 삽입되거나 실행, 탐색될 때에 tzip.exe 가 실행되도록 autorun.inf 파일을 작성하였다. (tzip.exe 는 알집 없이 .alz 파일의 압축을 해제하여 주는 유틸리티이다. 단지 단일 실행 파일이어서 USB 디스크에 함께 복사하기 편리하였기 때문에 선택했을 뿐, 어떠한 다른 의도는 없다.)

Image3.jpg



실험 결과, 자동 실행 기능 자체는 제대로 모두 막히고 있었다. 과거와는 달리 더블클릭하거나, 열거나, 탐색하는 경우에도 자동 실행 기능은 동작하지 않았다. 따라서, 일단 이 패치를 수행한 후 위 설정을 해 두면, 다른 조작을 하지 않아도 자동 실행 자체는 모두 막히는 것을 확인할 수 있었다.

Image4.jpg


오른쪽 이미지는 자동 실행 기능이 돌아가고 있을 때의 탐색기 확장 (마우스 오른쪽 버튼) 메뉴, 왼쪽 이미지는 위 설정으로 자동 실행 기능의 실행을 중단시킨 후의 탐색기 확장 메뉴이다. "자동 실행" 메뉴가 사라져 있는 것을 볼 수 있다.


그러나 한 가지 문제는 있었다. 지난 글에도 언급한 바 있지만, 윈도우즈는 한 번이라도 연결된 적이 있는 모든 디스크의 정보를 레지스트리의 특정 영역 이하에 저장한다.

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2 이하에 저장된다.


문제는, 자동 실행만 되지 않을 뿐, 이 과정에서 autorun.inf 파일의 정보는 여전히 읽어들여지고 있다는 사실이다. 다음의 이미지는 위 설정을 적용한 후 위에서 작성한 USB 드라이브를 연결한 결과이다. 아래 이미지에서 보듯, 디스크를 연결한 후 레지스트리 편집기를 새로고침한 결과 연결된 디스크의 모든 autorun.inf 의 내용이 레지스트리에 기록되고 있었다.

Image5.jpg


원래의 한글 기술 문서 (리비전 넘버 1.0, 2009/03/04) 에는 "autorun.inf 파일이 더 이상 읽히지 않는"다는 내용이 포함되어 있었다. 그러나 개정된 영문 기술 문서 (리비전 넘버 2.0, 2009/03/27) 에는 해당 항목 자체가 제외되었다. (알려주신 sonny 님께 감사드립니다.) 이 글을 처음 쓰던 시점에는 필자는 이를 버그성 현상으로 판단하였으나, 기술 문서 자체가 저렇게 변경된 것을 보면 의도된 현상이라는 쪽으로 결론을 낼 수밖에 없겠다.


물론 위 값이 읽혀지기는 해도 자동 실행이 실제 동작하지 않는다면 문제는 없을 수도 있다. 그러나, 이 값이 계속 저장된다는 것이 은근히 찜찜한 것도 또한 사실이다. 어떠한 이유로든 이 값이 의도하지 않게 해제된다면 문제가 발생할 수도 있기 때문이다. (Microsoft 의 공식 패치이기 때문에, 기존의 사제(...) 대처방법과는 달리 크래커들이 이 부분을 공략할 여지가 더욱 커진다는 점은 수긍할 수 있으리라 생각된다.) 자동 실행 사용 안 함을 설정한 경우 아예 MountPoints2 이하 레지스트리에 autorun.inf 관련 정보는 저장되지 않도록 하는 것이 더 취지에 부합할 것으로 생각되지만 이 부분은 필자가 뭐라 할 수 있는 부분은 아닌 듯 싶고, 다만 이러한 점을 사용자들이 알고는 있어야 할 것 같다.

MountPoints2 레지스트리 이하에 드라이브 정보 자체가 저장되지 않도록 하는 방법은 필자가 아는 한도 내에서는 없다. 그러나 필자가 지난 글에서 소개한 방법을 적용하면 최소한 autorun.inf 의 내용 자체가 저장이 되지 않도록 할 수는 있다. 끝머리에서 다시 한번 이야기하겠지만, 그래서 필자는 이 패치를 한 후에도 관련 레지스트리 패치를 삭제하지 않고 있다.




5. 맺으면서

마이크로소프트의 공식 패치로 인하여 한동안 맹위를 떨쳤던 autorun.inf 관련 이슈가 앞으로는 좀 줄어들지도 모르겠다. (물론 컴퓨터 사용자들이 이 패치를 모두 수행할 것인지, 그리고 수행하더라도 이를 제대로 설정할 것인지는 판단을 유보한다.) 그러나, 위 MountPoints2 레지스트리 문제로 인하여, 약간은 찜찜한 느낌이 드는 패치가 되어버렸다는 것이 필자의 생각이다.

이 패치를 할 수 없거나 하지 않을 분은 과거에 포스팅한 방법을 계속 사용하여도 된다. 필자의 경우 위 패치를 수행하였고 설정을 마쳤지만, MountPoints2 레지스트리 이하에 autorun.inf 데이터가 쌓이지 않도록 하기 위하여 과거 포스팅에서 소개한 레지스트리 변경 방법을 함께 사용하고 있다. (그런 의미에서는 필자에게는 이번 패치가 별로 쓸모가 없는 패치가 되어버렸다.)


추가 정보. 위 마이크로소프트 기술 문서 페이지에는 좀 더 세부적인 자동 실행 차단 설정을 할 수 있는 레지스트리 수정 방법을 소개하고 있다. 만약 디스크 종류에 따라 선별적으로 자동 실행을 허용/차단하는 등의 설정을 하고 싶다면 위 기술 문서 페이지를 방문하면 된다.

☞ 태그:

☞ 트랙백 접수 모듈이 설치되지 않았습니다.

☞ 덧글이 2 개 있고, 트랙백이 없습니다.

덧글을 남기시려면 여기를 클릭하십시오.

□ sonny 님께서 2009-04-02 00:39:43 에 작성해주셨습니다.

http://support.microsoft.com/kb/967715 내용 중에서 인용된 부분은 한글 부분입니다.
혹시나 해서 영문 버전을 보니 '읽히지 않는다'는 내용은 보이지 않네요.
잘못된 정보라 수정된 거 같습니다. ^^

⇒ 부엉이 님께서 2009-04-02 14:02:10 에 답글을 작성하셨습니다.

sonny 님 // 영문버전과 한글버전의 리비전 넘버를 확인해보니 영문 버전이 03/27, 한글 버전이 03/04 네요. 한글 버전의 업데이트가 늦은 게 문제였네요. 관련 부분 수정하였습니다. 다만 그래도 여전히 불만족스럽긴 하네요. 관련 기능을 disabled 했으면 해당 데이터를 저장하지도 말아야 한다고 생각하는데, 왜 그렇게 패치를 했는지...

□ pardonk 님께서 2009-04-04 10:45:51 에 작성해주셨습니다.

새로운 포스팅이군요. 꼼꼼하게 테스트하느라 수고하셨습니다.
결국 두 가지를 다 하는게 좋겠군요.
아울러 예전 포스팅에 달았던 답글에 대한 답을 하자면 여러모로 다 실험을 해도 제 mp3p만 그럽니다. 이 꼴통..

[489] < [335] [327] [326] [325] [318] ... [317] ... [316] [311] [308] [307] [306] > [19]

(C) 2000-2023, Owl-Networks. Powered by Perl. 이 페이지는 HTML 5 표준에 따라 작성되었습니다.