인터넷에서 다운로드 받은 파일을 실행하려 하면 종종 이렇게 보안 경고 창이 뜨게 됩니다. 특히 포터블 프로그램들은 대부분 이 경고창이 뜬다고 보시면 되겠습니다.

물론 아래 그림처럼 체크박스를 풀거나, 우클릭 - 속성 - 일반 탭에서 차단 해제 버튼을 눌러줘도 되겠지만, 다수의 파일에 대해서 일일이 수동으로 처리하는건 좀 아니다 싶습니다.


그렇다면 이 난국을 어떻게 해쳐가야 할까요?

일단 원인을 파악하기 위해 ADS에 대해 알아봅시다.

Alternate data streams (ADS)

Alternate data streams allow more than one data stream to be associated with a filename, using the filename format "filename:streamname" (e.g., "text.txt:extrastream"). Alternate streams are not listed in Windows Explorer, and their size is not included in the file's size. Only the main stream of a file is preserved when it is copied to a FAT-formatted USB drive, attached to an e-mail, or uploaded to a website. As a result, using alternate streams for critical data may cause problems. NTFS Streams were introduced in Windows NT 3.1, to enable Services for Macintosh (SFM) to store Macintosh resource forks. Although current versions of Windows Server no longer include SFM, third-party Apple Filing Protocol (AFP) products (such as Group Logic's ExtremeZ-IP) still use this feature of the file system.

Malware has used alternate data streams to hide its code;[15] some malware scanners and other special tools now check for data in alternate streams. Microsoft provides a tool called Streams[16] to allow users to view streams on a selected volume.

Very small ADS are also added within Internet Explorer (and now also other browsers) to mark files that have been downloaded from external sites: they may be unsafe to run locally and the local shell will require confirmation from the user before opening them.[17] When the user indicates that he no longer wants this confirmation dialog, this ADS is simply dropped from the MFT entry for downloaded files.

Some media players have also tried to use ADS to store custom metadata to media files, in order to organize the collections, without modifying the effective data content of the media files themselves (using embedded tags when they are supported by the media file formats such as MPEG and OGG containers); these metadata may be displayed in the Windows Explorer as extra information columns, with the help of a registered Windows Shell extension that can parse them, but most media players prefer to use their own separate database instead of ADS for storing these information (notably because ADS are visible to all users of these files, instead of being managed with distinct per-user security settings and having their values defined according to user preferences).

출처 : http://en.wikipedia.org/wiki/NTFS


꼬부랑 글씨라서 읽어보고 싶지 않으실 텐데, 빨간색으로 표시해둔 부분이 이 글의 핵심입니다. 한마디로 요약하자면 인터넷 익스플로러가(다른 웹 브라우저도 마찬가지) 파일을 다운로드 받을 때 아주 작은 크기의 ADS를 남긴다는 것입니다. 그리고 윈도우 로컬 쉘(explorer.exe)이 ADS를 체크하고 경고창을 띄우는 것이죠.

인터넷에서 다운로드 받는 파일은 각각에 대해 NTFS의 MFT 영역에 Zone.Identifier 라는 ADS가 생성됩니다. 그리고 여기에는 보통 ZoneId=3 이라는 값이 들어가게 되는데 여기서 3은 일반적인 인터넷 사이트를 말합니다.




별로 중요하지는 않지만 여기서 말하는 ZoneId란

1 - 로컬 인트라넷
2 - 신뢰할 수 있는 사이트
3 - 인터넷
4 - 제한된 사이트



그래서 해결책이 뭐냐구요? 보통은 이렇게 합니다. 인터넷에서 파일을 다운로드 받을 때 MFT 영역에 Zone.Identifier 라는 ADS를 생성하지 않도록 설정하는 것이죠. 윈도우 프로페셔널 이상 사용자라면 로컬 그룹 정책 편집기(gpedit.msc)로 들어가서

사용자 구성 - 관리 템플릿 - Windows 구성 요소 - 첨부 파일 관리자 - 첨부 파일에 영역 정보를 보존하지 않음 - 사용


같은 효과를 레지스트리로 처리하려면

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Attachments]
"SaveZoneInformation"=dword:00000001

같은 효과를 커맨드로 처리하려면 (관리자 권한으로 명령 프롬프트 실행)
※ 한 줄짜리 커맨드인데 가로 폭이 좁아서 두 줄로 표현되었습니다.

REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Attachments" /v SaveZoneInformation /t REG_DWORD /d 1 /f


위 내용을 적용하면 끝인가? 아닙니다. 위 내용을 적용한 다음 로컬 쉘(explorer.exe)을 재시작 해줘야 적용됩니다. 그러니까 그냥 재부팅 한번 해주시면 됩니다.

그런데 문제가 두 가지 더 있습니다.

첫째는, 위 내용이 인터넷 익스플로러에만 적용된다는 것이고

둘째는, 위 내용을 적용해도 앞으로 다운로드 받을 파일에만 Zone.Identifier가 생성되지 않지, 기존에 이미 Zone.Identifier 가 생성된 파일들에 대해선 수동으로 삭제를 해줘야 한다는 것입니다.

첫번째 문제는 제가 어쩔 수 없는 부분이고, 두번째 문제는 제거하는 툴이 있습니다.

http://technet.microsoft.com/en-us/sysinternals/bb897440

위 사이트에서 Streams를 다운로드 받아 명령 프롬프트를 관리자 권한으로 열고 작업하시면 됩니다.

예제) streams.exe -s -d c:\

모든 드라이브에 다 적용하고 싶은데 일일이 실행하기 귀찮으시다면... 배치파일 하나 만들어 드리겠습니다. 작업시작.cmd 파일에 우클릭 해서 관리자 권한으로 실행해주세요. 모든 드라이브에 대해 한꺼번에 처리해줍니다.


중간에 Error opening 메시지 많이 나오는건 무시하셔도 됩니다.
신고
Share
  1. 가려운 곳을 긁어주시는~
    2011.07.15 00:34 신고

    은근히 귀찮았던 것을 해결해주시네요. 고맙습니다.

  2. BlogIcon 낭만킹
    2011.07.15 08:55 신고

    음헤헤.. 감사합니다.
    그래도 좀 어렵네요....-_ㅠ;

  3. 행인
    2011.07.15 10:57 신고

    좋은 팁 감사합니다^^

  4. 고백센터
    2011.07.15 15:27 신고

    와... 정말 항상 감사합니다!

  5. 사랑해
    2011.07.15 15:52 신고

    징그럽게 경고창 뜨던데 해결 책이 있군요........감사 합니다.

  6. BlogIcon cantata
    2011.07.16 10:00 신고

    저런 것 기타 등등 윈도우7이 사용하는데 불편하고 에러메세지를 종종띄워서...
    결국 업뎃도 안되는 XP로 다운그레이했네요 ㅎ

  7. BlogIcon hongyang
    2011.07.16 21:19 신고

    Fat32는 파일경고를 안 하나 보죠?

  8. 이형탁
    2011.07.18 12:30 신고

    ㅡcool!!ㅡ;;

  9. ㅋㅋ이 왜 차단되는 이름인가요
    2011.07.18 13:33 신고

    저런 보안창이 안뜨고 바로 실행되면, 좀... 안전하지 않을 것 같은데요?

    저는 저런 보안창 안떠서 누군가의 서버파일을 실행할 뻔했다고요.

    그 땐 백신도 없었는데, SiteGuard Downloader가 뒤늦게 잡아냄.

  10. 오리짱
    2011.07.18 17:21 신고

    ㅎㅎ 보안 경고 사실 귀찮을때도 많지만
    가끔은 보안 경고창 하나로 인해 잠시 쉬어갈 시간이 생기네요

    차한잔 마실 여유조차 없을때 (넘 일에 열중하다보니 흠 ㅎㅎ)
    경고차 하나 띄워놓고 차 한잔 마시고 다시 고고~ ㅎㅎ

    시원한 여름엔 얼음 동동 띄운 미숫가루가 최고인거 같아요~

    회사 생활 잘 하고 계시죠? ^^

    • BlogIcon snpbox
      2011.07.18 20:36 신고
      수정 및 삭제

      오리짱님 오랜만이네요~~
      회사는 뭐 그럭저럭 다니고 있습니다. ㅎㅎ
      오늘부터 시작된 폭염, 항상 건강 챙기세요. ^^

  11. 질문있어요
    2011.07.18 18:04 신고

    안녕하세요.
    스누피님 블로그에서 유용한 정보 많이 얻어가는 사람입니다.
    특히 아이폰 mp4 변환기 제작해주셔서 너무 감사해요~^^

    질문이 하나 있는데 일단 이 포스팅과는 무관합니다만
    해당 프로그램 게시물 작성일자가 꽤 오래전인지라 부득이하게 이글에 질문을 남깁니다.
    문제가 된다하면 자삭 또는 스누피님께서 직접 삭제해주셔도되요.

    스누피님이 만드신 아이폰용mp4변환기에서 자막과 영상을 통합할 때의 질문인데요.
    자막파일과 영상파일의 이름을 동일하게 변경하고 영상변환버튼을 누르면 자막과 영상이 통합된 파일이 생성되는데...!
    이때 질문이 하나 있습니다.
    하나의 동영상에 두개의 자막(영어+한글)을 넣으려면 어떻게 해야하는지요?
    무궁화꽃이피었습니다.avi, 무궁화꽃이피었습니다.smi, 무궁화꽃이피었습니다eng.smi
    이런 형식으로 이름이 설정된게 보통인데...
    eng파일을 srt로 변환해볼까요~?

    다시 한번 좋은 프로그램 만들어주신것에 감사드리며 글을 마칩니다.

  12. BlogIcon 만점강사
    2011.08.04 08:33 신고

    맨 밑에 올려주신 첨부파일이요. Streams.zip이거 쉽게 만들어주셔서 그냥 실행하고 끝내버렸는데... 좀 찜찜하네요.
    전 이글을 찾게 된 이유가 네트워크 드라이브에 있는 파일을 실행할때 보안경고가 안뜨게 하는 방법 없을까 하다가 보네 됐는데... 파일 실행하고 나니까 뭔가 모를 찜찜함이 있는데 원상 복귀가능한가요?
    아니면 이걸 실행하면 바이러스 같은 것이나 진짜 제가 실행원치 않는 파일도 경고창이 안뜨는건 아닌가요?

    • BlogIcon snpbox
      2011.08.04 09:11 신고
      수정 및 삭제

      현재 하드에 들어있는 파일에 대해서만 적용이 되는 것이고, 앞으로 다운로드 받을 파일은 경고창 뜹니다.

      물론 중간에 있는 레지스트리 부분을 적용하지 않았을 때 말이죠.

  13. ㅁㄴㅁ
    2012.09.30 12:59 신고

    아 확실한 파일이면 그냥 보안경고 해제를 눌러주면 되는군요 ㅋㅋ

  14. dkfh
    2016.09.01 16:25 신고

    이거 끝나면 메세지가 발생하나요?