login register Sysop! about ME  
qrcode
    최초 작성일 :    2012년 06월 04일
  최종 수정일 :    2012년 06월 04일
  작성자 :    songgun
  편집자 :    songgun (송 원석)
  읽음수 :    21,517

강좌 목록으로 돌아가기

필자의 잡담~

본문에서는 IIS 8.0의 FTP 로그온 시도 제한 기능을 살펴봅니다. 이 기능은 이름만 봐도 어떤 기능인지 감이 오실 것이라고 생각합니다. 바로 로그인 시도 실패 횟수에 따라 특정 IP의 접근을 제한하는 기능인데요. 사용자 계정이 아닌 IP에 대해서 제한이 걸리는 이유는, 악의적인 특정 사용자가 하나 이상의 계정을 대상으로 무차별 적인 비밀번호 대입 공격을 수행하는 시나리오를 대비하기 위한 기능이기 때문입니다.
다음은 본 번역 문서의 권한에 관한 제반 사항입니다.
  • 본 번역 문서에 대한 모든 저작권은 마이크로소프트사에 있으며, 단순히 IIS 8.0을 널리 알리고자 하는 개인적인 취지에 의해 번역되어 제공되는 문서입니다.
  • 마이크로소프트사의 요청이 있는 경우, 언제라도 게시가 중단될 수 있습니다.
  • 본문에서 제공하는 번역에는 오역이 포함되어 있을 수 있으며, 주석의 내용도 개인적으로 파악한 것으로 마이크로소프트사는 이 내용에 대해 일체의 보장을 하지 않습니다.
  • 본문의 원문은 IIS 개발팀이 제공하는 IIS 8.0 FTP Logon Attempt Restrictions 입니다.
  • 본 문서는 2012년 5월 현재, IIS 8.0을 미리 살펴보기 위한 사전정보일뿐, 제품이 실제로 출시되면 얼마든지 변경될 수 있습니다.
호환성 정보
버전 비고
IIS 8.0 FTP 로그온 시도 제한은 IIS 8.0에서 처음 도입되었습니다.
IIS 7.5 IIS 7.0 및 IIS 7.5 에서는 FTP 로그온 시도 제한이 지원되지 않습니다.
IIS 7.0


목차

문제점 *
반드시 서버에서 방비하고 있어야 할 취약점 중 하나는 FTP 서비스에 대한 무차별 암호 대입 공격(Brute-Force Attack)입니다. 호스트 운영체제의 실제 사용자 계정이 FTP 계정으로 사용되는 경우가 많기 때문에, 이론상 FTP 서버 유형만 알 수 있다면 관리자 권한을 가진 사용자의 계정을 추측하는 것이 가능합니다. 그리고, 일단 계정 이름이 밝혀지고 나면, 악의적인 클라이언트가 서버에 연결하여 해당 계정에 대해 무차별적인 암호 대입 공격을 감행할 수 있습니다. (예: 윈도우 시스템인 경우 administrator, UNIX 시스템인 경우 root)

IIS 7.5에서는 비 윈도우 계정을 사용해서 FTP에 접근할 수 있도록, 개발자들이 사용자 정의 인증 공급자를 작성할 수 있는 FTP 서비스 확장 API가 도입되었습니다. 이 API를 사용할 경우 FTP 계정은 실제 윈도우 계정과는 별개이므로, FTP 계정은 FTP 서비스 외부의 리소스에는 접근할 수 있는 권한이 없으며, 결과적으로 외부로부터 공격받을 수 있는 FTP 서비스 범위가 뚜렷하게 감소합니다. 마이크로소프트는 IIS 7.5의 FTP 인증 확장 기능을 이용한 사용자 정의 인증 공급자를 작성하여, 비 윈도우 계정에 대한 무차별 암호 대입 공격의 가능성을 줄일수 있는 방법을 제공합니다. 이에 대한 보다 자세한 정보는 다음의 문서를 참고하시기 바랍니다: **

How to Use Managed Code (C#) to Create an FTP Authentication Provider with Dynamic IP Restrictions

* 개인적으로 제가 FTP 서비스와 관련하여 무엇보다 강조하고 싶은 점은, 윈도우 서버 2008/2008 R2 제품군에서는 더 이상 FTP 6.0을 사용하지 말고 FTP 7.x 이상의 버전을 사용하자는 것입니다. 본문에서 설명하는 기능 외에도 다양한 기능들이 추가되었으며, 보안적으로도 비약적인 발전을 이뤘기 때문입니다. 그럼에도 불구하고 제가 참여했던 프로젝트들을 기준으로 주변을 살펴보면, 아직도 많은 개발자분들과 서버 관리자분들이 구 버전의 FTP 서비스를 사용하시더군요. 실로 안타까운 일이 아닐 수 없습니다.
** 본문의 링크 외에도 FTP 서비스를 사용자 정의할 수 있는 기술에 관한 문서들이 많이 제공되고 있습니다. 가령, 다음 문서는 사용자들의 FTP 홈 디렉터리 제공 방식을 사용자 정의하는 샘플 코드를 담고 있습니다.

How to Use Managed Code (C#) to Create a Simple FTP Home Directory Provider

그리고, 다음 문서는 FTP 서비스 사용자들을 인증하는 방식을 사용자 정의하는 샘플 코드를 담고 있습니다. 위에서 제공되는 링크보다는 조금 더 간단한 예제로, 동적 IP 제한에 대해서는 고려하지 않고 있는 문서죠.

How to Use Managed Code (C#) to Create a Simple FTP Authentication Provider

그리고, 이미 Taeyo.net에 번역되어 제공된 다음의 문서도 있구요.

IIS 7.0 인스퍼레이션 - 08, (Configure IIS Manager Authentication 번역 및 주해)

이렇게 풍부한 사용자 정의 기능들을 염두에 두고 상상력을 조금만 발휘해본다면, 이런 FTP 서비스를 구축할 수도 있을 겁니다. 즉, 윈도우 계정이 아닌 데이터베이스에 저장되어 있는 직원들의 아이디와 비밀번호를 사용해서 (사실, 액티브 디렉터리를 사용할 수 있다면 가장 이상적이겠죠?), 직급이나 부서, 또는 지점별로 각각 FTP 홈 디렉터리를 제공하는 겁니다. 그리고, FTP 7.x/8.0에서 제공되는 FTP over SSL로 보안을 강화하고 부서별 쿼터를 할당할 수도 있을 겁니다. 게다가 본문에서 소개하고 있는 로그온 시도 제한 기능까지 더하면 금상첨화겠네요. 더불어 이런 기능들을 래핑해주는 UI 프로그램이라도 함께 제공된다면 멋진 사내 자료실 시스템도 구축이 가능할 것 같습니다. 정말 이 정도면 와레즈(Warez)도 문제 없겠네요!
해결방법
마이크로소프트는 윈도우 서버 8의 IIS 8.0에서 사용자 정의 인증 공급자를 작성하지 않고도, 모든 로그인을 대상으로 동일한 기능을 제공하는 내장된 네트워크 보안 기능을 추가했습니다. 본문에서는 서버에 대한 무차별 암호 대입 공격을 방지하기 위해서 FTP 로그인 제한을 활성화시키는 방법을 살펴봅니다.


단계별 지침
전제조건:
  • IIS 8.0과 FTP 서비스가 설치되어 있는 윈도우 서버 8이 필요합니다.
알려진 버그에 대한 해결방법:
  • 현재 이 기능에 대한 알려진 버그는 존재하지 않습니다.

무차별 암호 대입 공격 방지를 위한 FTP 구성하기
IIS 8.0에서는 지정된 기간 동안, 사용자별 FTP 클라이언트의 인증 실패 횟수를 기반으로 FTP 서비스에 대한 접근을 거부하도록 FTP 서비스를 구성할 수 있습니다. 로그인 시도 실패 횟수가 설정된 값에 도달하면, 서버가 FTP 연결을 강제로 닫고, FTP 서비스가 재시작 될 때까지 해당 IP 주소의 FTP 서비스 연결을 거부합니다.

FTP 서비스에 대한 악의적인 사용자의 접근을 거부하도록 구성하려면, 다음의 과정을 따라하십시요:
  1. 윈도우 8 머신에 관리자 권한으로 로그인합니다.
  2. "IIS(인터넷 정보 서비스) 관리자"를 실행합니다.
  3. "연결" 패인에서 서버명을 선택한 다음, 기능 목록에서 "FTP Logon Attempt Restrictions"을 더블 클릭합니다.
  4. "Enable FTP Logon Attempt Restrictions" 항목을 체크하고, FTP 서비스가 FTP 클라이언트의 접근을 막을지 여부를 결정하는데 사용하기 위한 로그인 시도 실패 횟수 및 기간을 지정합니다.
  5. "Apply" 버튼을 클릭합니다.
이 때, "Write to the log only" 옵션을 선택하면 로그온 시도를 막지 않습니다. 그대신, 지정한 조건이 만족하면 그 사실을 로그에 기록합니다. IT 관리자는 이 정보를 통해서 현재 설정을 실제로 적용하기 전에 사용자들에게 어떤 결과를 가져올지를 미리 예측해본 다음, 여러 가지 다른 구성 매개변수를 지정해 볼 수도 있습니다.


요약
본문에서는 윈도우 서버 8의 새로운 FTP 로그온 시도 제한 기능을 이용해서, FTP 서버를 공격하는 악의적인 클라이언트를 거부하기 위해 FTP 서비스를 구성하는 방법을 살펴봤습니다.

FTP 로그온 시도 제한 기능은 서버 수준의 설정이기 때문에, 사이트 단위로는 로그온 제한을 설정할 수 없다는 사실에 주의하시기 바랍니다. 공격자는 대부분 단일 사이트보다는 서버를 대상으로 접근을 시도하기 때문에 FTP 서비스는 서버 수준에서 악의적인 사용자의 접근을 막습니다.


authored by


 
 
.NET과 Java 동영상 기반의 교육사이트

로딩 중입니다...

서버 프레임워크 지원 : NeoDEEX
based on ASP.NET 3.5
Creative Commons License
{5}
{2} 읽음   :{3} ({4})