Microsoft MVP성태의 닷넷 이야기
Windows: 12. 비스타는 안전한 윈도우인가? [링크 복사], [링크+제목 복사],
조회: 21606
글쓴 사람
정성태 (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

... [76]  77  78  79  80  81  82  83  84  85  86  87  88  89  90  ...
NoWriterDateCnt.TitleFile(s)
12036정성태10/14/201925487.NET Framework: 866. C# - 고성능이 필요한 환경에서 GC가 발생하지 않는 네이티브 힙 사용파일 다운로드1
12035정성태10/13/201919593개발 환경 구성: 461. C# 8.0의 #nulable 관련 특성을 .NET Framework 프로젝트에서 사용하는 방법 [2]파일 다운로드1
12034정성태10/12/201918917개발 환경 구성: 460. .NET Core 환경에서 (프로젝트가 아닌) C# 코드 파일을 입력으로 컴파일하는 방법 [1]
12033정성태10/11/201923132개발 환경 구성: 459. .NET Framework 프로젝트에서 C# 8.0/9.0 컴파일러를 사용하는 방법
12032정성태10/8/201919252.NET Framework: 865. .NET Core 2.2/3.0 웹 프로젝트를 IIS에서 호스팅(Inproc, out-of-proc)하는 방법 - AspNetCoreModuleV2 소개
12031정성태10/7/201916509오류 유형: 569. Azure Site Extension 업그레이드 시 "System.IO.IOException: There is not enough space on the disk" 예외 발생
12030정성태10/5/201923320.NET Framework: 864. .NET Conf 2019 Korea - "닷넷 17년의 변화 정리 및 닷넷 코어 3.0" 발표 자료 [1]파일 다운로드1
12029정성태9/27/201924141제니퍼 .NET: 29. Jennifersoft provides a trial promotion on its APM solution such as JENNIFER, PHP, and .NET in 2019 and shares the examples of their application.
12028정성태9/26/201919102.NET Framework: 863. C# - Thread.Suspend 호출 시 응용 프로그램 hang 현상을 해결하기 위한 시도파일 다운로드1
12027정성태9/26/201914817오류 유형: 568. Consider app.config remapping of assembly "..." from Version "..." [...] to Version "..." [...] to solve conflict and get rid of warning.
12026정성태9/26/201920235.NET Framework: 862. C# - Active Directory의 LDAP 경로 및 정보 조회
12025정성태9/25/201918546제니퍼 .NET: 28. APM 솔루션 제니퍼, PHP, .NET 무료 사용 프로모션 2019 및 적용 사례 (8) [1]
12024정성태9/20/201920470.NET Framework: 861. HttpClient와 HttpClientHandler의 관계 [2]
12023정성태9/18/201920935.NET Framework: 860. ServicePointManager.DefaultConnectionLimit와 HttpClient의 관계파일 다운로드1
12022정성태9/12/201924878개발 환경 구성: 458. C# 8.0 (Preview) 신규 문법을 위한 개발 환경 구성 [3]
12021정성태9/12/201940677도서: 시작하세요! C# 8.0 프로그래밍 [4]
12020정성태9/11/201923851VC++: 134. SYSTEMTIME 값 기준으로 특정 시간이 지났는지를 판단하는 함수
12019정성태9/11/201917401Linux: 23. .NET Core + 리눅스 환경에서 Environment.CurrentDirectory 접근 시 주의 사항
12018정성태9/11/201916205오류 유형: 567. IIS - Unrecognized attribute 'targetFramework'. Note that attribute names are case-sensitive. (D:\lowSite4\web.config line 11)
12017정성태9/11/201920027오류 유형: 566. 비주얼 스튜디오 - Failed to register URL "http://localhost:6879/" for site "..." application "/". Error description: Access is denied. (0x80070005)
12016정성태9/5/201920025오류 유형: 565. git fetch - warning: 'C:\ProgramData/Git/config' has a dubious owner: '(unknown)'.
12015정성태9/3/201925439개발 환경 구성: 457. 윈도우 응용 프로그램의 Socket 연결 시 time-out 시간 제어
12014정성태9/3/201919195개발 환경 구성: 456. 명령행에서 AWS, Azure 등의 원격 저장소에 파일 관리하는 방법 - cyberduck/duck 소개
12013정성태8/28/201922100개발 환경 구성: 455. 윈도우에서 (테스트) 인증서 파일 만드는 방법 [3]
12012정성태8/28/201926663.NET Framework: 859. C# - HttpListener를 이용한 HTTPS 통신 방법
12011정성태8/27/201926236사물인터넷: 57. C# - Rapsberry Pi Zero W와 PC 간 Bluetooth 통신 예제 코드파일 다운로드1
... [76]  77  78  79  80  81  82  83  84  85  86  87  88  89  90  ...