| 취약점ID |
18048 |
| 위험도 |
30 |
| 포트 |
25 |
| 프로토콜 |
TCP |
| 분류 |
SMTP |
| 상세설명 |
해당 Sendmail 서버는 mail.local 프로그램으로 인한 서비스 거부 공격에 취약하다. "mail.local"은 로컬 메일을 전달하는 Sendmail 에 포함된 메일 전달 에이전트(Delivery Agent) 프로그램이다. 이 프로그램은 표준 입력으로부터 메시지를 받아서 사용자 메일박스에 전달하기 위해 LMTP(Local Mail Transfer Protocol) 프로토콜을 사용한다. LMTP 모드에서 mail.local 은 메시지 입력으로부터 메시지의 끝을 찾기 위해 ".\n" 문자열을 검사하고 mail.local 에 이 스트링의 앞까지만 넘겨지도록 막는다. 하지만, 원격지 공격자들이 "(2047 문자).\n" 와 같이 2047 문자로 이루어진 긴 스트링 뒤에 ".\n" 을 덧붙여 서버에 전달하게 되면, 메시지의 끝을 속일 수 있게 된다. 이는 나머지 메시지들이 LMTP 명령으로써 mail.local 에 의해서 처리될 수 있으며 어떠한 필터링(filtering)이나 검사, 로깅(logging)없이 임의의 메일박스에 메시지를 전달할 수 있게 된다. 관련된 또 다른 취약점으로는 mail.local 과 sendmail 서버가 deadlock 에 빠져 더 이상 로컬 메일을 전달할 수 없는 취약점이다. mail.local 은 sendmail 에 LMTP 응답을 반환하게 되는데 이 시점에서 sendmail 은 mail.local 로부터 어떠한 출력값도 존재하지 않는 것으로 간주한다. 그러므로, 반환된 응답이 I/O 버퍼에 그대로 남게 되어 급기야 이러한 응답이 많아질 경우 I/O 버퍼가 가득 차게 되는 현상을 야기한다. 이로 인하여, mail.local 과 sendmail 서버는 deadlock 상태에 빠지고 더 정상적인 로컬 메일 전달 기능을 수행하지 못한다.
* 알림 : 다음과 같은 이유로 인하여, 이 취약점은 사용자의 환경에서 보안 위협요소가 될 수도 있고 그렇지 않을 수도 있다. (즉, 거짓 양성반응(False Positive)을 보일 수도 있다) 1. 이 점검항목은 취약점 점검을 위해 Sendmail 서버의 버전 정보에 의존한다. 2. 점검에 이용되는 Sendmail 서버의 버전 정보는 Sendmail 컨소시엄에서 릴리즈한 표준 Sendmail 배포판에 근거한다.
* 참고 사이트 : http://archives.neohapsis.com/archives/bugtraq/2000-04/0185.html
* 영향을 받는 플랫폼 : Sendmail 8.10.0 이전의 버전들이 탑재된 모든 플랫폼 |
| 해결책 |
Sendmail 웹 사이트 http://www.sendmail.org 를 참조하여 Sendmail 버전 8.10.0 이나 가장 최신 버전으로 업그레이드해야 한다. |
| 관련 URL |
CVE-2000-0319 (CVE) |
| 관련 URL |
11746 (SecurityFocus) |
| 관련 URL |
4556 (ISS) |
|