상세 컨텐츠

본문 제목

위험한(?) 공유폴더

프로그래밍/잡동사니

by 라제폰 2008. 12. 13. 20:43

본문

공유 폴더란 무엇인가?

공유해씨는 회사에서 마케팅 업무를 담당하고 있다. 요즈음 새로운 마케팅 시장 조사를 위해 여러 자료들을 팀원들과 같이 조사하고 있는데, 각 팀원이 모은 자료들을 자신의 PC의 '마케팅 사전조사'란 폴더에 모으고 싶어한다. 이를 위해 공유해씨는 각 팀원으로부터 파일을 메일 등으로 따로 받아 저장하는 대신, '마케팅 사전조사' 폴더에 팀원 모두가 접근하여 파일을 저장하거나 볼 수 있도록 '공유' 설정을 하기로 하였다.

나관리씨는 팀원들의 PC를 관리하는 업무를 수행하고 있다. 나관리씨는 팀원들에게 공통으로 필요한 프로그램들을 '프로그램 배포' 폴더에 모아놓고 개인들이 가져다가 사용할 수 있도록 '공유' 설정을 해 놓았으며, 다른 팀원들의 PC에 설정되어 있는 관리용 공유폴더를 이용하여 직접 필요한 파일들을 복사해 주기도 한다.

이와 같이 공유 폴더는 특정 폴더를 여러 사람들이 함께 사용할 수 있도록 하여 필요한 파일을 저장하거나 이용할 수 있도록 한다. 따라서 공유해씨처럼 정보 공유가 필요하거나 나관리씨와 같이 프로그램 배포가 필요할 경우 편리하게 이용할 수 있다.

공유는 왜 위험한가?

폴더를 공유하는 경우 공유의 정도를 설정할 수 있는데, 단순히 폴더 내에 있는 파일 읽기 기능만 허용하는 것에서부터 수정, 삭제, 하위 폴더 생성뿐 아니라 권한 변경까지 가능하게 할 수 있다. 일반적으로 '읽기' 권한만 허용할 경우에는 큰 문제가 없지만, '변경' 권한이나 '모든 권한'을 허용했을 때에는 문제가 발생할 여지가 많이 있다. 공유된 폴더로 악성 코드가 침입할 수 있기 때문이다. 많은 바이러스나 웜, 트로이목마가 자신들의 전파 경로로 공유 폴더를 애용하고 있다. 공유 폴더로 침입한 악성 코드들은 감염된 PC의 전체 드라이브에 공유 설정을 하여 PC 전체를 손상시키고, 또 다른 PC로 자신을 전파시킨다. 네트워크상에 허술하게 공유 폴더가 설정된 PC들이 있을 경우 얼마나 순식간에 이런 악성 코드들이 전파될 수 있는지 상상해 보라.

공유 폴더의 종류

공유 폴더에는 두 가지 종류가 있다. 사용자가 직접 설정하는 경우와 윈도우가 설치될 때 자동으로 설정되는 '관리목적 공유폴더'가 있다. 사용자가 직접 설정하는 공유 폴더는 다른 사람에게 보여지지만, ‘관리목적 공유폴더’는 관리 목적으로 윈도우가 설치될 때 자동으로 만들어지는 폴더로 다른 사람에게 보여지지 않고, 관리자 권한이 있을 경우 접근만 가능하다. '관리목적 공유폴더'는 이름 뒤에 $가 붙는데 C$, D$, IPC$, ADMIN$과 같은 공유 폴더가 여기에 해당된다.

자신의 PC에 설정된 공유 폴더 전체를 확인하고자 할 경우에는
▪ 시작 → 설정 → 제어판 → 관리도구 → 컴퓨터 관리 → 공유폴더 → 공유 또는
▪ [시작]-[실행]에 fsmgmt.msc (win9x계열은 netwatch라고 입력) 라고 입력하면 된다.


[그림 1] 공유폴더

 
위험한 상황들

사실 공유 폴더는 공유를 설정하는 자체가 위험한 것이 아니라 이를 허술하게 설정하는 것이 문제이다.

가장 흔한 실수는 관리자 계정의 패스워드를 설정하지 않는 것이다. 일반적으로 윈도우를 설치하면 Administrator라고 하는 관리자 계정이 생성되는데, 많은 사람들이 이 Administrator 계정의 패스워드를 설정하지 않고 null로 사용하고 있다. 이러한 경우 ‘관리목적 공유폴더’를 통해 자신도 모르게 악성 코드에 쉽사리 감염될 수 있다. 아무나 공유 폴더로 들어올 수 있게 문을 활짝 열어놓고 있는데 왜 문제가 발생하지 않겠는가!

또한 관리자 계정의 패스워드가 아주 쉽게 추측할 수 있는 문자열일 경우에도 공격대상이 되기 쉽다. 많은 웜과 바이러스는 사람들이 많이 사용하는 패스워드 리스트를 자체적으로 가지고 하나 하나 대입해보면서 패스워드를 추측하는 기능을 가지고 있다. 따라서, qwer, 1234와 같이 간단한 패스워드를 사용하는 경우에는 금방 들통이 나게 마련이다. 이러한 공격을 사전 공격(dictionary attack)이라고 하는데 말 그대로 사람들이 사용하는 패스워드에 대한 사전을 가지고 a부터 z까지 다 대입해본다고 이해하면 된다.

불필요하게 공유 권한을 많이 설정할 경우도 위험하다. 공유를 설정하면 기본값으로 ‘모든 사람(everyone)’의 ‘모든 권한’이 주어진다. 많은 경우 이렇게 넉넉한 권한을 줄 필요는 없는데 디폴트로 정해지는 기본값을 그냥 사용할 경우에는 위험에 노출되게 된다.

이렇게 하면 안전하다

그러면 안전하게 공유폴더를 설정하려면 어떻게 해야 할까? 다음에 소개되는 몇 가지 조언들이 도움이 될 것이다.
  • Administrator 계정에 패스워드를 반드시 설정한다. 이때 설정하는 패스워드는 추측하기 어려운 값을 사용하도록 한다.
  • Administrators 관리자 그룹에 속한 Administrator 이외의 모든 계정에도 패스워드를 반드시 설정한다.
  • Administrator는 디폴트 계정으로 모든 사람들에게 알려진 계정이므로 보다 강력한 보안을 원한다면 다른 이름으로 바꾸도록 한다.
  • 권한 설정을 각 개인별로 하지 말고 그룹에 허용하고, 필요 시 개인을 그룹에 소속시킨다. 이렇게 하면 권한 설정을 한번만 하면 되므로 번거로움과 실수를 줄일 수 있다. 이때 권한을 허용한 그룹에 ‘모든 권한’을 허용하지 않는다.
  • 가능한 '읽기' 권한만 허용한다. 불필요하게 저장, 삭제 등이 가능한 권한을 설정하지 않는다.
  • 여러 폴더에 같은 접근 권한을 허용할 경우 한 부모(parent) 폴더를 만들고 해당 폴더들을 모두 한군데 모으고 권한 설정을 부모 폴더에 해 주면 관리상 편리하다.
  • 공유 폴더는 더 이상 사용하지 않을 경우 반드시 해지시킨다.
  • '관리목적 공유폴더'의 경우에는 삭제하더라도 재부팅 시 다시 설정이 되므로 위에서 언급한대로 관리자 계정의 패스워드를 강화하는 것으로 보안을 강화하도록 한다.

    [출처] 안철수 연구소 '바이러스 상식' 中  
  •  


    관련글 더보기