290 likes | 460 Views
Windows Vista 및 Internet Explorer 7 보안 기능. 목차. Windows Vista 상의 보안기능 - 사용자 계정 컨트롤 - 보호 모드 - 보호 모드에서 ActiveX 컨트롤 일반적인 IE 7 보안기능 G4C 테스트 결과 일반적인 IE7 보안기능. Windows Vista 에서의 보안 기능. Windows Vista 보안. 사용자 계정 컨트롤 (UAC)*. 보호모드 *. ActiveX control. BHO. Internet Explorer7.
E N D
목차 • Windows Vista 상의 보안기능 - 사용자 계정 컨트롤- 보호 모드- 보호 모드에서 ActiveX 컨트롤 • 일반적인 IE 7 보안기능 • G4C 테스트 결과 • 일반적인 IE7 보안기능
Windows Vista 보안 사용자 계정 컨트롤(UAC)* 보호모드* ActiveX control BHO Internet Explorer7 Applications… Windows Vista 컴퓨터의 보안이 뚫렸을 경우 악성 프로그램 또는 추가기능(Addon)으로부터 피해 정도를 줄이기 위한 조치
사용자 계정 컨트롤(UAC) • 모든 어플리케이션은 로그인한 계정과는 상관 없이 표준 사용자 권한으로 실행 • Administrator 계정을 제외한 모든 사용자 계정(관리자 그룹에 속한 사용자 포함)에 대해 예외없이 적용 • 기본적으로 Administrator 계정은 사용 안 함으로 설정 • 사용자 권한으로 실행될 때 • 시스템 폴더에 쓰기 권한이 없으며 로그인한 계정 폴더에만 쓰기 허용 • 레지스트리에 대한 쓰기 권한도 HKCU만 허용 • 관리자 권한이 필요한 Win32 API 호출 실패 • 권한 상승 과정을 통해 관리자 권한으로 어플리케이션 실행 가능
UAC 배경 • 현재 대다수의 사용자는 관리자 계정으로 컴퓨터를 사용 • 모든 리소스에 대한 읽기/쓰기/실행 권한을 가짐 • 모든 윈도우 권한(privilege) 사용 가능 • 자신도 모르게 바이러스나 맬웨어와 같은 악성 소프트웨어에 노출될 가능성이 높음 • 표준 사용자 계정을 사용하지 못했던 이유? • 기본 윈도우 기능이 동작하지 않음 • 예) 시간 설정, 프린터/네트워크 구성 • 어플리케이션 설치 불가 • 서비스 콜을 줄이기 위해 관리자 계정을 사용을 유도
UAC 장점 • 모든 어플리케이션은 사용자 동의를 받지 않은 경우에는 표준 사용자 권한으로 실행됨으로 맬웨어 공격의 위험성이 감소 • 회사 컴퓨터를 관리된 환경으로 구축하여 TCO절감 가능 • Gatner Group 자료: Security Holes Increase Windows Client TCO, 14 October 2004 • 관리된 PC: 사용자 컴퓨터를 시스템으로 관리함으로써 보안과 생산성 증대 • 실제 가트너 그룹의 경우 관리된 환경에서 PC 한 대당 40% TCO 절감 효과 • 고객센터 전화 상담 감소 • 사용자 생산성 향상 및 컴퓨터 가동시간 증가
UAC 호환성 및 예외 • 기존 어플리케이션 호환을 위해 • 설치 프로그램은 자동으로 관리자 권한으로 실행될 수 있도록 권한 상승 창이 표시 (Installation detection) • 시스템 폴더나 HKLM 레지스트리에 데이터를 쓸 때 현재 사용자의 특정 위치로 redirect됨 (Virtualization) • UAC가 적용안되는 예외 • Administrator 계정으로 로그인한 경우 • 사용자 계정 컨트롤을 사용 안 함으로 설정한 경우
권한 상승 (Elevation) • 어플리케이션의 실행 권한을 표준 사용자 권한에서 관리자 권한으로 변경하는 과정 3. 관리자 권한에서 프로그램 실행 • 어플리케이션 실행 2. 권한 상승 창이 표시되면 동의 • 권한 상승이 발생하는 경우 • 사용자가 직접 권한 상승할 때 (관리자 권한으로 실행) • 관리자 권한으로 마킹된 실행 파일을 실행할 때 • 설치 프로그램을 실행할 때 • 프로그램 호환성 탭에 관리자 권한으로 실행하도록 설정된 경우
권한 상승 창 • 크게 두 종류의 권한 상승 창이 존재 • 사용자 동의를 구하는 창 • 자격 인증을 필요로 하는 창 • 기본적으로 로그인한 사용자 계정에 따라서 달리 표시 • 일반 사용자 계정: 자격 인증 창 • 관리자 계정: 사용자 동의 창 • 그룹 정책이나 로컬 보안 정책에 의해 변경 가능
가상화 (Virtualization) • 어플리케이션이 시스템 폴더 또는 HKLM 레지스트리에 쓰기 수행할 때 사용자 프로파일 폴더로 위치를 변경하는 기능 • 변경되는 위치 • 파일: %user’s profile%\AppData\local\virtualstore • 폴더: HKCU\software\classes\virtualstore • 소스 코드를 수정할 수 없는 LOB 어플리케이션을 위해 임시적으로 만든 기능으로 향후 제거 예정. • 작업 관리자를 통해 특정 프로세스가 가상화를 사용하는지 유무 설정 가능
데모 • 사용자 계정 컨트롤 하에서 프로그램 설치 및 실행 • 사용자 계정 컨트롤 설정 • 가상화(Virtualization)
보호 모드(Protected Mode) • IE가 임시인터넷 폴더(TIF)와 같은 낮은 신뢰도 (integrity)를 가진 자원을제외한 위치에 쓰거나 윈도우 메시지를 보내는 것을 제한 • Mandatory Integrity Control (MIC) 에 의해 파일이나 레지스트리 키와 같은 높은 integrity 값을 가진 자원에 대해 쓰기 금지 • UI Privilege Isolation (UIPI)에 의해 더 높은 integrity 프로세서에 윈도우 메시지를 보낼 수 없음 • 보호 모드는 Windows Vista 에서만 동작 • 권한 상승할 수 있도록 두 가지 브로커 객체를 제공 • 호환성 계층을 통해 제한적으로 IE가 임시 인터넷 폴더(TIF)이외에 쓰기가 가능
보호모드(계속) ActiveX 컨트롤 실행 시
브로커 프로세스 • Internet Explorer와 addon이 사용자 동의하에 권한상승을 하도록 하는 2개의 브로커 프로세스를 제공 • 사용자 권한 브로커(IE Users.exe): Internet Explorer에서 특정 함수가 낮은 신뢰도를 가진 영역 이외의 위치에 파일을 저장할 수 있도록 하는 프로세스 • 관리자 권한 브로커(IEInstal.exe): Internet Explorer에서 ActiveX 컨트롤을 설치를 가능하게 하는 프로세스
호환성 계층 • IE또는 IE에서 실행하는 Addon이보통 신뢰도를 가진 파일이나 레지스트리 키에 쓸려고 할 때 가상의 낮은 신뢰도를 가진 위치로 옮김(redirect) • 시스템 폴더나 HKLM은 해당이 안됨 • 옮기는 위치 • HKCU\Software\Microsoft\Internet Explorer\Low Rights\Virtual • Documents and Settings\%userprofile%\Local Settings\Temporary Internet Files\Virtual
보호모드에서 ActiveX 개발 • ActiveX 컨트롤 대신에 대체기술을 사용 • AJAC과 DHTML를 이용한 기술 • 안전한 사이트를 위해 Secure Socket Layer로대체 • 사용자 권한에서만 ActiveX 컨트롤 실행 • 자체 데이터 파일이 필요한 경우 시스템 폴더가 아닌 보호모드에서 쓰기 가능한 폴더 사용 • 관리자 권한이 필요한 컨트롤의 경우에도 관리자 권한이 필요한 부분을 최소화
디자인 변경 사항과 호환성 인터넷 익스플로러 7.0의 디자인 목표 • 신기술과 표준을 수용, 보다 안전, 더욱 편리한 웹 플랫폼 • 개발자와 운영자, 그리고 사용자 모두에게 기회이며 도전 • 웹 표준 수용과 버그 수정으로 인한 도전 • HTML4.01, CSS 2.1 사양의 준수 그리고 표준(Strict) 모드에 대한 개선 • 하위 호환성 유지되고 있으나 표준으로 선회할 필요 • 강화된 보안으로 인한 도전 • ActiveX Opt-In, 스푸핑(Spoofing), 교차도메인스크립팅(XSS) 방지 • 인터넷영역(Zone)에서는 디자인 자체 변경이나 일부 기능 포기 불가피 • 사용자 인터페이스 변화로 인한 도전 • 탭 환경은 새 창을 띄우는 방식, 세션 공유, 보안 레벨 등에에 영향 • 변경 사항에 대한 이해가 선행되고, 필요할 경우 소스 수정 1 2 3
웹 표준의 폭넓은 수용 • <BASE> 요소는 <HEAD>에 반드시 위치 • 많은 사이트가 대부분 <HTML> 선언 전, 혹은 <BODY>의 개별 요소에 적용하였으나, HTML 3.01 사양을 준수하도록 개선 • 외부 소스를 참조하는 요소 전에 선언해야 함 • <SELECT> 요소가 이제는 Windowless Element • <SELECT>만 Windowed element 이어서 Zoom, Z-Order에 문제 • 이전까지의 해결책 : How the Z-index Attribute Works for HTML Elements (KB177378) • 인터넷 익스플로러 7.0에서는 Windowless Element로 개선, 그러나, 이전 CSS가 제대로 동작하는 확인 필요
웹 표준의 폭넓은 수용 • SSL2.0 대신 SSL3.0 과 TLS1.0이 기본 • SSL2.0을 사용하는 사이트에 기본 설정으로 접속하면, • “페이지를 표시할 수 없다”라는 에러 메세지 출력 • 기본 옵션 설정에 SSL2.0이 빠져 있기 때문 • 성능과 보안의 측면에서 TLS1.0으로 선회하는 것이 급선무
강화된 보안 • 인터넷으로부터 로컬 리소스에 대한 접근이 차단된다. • 로컬 리소스에 대한 접근은 타 브라우저에서 이미 막혀 있었고 있었다고 해도 보안 버그에 해당, 손쉬운 트릭으로 정보 유출 가능 • 이미지 등을 업로드하기 전 확인을 위해 로컬 이미지를 미리보기하려고 하면 이미지가 표시되지 않는 이슈 등 • 주소표시줄과 상태표시줄이 항상 보인다 • 피싱에 걸려든 일반 사용자는 주소 줄이 없으면 신원확인 어려움 • 주소 줄과 보안열쇠는 신뢰할 수 있는 정보를 보여주므로 항상 표시
강화된 보안 (계속) • 상태표시줄의 내용을 스크립트로 표시할 수 없다 • 교차 도메인 스크립팅을 이용하려는 악의적인 피싱 메일의 경우, 해당 사이트 링크의 “onMouseOver” 이벤트를 조작하여 사용자 유인 • 컨텐츠 로딩 상태 등의 여러 가지 관련 정보를 상태 표시줄을 통해 보여주는 사이트가 많은데 경고나 에러 없이 차단됨 • windows.status, window.defaultStatus 가 영향 받음 • 자바스크립트의 window.prompt()가 차단된다. • 피해자를 실제 사이트에 유인한 다음, 교차 도메인 스크립팅을 이용하여 마치 윈도우 로그온 창이나 혹은 암호 확인 창인 것처럼 위장하는 방식을 차단하기 위함 • 몇 몇 사이트는 사용자 정보를 간단한 자바 스크립트 프롬프트로 전달 받는데 이것이 모두 차단됨
강화된 보안 (계속) • 새 창 열기 방식이 대폭 수정되었다. • 사용자가 제어할 수 없도록 작거나 큰 크기의 창을 열거나, 접근할 수 없는 위치에 새 창을 띄워, 브라우징을 방해하거나 개인 정보를 추출해가는 행위를 방지하기 위함 • 피싱 사이트로 유도한 후, 보이지 않는 창에서 다시 새로운 창에 원래의 사이트를 보이고, 이를 통해 개인 정보를 침탐할 가능성이 있음, 그러나, 종료 시에 아무런 확인창 없이 닫히는 보안 위험 제거 • iFrame에서의 보안이 더욱 강화되었다. • iFrame을 보이지 않게 만들고 위치나 크기를 조정하여, 여기서 프로그램이나 스크립트를 실행하려는 모든 시도를 방지 • 타 사이트에서 이미지나 데이터를 받아 iFrame에 넣고 이 크기와 사이즈를 조정하려고 하면 Access Denied 에러가 난다. • ResizeTo(), ResizeBy(), MoveTo(), MoveBy() 모두 해당됨
강화된 보안 (계속) • ActiveX 옵트인(Opt-In) 정책 사항 • 사용자가 동의하지 않은 ActiveX는 다운로드, 등록, 실행 모두 차단 • 미리 설치된(Pre-Installed) ActiveX에 대한 사용자의 인가 필요 • HKLM\Software\Microsoft\Windows\CurrentVersion\Ext\PreApproved 아래에 인터페이스 GUID값을 등록하면 인가 필요 없음 • 사용자 인가를 거친 콘트롤이라해도, - 도메인 간 데이터 소스 억세스를 하는 경우, - 서명 안된 ActiveX인 경우, - 스크립팅하기에 안전(Safe-for-Scripting)하지 않은 콘트롤의 경우, • 위와 같은 경우에, 에러 혹은 계속적인 확인창이 뜬다.
강화된 보안 (계속) • 혼합된 페이지 즉, 동일 페이지 내에 HTTP, HTTPS 컨텐츠가 혼재할 경우 확인 창 나타남 • “혼합된 컨텐츠 표시”가 인터넷,로컬,신뢰된 사이트 영역에서 모두 “확인”으로 설정되어 있음 • 이전 버전에서는 HTTP와 HTTPS 간의 이동 시 확인창이 떴으나, 이제 이 확인 창은 더 이상 나오지 않음 • 가능한 HTTPS 영역은 HTTPS 컨텐츠만을 갖도록 개선할 필요
강화된 보안 (계속) • 인증서가 해지되었거나 인증서 주소가 불일치하면 아래 같은 에러 • 기능 상으로는 정상적이나 인증서 관리를 소홀히 할 경우 문제 • 다수의 사용자는 사이트 자체에 문제가 있는 것으로 오인 가능
강화된 보안 (계속) • 2006년 8월 DHTMLED.OCX 지원 중단 발표 • Replacing the DHTML Editing Control in Windows Vista and Beyond (in MSDN) • 윈도우즈 비스타 이후, 더 이상 이 콘트롤을 지원하지 않음 • 별도 다운로드와 등록을 통해 상당 기간 사용은 가능하지만, • 향후 윈도우즈 XP, 비스타에서 모두 Kill bit할 예정 • 정확한 기간, 대상은 미정 • 지원 중단 시 나타날 수 있는 문제점 • 다음과 같은 오류 또는 예기치 않은 오류
호환성 대응 절차 • Test를 위한 Vista RTM Build 전달 • 각서비스 별 Test 진행 • 문제점에 대한 지원 • Microsoft 호환성 지원 센터 • www.microsoft.com/korea/ie호환성 지원센터 • 전화; 050-5912-1000 • Email; support@neoplus.co.kr