다음을 통해 공유


Internet Explorer는 웹 사이트 주소(HTTP 또는 HTTPS URL)에서 사용자 이름 및 암호를 지원하지 않습니다.

Warning

사용과 지원이 중단된 Internet Explorer 11 데스크톱 애플리케이션이 Microsoft Edge 업데이트를 통해 특정 버전의 Windows 10에서 영구적으로 비활성화될 예정입니다. 자세한 내용은 Internet Explorer 11 데스크톱 앱 지원 중단 FAQ를 참조하세요.

이 문서는 사용자 정보가 웹 사이트 주소(HTTP 또는 HTTPS URL)에 포함될 때 웹 사이트 관리자 및 IT 전문가에게 Internet Explorer의 동작에 대해 알리기 위한 것입니다.

원래 제품 버전: Internet Explorer
원래 KB 번호: 834489

요약

기본적으로 보안 업데이트 832894 릴리스부터 릴리스된 Internet Explorer 버전은 SSL(Secure Sockets Layer) 또는 HTTPS URL을 사용하여 HTTP 및 HTTP에서 사용자 이름 및 암호 처리를 지원하지 않습니다. Internet Explorer 또는 Windows 탐색기에서는 다음 URL 구문이 지원되지 않습니다.

http(s)://username:password@server/resource.ext

이 문서는 Internet Explorer의 이 기본 동작을 알리기 위한 것입니다. HTTP 또는 HTTPS URL에 사용자 정보를 포함하는 경우 이 문서에 설명된 해결 방법을 살펴보는 것이 좋습니다.

배경 정보

Internet Explorer 버전 3.0~6.0은 HTTP 또는 HTTPS URL에 대해 다음 구문을 지원합니다.

http(s)://username:password@server/resource.ext

이 URL 구문을 사용하여 기본 인증 방법을 지원하는 웹 사이트에 사용자 정보를 자동으로 보낼 수 있습니다.

악의적인 사용자는 이 URL 구문을 사용하여 합법적인 웹 사이트를 여는 것처럼 보이지만 실제로는 사기성(스푸핑된) 웹 사이트를 여는 하이퍼링크를 만들 수 있습니다. 예를 들어 다음 URL이 열려 http://www.wingtiptoys.com 있는 것처럼 보이지만 실제로는 열립니다 http://example.com.

http://www.wingtiptoys.com@example.com

참고 항목

이 경우 Internet Explorer 6 SP1(서비스 팩 1) 및 Microsoft Windows Server 2003용 Internet Explorer 6은 주소 표시줄에만 표시됩니다 http://example.com . 그러나 이전 버전의 Internet Explorer는 주소 표시줄에 표시됩니다 http://www.wingtiptoys.com@example.com .

또한 악의적인 사용자는 이 URL 구문을 다른 메서드와 함께 사용하여 모든 버전의 Internet Explorer의 상태 표시줄, 주소 표시줄 및 제목 표시줄에서 합법적인 웹 사이트에 대한 URL을 표시하는 기만적(스푸핑된) 웹 사이트에 대한 링크를 만들 수 있습니다. 이 문제에 대한 자세한 내용은 기만적인(스푸핑된) 웹 사이트 및 악성 하이퍼링크로부터 자신을 보호하기 위해 문서 번호 833786 클릭합니다.

기본 동작의 변경에 대한 설명

백그라운드 정보 섹션에서 설명하는 문제를 완화하기 위해 Internet Explorer 및 Windows Explorer는 더 이상 이 양식의 HTTP 및 HTTPS URL 처리를 지원하지 않습니다. Windows 탐색기 및 Internet Explorer는 사용자 정보가 포함된 URL을 사용하여 HTTP 또는 HTTPS 사이트를 열지 않습니다. 기본적으로 사용자 정보가 HTTP 또는 HTTPS URL에 포함된 경우 다음 제목이 있는 웹 페이지가 나타납니다.

잘못된 구문 오류입니다.

참고 항목

기본 동작의 이러한 변경은 다른 프로토콜에 영향을 주지 않습니다.

기본 동작의 이러한 변경은 보안 업데이트 832894 릴리스부터 릴리스된 Internet Explorer의 보안 업데이트, 서비스 팩 및 버전에 의해 구현됩니다.

사용자에 대한 해결 방법

  1. 주소 표시줄에서 URL을 입력하거나 링크를 클릭하는 사용자가 여는 URL

    사용자가 일반적으로 주소 표시줄에 사용자 정보를 포함하는 HTTP 또는 HTTPS URL을 입력하거나 HTTP 또는 HTTPS URL에 사용자 정보를 포함하는 링크를 클릭하는 경우 Internet Explorer에서 다음 두 가지 방법으로 이 새로운 기능을 해결할 수 있습니다.

    • HTTP 또는 HTTPS URL에 사용자 정보를 포함하지 마세요.
    • 사용자가 HTTP 또는 HTTPS URL을 입력할 때 사용자 정보를 포함하지 않도록 지시합니다.

    웹 사이트에서 기본 인증 방법을 사용하는 경우 Internet Explorer는 사용자에게 사용자 이름과 암호를 자동으로 묻는 메시지를 표시합니다. 경우에 따라 사용자는 대화 상자에서 내 암호 기억 상자를 클릭하여 나중에 해당 웹 사이트를 방문할 때 자격 증명을 저장할 수 있습니다.

애플리케이션 및 웹 사이트 개발자를 위한 해결 방법

  1. WinInet 또는 Urlmon 함수를 호출하는 개체에 의해 열린 URL

    InternetOpenURL과 같은 WinInet 또는 Urlmon 함수를 호출할 때 사용자 정보를 포함하는 HTTP 또는 HTTPS URL을 사용하는 개체의 경우 다음 방법 중 하나를 사용하여 사용자 정보를 웹 사이트로 보내도록 개체를 다시 작성합니다.

    • InternetSetOption 함수를 사용하고 다음 옵션 플래그를 포함합니다.
      • INTERNET_OPTION_USERNAME
      • INTERNET_OPTION_PASSWORD

    참고 항목

    이러한 플래그의 경우 InternetSetOption 옵션에는 InternetConnect 함수에서 반환된 핸들이 있어야 합니다. 따라서 애플리케이션이 InternetOpenUrl 함수를 사용하는 경우 InternetConnect, HttpOpenRequest 및 HttpSendRequest WinInet 함수를 사용하도록 애플리케이션을 수정합니다.

    이러한 함수를 사용하는 방법에 대한 자세한 내용은 다음 Microsoft 웹 사이트를 방문하세요.

    IAuthenticate 인터페이스를 사용하는 방법에 대한 자세한 내용은 다음 Microsoft 웹 사이트를 방문하세요.

    참고 항목

    이 해결 방법을 사용하면 URL 스푸핑 기술이 리디렉션하는 웹 사이트를 열 수 있습니다. 리디렉션된 위치를 포함하여 전체 URL이 나타납니다.

    예를 들어 다음 URL이 나타납니다.

    http://www.wingtiptoys.com@www.example.com

    사용자는 여전히 리디렉션된 웹 사이트에 도착합니다. 이 예제에서는 사용자가 도착합니다.http://www.example.com

  2. 상태 관리에 자격 증명을 사용하는 스크립트에서 여는 URL

    스크립팅 코드에 사용자 정보가 포함된 HTTP 또는 HTTPS URL을 포함하는 경우 상태 정보를 관리하려면 사용자 정보 대신 쿠키를 사용하도록 스크립팅 코드를 변경합니다. 쿠키를 사용하여 상태 정보를 관리하는 방법에 대한 자세한 내용은 HTTP 상태 관리 메커니즘을 참조 하세요.

    Visual Basic을 사용하여 ASP.NET 웹 프로그램에서 HTTP 쿠키를 읽고 쓰는 방법의 예를 보려면 HttpCookie 클래스를 참조 하세요.

새 동작을 사용하지 않도록 설정하거나 다른 프로그램에서 사용하는 방법

웹 브라우저 컨트롤을 호스트하는 다른 프로그램에서 이 새로운 동작을 사용하거나 Windows 탐색기 및 Internet Explorer에 대해 이 새로운 동작을 사용하지 않도록 레지스트리 값을 설정할 수 있습니다.

  1. 웹 브라우저 컨트롤을 호스트하는 프로그램에서 이 새로운 기본 동작을 사용하여 HTTP 또는 HTTPS URL에서 사용자 정보를 처리하는 방법

    기본적으로 HTTP 또는 HTTPS URL에서 사용자 정보를 처리하기 위한 이 새로운 기본 동작은 Windows 탐색기 및 Internet Explorer에만 적용됩니다. 웹 브라우저 컨트롤을 호스트하는 다른 프로그램에서 이 새 동작을 사용하려면 SampleApp.exe DWORD 값을 만듭니다. 여기서 SampleApp.exe 프로그램을 실행하는 실행 파일의 이름입니다. 다음 레지스트리 키 중 하나에서 DWORD 값의 값 데이터를 1로 설정합니다.

    • 프로그램의 모든 사용자에 대해 다음 레지스트리 키에 값을 설정합니다.

      HKEY_LOCAL_MACHINE\Software\Microsoft\InternetExplorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE

    • 프로그램의 현재 사용자에 대해서만 다음 레지스트리 키에 값을 설정합니다.

      HKEY_CURRENT_USER\Software\Microsoft\InternetExplorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE

  2. HTTP 또는 HTTPS URL에서 사용자 정보를 처리하기 위해 새 기본 동작을 사용하지 않도록 설정하는 방법

    Windows 탐색기 및 Internet Explorer에서 새 기본 동작을 사용하지 않도록 설정하려면 다음 레지스트리 키 중 하나에 iexplore.exeexplorer.exe DWORD 값을 만들고 해당 값 데이터를 0으로 설정합니다.

    • 프로그램의 모든 사용자에 대해 다음 레지스트리 키에 값을 설정합니다.

      HKEY_LOCAL_MACHINE\Software\Microsoft\InternetExplorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE

    • 프로그램의 현재 사용자에 대해서만 다음 레지스트리 키에 값을 설정합니다.

      HKEY_CURRENT_USER\Software\Microsoft\InternetExplorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE

참조

HTTP 또는 HTTPS URL에 대한 표준 URL 구문에 대한 설명은 다음 IETF(Internet Engineering Task Force) 웹 사이트를 참조하세요.

Microsoft는 기술 지원을 찾는 데 도움이 되는 타사 연락처 정보를 제공합니다. 이 연락처 정보는 예고 없이 변경 될 수 있습니다. Microsoft는 이 타사 연락처 정보의 정확성을 보장하지 않습니다.