IIS 파일 확장자 파싱 제로데이 취약점
원문은 Microsoft IIS 0Day Vulnerability in Parsing Files (semi‐colon bug)를 참조하시기 바랍니다.
개요
IIS는 어떤 확장자이든 ASP 또는 실행 가능한 다른 확장자로 인식하고 실행할 수 있습니다. 예를 들어, "malicious.asp;.jpg"는 서버에서 ASP파일로 실행됩니다. 대다수의 파일 업로드 프로그램들은 파일 이름의 마지막 부분만을 확장자로 인식하고 필터링합니다. 공격자는 이 취약점을 이용해 필터를 우회할 수 있고, 실행 가능한 파일을 서버에 업로드 할 수 있습니다.
영향
공격자가 ".asp", ".cer", ".asa"와 같은 확장자 뒤에 세미콜론을 붙이는 방법으로 파일 확장자 필터를 우회할 수 있으므로 많은 수의 프로그램들에서 문제가 될 것으로 예상됩니다. 2008년 여름에 유명한 웹 애플리케이션들을 대상으로 조사해 본 결과, 70%의 파일 업로드 프로그램이 이 취약점에 무력화 되었습니다.
상세 설명
- "malicious.asp;.jpg"의 경우, 웹 애플리케이션은 JPEG로 판단하지만 IIS는 ASP파일로 판단하여 "asp.dll"로 전달 합니다. 단, 닷넷의 경우 "malicious.aspx;.jpg"을 ASP.NET 파일로 인식하지 않으므로 이 버그를 이용할 수 없습니다.
- 세미콜론 외에도 ":"을 이용하면 임의의 확장자를 붙여 빈 파일을 만들수 있습니다. 예를 들어 "test.asp:.jpg"를 NTFS 파티션에 업로드하면 "test.asp"라는 빈 ASP 파일이 생성됩니다. 이는 "NTFS Alternate Data Streams"에 의한 것으로 세미콜론 취약점과 다른 문제입니다.
권고 사항
웹 개발자
- 완전히 랜덤한 문자열을 파일 이름으로 사용하고 웹 애플리케이션에서 확장자를 정하도록 합니다. 또한 사용자 입력을 파일 이름으로 사용하지 말아야 합니다.
- 알파벳과 숫자로 이뤄진 이름과 확장자인 경우에만 파일 업로드가 가능하도록 합니다.
웹 마스터
- 업로드 파일이 저장되는 디렉토리에서 "실행" 권한을 제거합니다.
관련 링크
- Secunia Advisory: Microsoft IIS ASP Multiple Extensions Security Bypass
- Securityfocus: Microsoft IIS Malformed Local Filename Security Bypass Vulnerability
- The Register: Microsoft IIS vuln leaves users open to remote attack
- VUPEN Security: Microsoft IIS File Extension Processing Security Bypass Vulnerability
- Securitytracker: Microsoft Internet Information Services (IIS) Filename Extension Parsing Flaw May Let Users Bypass Security Controls
by xeraph | 2009-12-26 12:05:52 | 권고문 | 트랙백 (1) | 덧글 (0)
Tracked from Zasfe Note 2010-01-02 11:16:02
많은 보안관련 사이트에서 IIS 의 파일확장자 우회를 통한 취약점에 대한 이야기가 많습니다. IIS 6(window2003) 이하 버전 에서만 이러한 현상이 벌어진다고 하는데, 테스트를 해보니 그렇지않았습니다. IIS5 (window 2000) 버전에서는 이러한 증상이 해당되지 않았습니다.[footnote]기본 OS 설치에 IIS 만 올린 상태인데 ASP 파일처럼 사용되기는 커녕 텍스트파일처럼 사용이 됩니다. [/footnote] 하지만 IIS 6..




