Microsoft MVP성태의 닷넷 이야기
Windows: 12. 비스타는 안전한 윈도우인가? [링크 복사], [링크+제목 복사],
조회: 21715
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 



우선, 다음의 기사를 읽어보십시오.

비스타는 안전한 윈도우인가? 연재1
; http://vista.golbin.net/index.php?pl=756

재미있는 기사입니다. 만약 이 기사가 정말 맞다면, 개인적으로도 비스타의 안전성에 문제가 있다고 판단됩니다. 이것은 마치, 예전에 웹 브라우저상에서 악의적인 코드를 DHTML Edit 컨트롤을 사용하여 우회해서 실행시킨 것과 같습니다. 원천적으로 보안을 해결한 것이 아니라, 특정 부분에 대한 땜질식의 보안 강화를 시킨 것과 다를 바가 없다는 것인데요.

하지만, 위의 기사의 댓글을 보시면, "지나가던.." 님과 "Z.File" 님의 의견에서 UAC가 뜬다고 언급하고 있습니다. 문제의 단계는 "사진 4"번과 "사진 5"번 사이에 UAC 관리자 획득 권한 창이 뜨는 지에 대한 유무입니다.

댓글 등에서 이미 판결이 났지만, 그것은 분명한 UAC 확인창이었으니, 그 기사는 완전히 잘못된 정보를 유포하고 있는 것입니다. 혹시나, 몇몇 사람들이 기사만 보고, "댓글"을 읽지 않는다면 (실제로 RSS Feed에는 댓글이 실리지 않습니다.) 오해하기 딱 좋은 기사입니다. 그리곤, 그러한 사람들에 의해서, 무슨 대단한 공신력이 있는 사이트에서 분석이 나온 것처럼 퍼져나갈 수도 있을 테고요.




여기서 중요한 것은, "쿠도군" 님이 UAC 기능에 대한 이해가 그다지 정확하지 않다는 것입니다. 화면이 어두워지면서 별도의 데스크톱 보안 단위에서 실행되는 것이 분명한 UAC 확인창임에도 불구하고 그것의 대화창에 씌여져 있는 문구를 보고 UAC가 아니라고 한 것입니다.

솔직히, 이 기사를 보면서 느끼게 되는 것이 많군요. 저는 개인적으로 그 토픽에서 사용된 악성 코드를 직접 테스트해 볼 생각은 없었습니다. 즉, 저 역시 그 기사를 그대로 믿으려 했고 분명 심각한 보안 결함이라고 여겼습니다. 그런데, 다행히도, "지나가던.." 님과 "Z.File" 님이 직접 그 (주소가 알려지지 않았던) 사이트를 알아내는 수고로움을 더해서 테스트해 보신 후, 명백히 잘못된 정보라고 밝혀 주셨습니다.

그 두 분의 빠른 대응이 아니었다면, 정말 수많은 사이트들에서 비스타가 비하될 수 있었을 지도 모를 일입니다.




전체적으로 완전히 잘못된 기사이긴 하지만, "쿠도군"이 "의도"한 바를 생각해 봐야 할 것 같습니다. 즉, "UAC 확인창"은 실제로 대부분의 사용자에 의해서 간단히 "확인"으로 눌려질 수 있고 그로 인해 그다지 실질적인 보안 역할을 해주지는 못할 거라는 것입니다.

그럼, 쿠도군이 의도한 대로 보안 설정을 하는 방법이 과연 없을까요? 물론 있습니다. 방법은, "일반 사용자 계정"으로 로그인 하고, "로컬 보안 정책"의 "로컬 정책/보안옵션"에서 "사용자 계정 컨트롤: 표준 사용자 계정일 때 권한 상승 확인 방법 속성" 값을 "권한 상승 요청 자동으로 거부" 값으로 설정하는 것입니다. 그렇게 한다면, 관리 권한이 필요한 모든 동작들은 거부되게 됩니다.

하지만, 그것을 사용자가 원할까요?

여기서, 다시 이야기는 돌아가서 Windows XP 시절로 거슬러 올라가 볼 필요가 있습니다. 그렇습니다. Windows XP에서도 이미 그와 같은 보안 기능이 구현되어져 있었습니다. 관리자 계정이 아닌 일반 사용자 계정으로 로그인을 하게 되면, 아예 설치조차 안 되는 프로그램이 대부분이었습니다. 그런 경우, 사용자는 로그 오프를 한 다음 관리자 계정으로 로그인 하고 원하는 프로그램을 설치한 후 다시 일반 사용자 계정으로 돌아와야 했습니다.

문제는, 대다수의 Windows XP 사용자들이 그러한 불편을 원하지 않았으며 그로 인해 "관리자" 계정으로 컴퓨터를 사용했다는 것에 있습니다. 이쯤 되면, 질문은 오히려 바뀌어야 한다고 생각되어질 수 있겠습니다.

"
Windows가 정말로 안전하지 않은 운영체제인가? 
오히려 사용자들 스스로가 Windows XP를 안전하지 않은 상태로 사용하고 있었던 것은 아닌가?
"




[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 11/29/2022]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2007-01-08 12시19분
[WaterStone] 원문 글은 이미 지워졌군요... 함 보고 싶었는데...
사실 비스타의 UAC는 파워 유저에겐 불편한 기능임에 틀림없습니다만
일반 사용자들을 바이러스나 스파이웨어로 부터 보호하는데 기여를 할 것임은 분명해 보입니다.
다만 다수의 ActiveX를 사용하는 국내 여러 사이트와 편의적으로 어플리케이션을 개발하는 개발자들이
많은 코드를 수정해야 한다는 아픔이 물밀듯이 밀려온다는 것이지요.
[guest]
2007-01-08 01시21분
제가, 지울 것을 권했는데... 정말 삭제를 했네요. (블로그 저자 스스로도 다소 충격이 있었나 봅니다.)

어쨌든, UAC는 ... 개인적으로도 참 그렇습니다. 파워 유저들은 분명 불편함을 벗어나기 위해 "Disable UAC"나 "로컬 보안 정책" 등의 설정을 고려해 볼 수 있겠지만... 보안 관계상 어쩔 수 없다는 것을 또한 파워 유저들은 잘 알기 때문에 불편함을 감수하면서 켜야만 할지도 모르겠습니다. (저도 얼마 전부터 다시 켜고 있거든요. ^^;)

그래도, 이렇게 명시적인 제한을 두었다는 것을 계기로, 이후 개발되는 많은 프로그램들이 최소 권한(Least Privilege) 상태에 잘 적응했으면 합니다. ^^
kevin25

... 121  122  123  124  125  126  [127]  128  129  130  131  132  133  134  135  ...
NoWriterDateCnt.TitleFile(s)
2879정성태3/3/201526680개발 환경 구성: 259. Visual Studio 없이 Visual C++ 컴파일하는 방법
2878정성태2/28/201527536.NET Framework: 503. == 연산자보다는 Equals 메서드의 호출이 더 권장됩니다. [3]파일 다운로드1
2877정성태2/28/201521743.NET Framework: 502. 연산자 재정의(operator overloading)와 메서드 재정의(method overriding)의 다른 점 - 가상 함수 호출 여부 [3]파일 다운로드1
2876정성태2/27/201524216VS.NET IDE: 98. IntegraStudio - Visual Studio에서 Java 프로그램 개발
2875정성태2/26/201522822디버깅 기술: 72. Visual Studio 2013에서의 sos.dll 사용 제한
2874정성태2/26/201519573디버깅 기술: 71. windbg + 닷넷 디버깅 (2) - null 체크 패턴
2873정성태2/25/201537039.NET Framework: 501. FtpWebRequest 타입을 이용해 FTP 파일 업로드 [4]파일 다운로드1
2872정성태2/25/201521225디버깅 기술: 70. windbg + 닷넷 디버깅 (1) - 배열 인덱스 사용 패턴
2871정성태2/24/201525202개발 환경 구성: 258. 윈도우 8.1에서 방화벽과 함께 FTP 서버 여는 (하지만, 권장하지 않는) 방법 [1]
2870정성태2/24/201526334개발 환경 구성: 257. 윈도우 8.1에서 방화벽과 함께 FTP 서버 여는 방법
2869정성태2/23/201520311.NET Framework: 500. struct로 정의한 값 형식(Value Type)의 경우 Equals 재정의를 권장합니다.파일 다운로드1
2868정성태2/23/201524820VS.NET IDE: 97. Visual C++ 프로젝트 디버깅 시에 Step-Into(F11) 동작이 원치 않는 함수로 진입하는 것을 막는 방법 [2]
2867정성태2/23/201518516오류 유형: 273. File History - Failed to initiate user data backup (error 80070005)
2866정성태2/23/201520361오류 유형: 272. WAT080 : Failed to locate the Windows Azure SDK. Please make sure the Windows Azure SDK v2.1 is installed.
1868정성태2/20/201517645오류 유형: 271. The type '...' cannot be used as type parameter 'TContext' in the generic type or method 'System.ServiceModel.DomainServices.EntityFramework.LinqToEntitiesDomainService<T>
1866정성태2/20/201518554오류 유형: 270. "aspnet_regiis -i" 실행 시 0x00000006 오류 해결 방법
1865정성태2/20/201519862.NET Framework: 499. 특정 닷넷 프레임워크 버전 이후부터 제공되는 타입을 사용해야 한다면?
1864정성태2/18/201524851.NET Framework: 498. C#으로 간단하게 만들어 본 ASCII Art 프로그램 [2]파일 다운로드1
1862정성태2/18/201528690.NET Framework: 497. .NET Garbage Collection에 대한 정리 [6]
1861정성태2/18/201524040.NET Framework: 496. 마우스 커서가 놓인 지점의 문자열 얻는 방법 [1]파일 다운로드1
1860정성태2/18/201523869.NET Framework: 495. CorElementType의 요소 값 설명파일 다운로드1
1859정성태2/17/201524265Windows: 106. 컴퓨터를 재부팅하면 절전(Power Saver) 전원 모드로 돌아가는 경우
1858정성태2/16/201534266Windows: 105. 자동으로 로그아웃/잠김 화면 상태로 전환된다면? [2]
1857정성태2/16/201522275.NET Framework: 494. 값(struct) 형식의 제네릭(Generic) 타입이 박싱되는 경우의 메타데이터 토큰 값파일 다운로드1
1856정성태2/15/201521254.NET Framework: 493. TypeRef 메타테이블에 등록되는 타입의 조건파일 다운로드1
1855정성태2/10/201520800개발 환경 구성: 256. WebDAV Redirector - Sysinternals 폴더 연결 시 "The network path was not found" 오류 해결 방법
... 121  122  123  124  125  126  [127]  128  129  130  131  132  133  134  135  ...