Microsoft IIS 6.0 WebDAV 원격 인증 우회

웹 어플리케이션 2009. 6. 3. 05:05 Posted by 알 수 없는 사용자

이 취약점은 IIS(Internet Information Server) 5.0, 5.1, 6.0이 설치되어 있는 취약점에 제한되어 원격 공격자들에 대해서 허용하며, 웹 서버가 URL의 데이터값 중 유니코드 토큰을 제대로 파싱 처리하지 못하여 나타나는 취약점입니다.

이로 인해 암호로 보호된 폴더를 인증 우회로 인해 리스팅, 다운로드, 업로드 모두 가능합니다.

Example)
WebDAV로 서비스를 구동하는 웹 서버(http://www.a3sc.co.kr)는
-
내부에서만 사용하는 암호화된 폴더 "A3SECRUITY"를 암호로 설정하여 사용
-
이 폴더안의 "A3SC.zip" 라는 파일이 존재
-
A3SC 내부인은 매일 폴더 암호를 변경하여 사용
한다고 가정을 했을때..

즉 정리하자면 아래와 같습니다.
호스트: http://www.a3sc.co.kr
암호화된 폴더: "c:\inetpub\wwwroot\A3SECURITY\"
파일: "A3SC.zip"
암호: 매일 변경 됨

공격자는 위와 같은 환경에서 별도의 암호 인증없이 유니코드 우회를 통해 "A3SECURITY" 폴더안에 파일 리스트를 확인 할 수 있으며, "A3SC.zip"을 다운하거나, 자신의 원하는 파일을 업로드 할 수 있습니다.

아래는 유니코드 취약점을 이용한 HTTP GET 요청입니다.

GET /%c0%af/A3SECURITY/A3SC.zip HTTP/1.1
Translate: f
Connection: close
Host: www.a3sc.co.kr

또는 다음 요청도 같은 효과를 가집니다.
GET /A3SECURITY%c0%af/A3SC.zip HTTP/1.1
Translate: f
Connection: close
Host: www.a3sc.co.kr

취약점의 URL에서는 위와 같이 '/'(%c0%af) 유니코드 문자가 들어가 있습니다.
이 유니코드로 인해서 WebDAV는 상위 부모 디렉토리의 권한으로 하위 디렉토리(A3SECURITY)로 접근하여 수행하게 됩니다.
따라서 공격자는 암호 인증을 통한 사용자만 접근할 수 있어야하는 과정을 통과하여 내용을 확인 할 수 있습니다.
대부분의 wwwroot 의 권한은 익명 사용자에게 읽기 권한을 부여하기 때문에, 이번 취약점을 이용하여 접근할 수 있습니다.

대응 방안
1. IIS 5.0, 5.1 일 경우 WebDAV는 자동으로 활성화되기 때문에 사용하지 않으면 비활성화를 권고합니다.
   IIS 6.0 일 경우도 사용하지 않는다면 비활성화를 권고합니다.
2. WebDAV 사용 중인 경우 익명 사용자 계정(Internel Guest Account, IURL_%SystemName%)의 권한을 주지 않도록 권고합니다.
   불가피한 경우 권한을 최소한 익명사용자의 write 권한을 제거해야 합니다. 이는 웹쉘 업로드 공격으로 이어질 수 있기 때문에
   반드시 제거하길 권고합니다.
3. 패턴검사를 통해 HTTP 요청 "%c0%af" 유니코드를 차단을 권고합니다.


현재 milw0rm 2009년 5월 15일짜로 처음으로 게시 되었으며, 20일 IIS WebDAV Vulnerability in Action / 22일, 26일에 PHP, Perl Exploit이 추가적으로 게시되었습니다.


관련사이트:

http://milw0rm.com/exploits/8806
http://milw0rm.com/exploits/8765
http://milw0rm.com/exploits/8754
http://milw0rm.com/exploits/8704
http://milw0rm.com/video/watch.php?id=103

C
opyright(c) 1998-2009 A3 Security ,LTD


Disclaimer
※ 현재 ㈜에이쓰리시큐리티에서 테스트 및 분석 중에 있으며, 이 문서는 계속 업데이트될 것입니다. 본 문서는 보안취약점으로 인한 피해를 최소화하는 데 도움이 되고자 작성되었으나, 본 문서에 포함된 대응방안의 유효성이나 기타 예상치 못한 시스템의 오작동 발생에 대하여서는 ㈜에이쓰리시큐리티에서는 일체의 책임을 지지 아니합니다.