-
TCP/IP 프로토콜 공격case Computer : 2009. 8. 30. 10:52
TCP/IP 프로토콜 규약상의 문제점을 악용하여 공격함으로써 Network, System
에 Over Load 및 Down을 유발하여 정상적인 서비스를 방해하는 공격이다.● Ack Storm▲ 공격방법
공격자가 대상서버에 대량의 TCP/IP 의 Ack 신호를 보냄으로써 대상 서버는
이로 인하여 불필요한 Load가 발생하고, 정상적인 서비스가 지연되는 공격이
다. 이는 TCP/IP의 프로토콜 규약의 헛점을 이용하여 공격하는 기법이다. 또
한 이 공격은 Session이 이루어진 Packet에 대해서 Hijacking을 하기 위해서
사용 되기도 한다.▲ 탐지방법
① 공격자가 보낸 Packet에서 TCP를 분석한다.
② TCP Header의 flags가 TH_ACK로 설정되어 있는지를 확인 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 ACK Storm으로 탐지한다.▲ 조치방법
공격자에게 RESET 신호를 보내어 공격을 무력화하거나 침입차단 시스템에서
공격 클라이언트를 차단하여 공격으로부터 서버를 보호한다
● Corrupt IP Option▲ 공격방법
공격자가 대상 서버에 Over Load 발생 또는 Network 을 Down 시키기 위해서
TCP/IP의 규약된 정의를 지키지 않고 임의로 비정상적인 IP Option을 사용하
여 공격하는 Protocol 취약점 공격이면서 DOS 공격으로 사용한다.▲ 탐지방법
① 공격자가 보낸 Packet에서 TCP를 분석한다.
② IP Header의 각종 flags가 정상적으로 설정되어 있는지를 확인 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Corrupt IP Option공격으로 탐지한다.▲ 조치방법
공격자에게 RESET신호를 보내어 공격을 무력화하거나 침입차단 시스템에서
공격 클라이언트를 차단하여 공격으로부터 서버를 보호한다, 또한 이러한 공
격에 대해서 정상적으로 동작하는 O.S로 Patch 또는 Upgrade 를 함으로써 공
격의 피해를 최소화 할 수 있다.
● UDP Truncated Header▲ 공격방법
공격자가 대상 서버에 UDP 프로토콜의 비정상적인 Packet 을 보내어 서버에
Over load를 발생시키거나, Down 시켜 정상적인 서비스를 방해하는 프로토콜
취약점 및 DOS공격이다.▲ 탐지방법
① 공격자가 보낸 Packet에서 UDP를 분석한다.
② IP Header의 각종 flags가 정상적으로 설정되어 있는지를 확인 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 UDP Truncated Header공격으로 탐지한다.▲ 조치방법
이러한 사실을 System, Network 관리자에 공지하여 공격자 IP를 관리함과 동
시에 방화벽(F/W)에서 불필요한 UDP서비스를 차단함으로써 공격의 피해를 최
소화 할 수 있다.
또한 Server의 불필요한 UDP Service를 Disable 한다.
● Hijacking▲ 공격방법
TCP/IP의 Session은 Server와 Client 통신에서 서로 인증을 확인하고, Data
를 순차적으로 송.수신하기 위해서 항상 Sequence Number 를 증가 시키면서
통신을 하는데, 이 Sequence Number를 알게되면 Server 에 별 다른 인증 절
차없이 통신을 할 수 있는 프로토콜의 취약점을 이용하여 공격자가 이를 도
용하는 해킹 기법이다. 실시간으로 Sequence Number 를 알아내기 위해서 먼
저 SYN Flooding 또는 ACK Storm 공격기법을 이용하기도 한다.▲ 탐지방법
① 공격자가 보낸 Packet에서 TCP를 분석한다.
② TCP/IP Packet의 MAC Address를 확인하여 IP Spoofing인지 여부를 판단한
다.
③ 직전의 Session의 MAC Address와 비교하여 다르면 Hijacking 으로 간주한
다.
④ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Hijacking으로 탐지한다.▲ 조치방법
공격자에게 RESET 신호를 보내어 공격을 무력화하거나 침입차단 시스템에서
공격 클라이언트를 차단하여 공격으로부터 서버를 보호한다, 또한 이러한 공
격에 대해서 정상적으로 동작하는 O.S로 Patch 또는 Upgrade 를 함으로써 공
격의 피해를 최소화 할 수 있다.
● Source Routing▲ 공격방법
공격자는 TCP/IP 프로토콜의 Source Routing 기법을 이용하여 접근이 불가능
한 내부의 사설망에 접근하여 각종 해킹을 하는 프로토콜 취약점 공격이다.▲ 탐지방법
① 공격자가 보낸 Packet에서 TCP를 분석한다.
② TCP/IP Packet의 Signal 이 Source Routing이면 Source Routing 공격으로
간주한다
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Source Routing공격으로 탐지한다.▲ 조치방법
공격자에게 RESET 신호를 보내어 공격을 무력화하거나 침입차단 시스템에서
공격 클라이언트를 차단하여 공격으로부터 서버를 보호한다, 또한 이러한 공
격에 대해서 정상적으로 동작하는 O.S로 Patch 또는 Upgrade 를 함으로써 공
격의 피해를 최소화 할 수 있다.
Router에서 Source routing를 disable시킨다.
● IP Spoofing▲ 공격방법
서버가 동일한 Network 환경 또는 Netmask 를 가진 클라이언트에게는 다양한
서비스를하고, 그렇지 않은 클라이언트에게는 서비스를 제한하도록 설계되어
있을 경우, 해커가 외부망에서 서버에 침투함에 있어서 내부 클라이언트인
것처럼 IP를 속여서 서버에 접근하거나, 일반적인 DOS공격에서 추적을 피하
기 위해서 사용한다.▲ 탐지방법
① 공격자가 보낸 Packet에서 TCP를 분석한다.
② Packet의 MAC Address를 검사하여 내부 Network에 위치한 주소인지 여부
를 확인하여 기존의 Mac과 비교하여 이를 파악한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 IP Spoofing으로 탐지한다.▲ 조치방법
공격자에게 RESET 신호를 보내어 공격을 차단하거나 공격 클라이언트를 차단
하여 공격으로부터 서버를 보호하거나 운영체제를 Patch한다. 또한 방화벽에
서 불필요한 IP 접근을 방지하도록 한다.
● TCP Teardrop Attack▲ 공격방법
TCP/IP 통신에서 보내는 쪽에서는 IP 데이타그램을 쪼개고 받는 쪽에서는 이
를 합치는(프레그멘테이션과 리어셈블리) 아주 정상적으로 일어나야 할 과정
을 공격자가 임의적으로 과도하게 발생 시키거나, 꼬이게 함으로써 대상컴퓨
터가 다운되게 하는 DOS공격의 일종이다. 또한 이 공격은 어떤 OS의 IP frag
-ment 재조합 코드 안에 버그를 일으키는 invalid fragmented IP패킷을 보낸
다. 이 취약성은 공격자가 목적 시스템을 손상시켜 서비스손실을 유발시키고,
서버를 다운 시킬 수도 있다.▲ 탐지방법
① Packet을 분석하여 확인한 결과 TCP 이면서 Fragmentation 이 되어있으면
이를 Count한다.
② 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 TCP TearDrop으로 탐지한다▲ 조치방법
대상 시스템의 O.S 를 보안에 관련된 모든 hot fix 뿐만 아니라 최신의 버전
또는 최신의 서비스팩을 설치하여 더 이상 시스템이 영향을 받지 않도록 한
다. 또한 이러한 사실을 System, Network 관리자에게 공지하고 공격자의 IP
를 방화벽(F/W)에서 차단한다.● UDP Teardrop Attack
▲ 공격방법
TCP/IP 통신에서 보내는 쪽에서는 IP 데이타그램을 쪼개고 받는 쪽에서는 이
를 합치는(프레그멘테이션과 리어셈블리) 아주 정상적으로 일어나야 할 과정
을 공격자가 임의적으로 과도하게 발생 시키거나, 꼬이게 함으로써 대상컴퓨
터가 다운되게 하는 DOS공격의 일종이다. 또한 이 공격은 어떤 OS의 IP frag
-ment 재조합 코드 안에 버그를 일으키는 invalid fragmented IP패킷을 보낸
다. 이 취약성은 공격자가 목적 시스템을 손상시켜 서비스손실을 유발시키고,
서버를 다운 시킬 수도 있다.▲ 탐지방법
① Packet을 분석하여 확인한 결과 UDP 이면서 Fragmentation이 되어있으면
이를 Count한다.
② 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 UDP TearDrop으로 탐지한다▲ 조치방법
대상 시스템의 O.S 를 보안에 관련된 모든 hot fix 뿐만 아니라 최신의 버전
또는 최신의 서비스팩을 설치하여 더 이상 시스템이 영향을 받지 않도록 한
다. 또한 이러한 사실을 System, Network 관리자에게 공지하고 공격자의 IP
를 방화벽(F/W)에서 차단한다.● ICMP Teardrop Attack
▲ 공격방법
TCP/IP 통신에서 보내는 쪽에서는 IP 데이타그램을 쪼개고 받는 쪽에서는 이
를 합치는(프레그멘테이션과 리어셈블리) 아주 정상적으로 일어나야 할 과정
을 공격자가 임의적으로 과도하게 발생 시키거나, 꼬이게 함으로써 대상컴퓨
터가 다운되게 하는 DOS공격의 일종이다. 또한 이 공격은 어떤 OS의 IP frag
-ment 재조합 코드 안에 버그를 일으키는 invalid fragmented IP패킷을 보낸
다. 이 취약성은 공격자가 목적 시스템을 손상시켜 서비스손실을 유발시키고,
서버를 다운 시킬 수도 있다.▲ 탐지방법
① Packet을 분석하여 확인한 결과 ICMP이면서 Fragmentation 이 되어있으면
이를 Count한다.
② 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 ICMP TearDrop으로 탐지한다▲ 조치방법
대상 시스템의 O.S 를 보안에 관련된 모든 hot fix 뿐만 아니라 최신의 버전
또는 최신의 서비스팩을 설치하여 더 이상 시스템이 영향을 받지 않도록 한
다. 또한 이러한 사실을 System, Network 관리자에게 공지하고 공격자의 IP
를 방화벽(F/W)에서 차단한다.● IGMP Teardrop Attack
▲ 공격방법
TCP/IP 통신에서 보내는 쪽에서는 IP 데이타그램을 쪼개고 받는 쪽에서는 이
를 합치는(프레그멘테이션과 리어셈블리) 아주 정상적으로 일어나야 할 과정
을 공격자가 임의적으로 과도하게 발생 시키거나, 꼬이게 함으로써 대상컴퓨
터가 다운되게 하는 DOS공격의 일종이다. 또한 이 공격은 어떤 OS의 IP frag
-ment 재조합 코드 안에 버그를 일으키는 invalid fragmented IP패킷을 보낸
다. 이 취약성은 공격자가 목적 시스템을 손상시켜 서비스손실을 유발시키고,
서버를 다운 시킬 수도 있다.▲ 탐지방법
① Packet을 분석하여 확인한 결과 IGMP이면서 Fragmentation 이 되어있으면
이를 Count한다.
② 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 IGMP TearDrop(IGMP Nuke)으로 탐지한다▲ 조치방법
대상 시스템의 O.S 를 보안에 관련된 모든 hot fix 뿐만 아니라 최신의 버전
또는 최신의 서비스팩을 설치하여 더 이상 시스템이 영향을 받지 않도록 한
다. 또한 이러한 사실을 System, Network 관리자에게 공지하고 공격자의 IP
를 방화벽(F/W)에서 차단한다.
■ 서비스공격
소프트웨어 변수관리상의 문제인 Overflow Bug 및 각종 서비스의 취약점을
이용하여 불법으로 서버에 접근하여 명령어를 실행하거나 권한을 가지는 공
격방법● DNS Name over flow
▲ 공격방법
인터넷을 사용하기 위해서는 숫자로 된 IP Address 대신에 사용자는 URL(dom
-ain name)를 이용하고 있다. 하지만 시스템 내부적으로는 입력된 URL 를 IP
Address로 변경해야 각종 통신을 할 수 있다. 이러한 역할을 하는 서버가
DNS 서버이며, DNS 서버의 서비스 장애는 결국 인터넷을 사용하지 못하는 최
악의 경우도 발생 할 수 있다. 또한 DNS 서버는 내부적으로 사용하는 Buffer
의 Overlow에 대해서 취약점을 가지고 있는 Version이 존재하고, 이러한 취
약점은 해커의 공격 대상이 되기도 한다.▲ 탐지방법
① 연결된 Session에서 TCP(UDP) PROTOCOL를 분석한다.
② TCP(UDP)의 서버 Port가 53이고 Name field의 길이가 규정 이상으로 길이
가 길면 DNS Name Overflow 공격으로 간주한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정시간내에 공격인정
회수이면 DNS Name over flow공격으로 탐지한다.▲ 조치방법
이러한 사실을 System, Network 관리자에 알리어 집중적으로 관리하고, 취약
점이 제거된 DNS Server로 Upgrade를 한다.
● DNS Zone transfer▲ 공격방법
공격자는 DNS서버에 등록된 모든 호스트에 대한 Hostname, IP Address Table
를 Download하여 해킹의 정보로 활용 한다.▲ 탐지방법
① 연결된 Session에서 TCP(UDP) PROTOCOL를 분석한다.
② TCP(UDP)의 서버 Port가 53이고 Type이 T_AXFR, T_IXFR, T_ZXFR 이면 DNS
Zone transfer 공격으로 간주한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 DNS Zone transfer공격으로 탐지한다.▲ 조치방법
이러한 사실을 System, Network 관리자에 알리어 집중적으로 관리하고, 취약
점이 제거된 DNS Server로 Upgrade를 한다.
● FTP Anonymous▲ 공격방법
Anonymous 로 Ftp 서비스를 할 경우에 공격자가 접속하여 서버의 환경설정을
파악하여, 허용 권한 이상의 행동을 하여 정보를 파괴하거나, 획득하는 공격
이다. 만일 anonymous FTP가 정확히 설정되어있지 않으면 많은 anonymous 사
용자들은 관리자가 의도한 것 이상의 권한을 얻을 수 있다. 정확하게 설정되
어있지 않은 anonymous FTP사이트는 다음과 같은 결과를 초래할 수 있다.- 관리자 네트워크의 원격 손상
- 공개적인 접근권한의 FTP 파일 삭제, 수정
- 불법소프트웨어의 유통경로로 악용▲ 탐지방법
① 연결된 Session에서 TCP PROTOCOL을 분석한다.
② TCP Session의 연결흐름이 Client에서 Server이고, passive mode가 아니
고, ftp command가 STOR, DELE, APPE, RNFR, RNTO, RMD, MKD이고, Userid
가 anonymous이거나 ftp, guest이면 FTP Anonymous로 Scan한다.
③ 공격자가 보내는 Packet 의 횟수를 count하여 공격인정시간내에 공격인정
회수이면 FTP Anonymous로 탐지한다.▲ 조치방법
공격 클라이언트에게 Reset Signal을 보내어 차단 하거나, 꼭 필요한 경우가
아니면 FTP 서비스를 Disable하여 공격으로부터 서버를 보호한다.많은 Unix 시스템이 디폴트로 anonymous FTP설치를 제공한다. anonymous FTP
를 사용하지 않으면 anonymous FTP접근을 불가능하게 한다. 하지만 꼭 필요
에 의해서 FTP 서비스를 사용하는 경우에는 anonymous FTP가 정확히 설정되
어있는지 확인한다. 가장 중요하게 검사해야 할 것들은 다음과 같다.- FTP home directory 계정을 superuser가 가지고 있어야 한다.
- FTP계정은 FTP 계층에 있는 어떤 디렉토리에도 쓰기를 불가능 하게 한다.
- ~ftp/etc/ 디렉토리에 있는 passwd 파일에는 패스워드가 포함되지 않아야
하며, "ls" 명령이 UID를 사용자이름에 맞춰보기 위한 필요한 소수의 계
정만을 포함해야 한다.
- /etc/ftpusers 파일에는 로그인이 허가되지 않는 사용자목록을 기록한다.
어떤 시스템 계정이나 root도 이 파일에 포함될 수 있으며, root로 접속
하게 하는 것은 바람직하지 않다.
- /etc/ftpaccess 파일도 검사해야 한다. 다른 곳에 위치할 수도 있다. 이
파일은 보통 wu-ftp 서버와 연결되어있다. 이 파일의 설정이 정확히 되어
있는지 확인해야 한다. 이 파일에서 디렉토리를 쓰기가능하게 설정할 수
도 있고, 모든 anonymous FTP명령을 정의된 소유권, 파일권한에 의해 보
장되도록 정의할 수도 있다. 또한 anonymous 사용자 또는 그룹 사용자에
디렉토리를 생성하지 못하게 할 수도 있다. 불법복제 소프트웨어 배포자
는 anonymous ftp 서버내에 시스템 관리자가 보통 보지 않는 곳이나 기본
디렉토리로 추측하는 곳에 소프트웨어를 위치시키는 것을 기본 전략으로
삼는다. FTP는 tcp_wrapper로 보호될 수 있다. inetd로부터 실행될 프로
그램에 tcp_wrapper를 인스톨할 것을 제안한다.
tcp_wrapper는 ftp://ftp.porcupine.org/pub/security에서 얻을 수 있다.
이 프로그램으로 ftp 데몬을 사용할 수 있는 사용자를 IP주소, hostname
을 사용하여 제한할 수 있다. tcp_wrapper에 의해 호스트가 그 서비스에
접근할 권한이 없는 경우, 해당 포트는 호스트의 관점에서 active로 보이
지만 어떤 정보도 제공하지 않고 연결을 끊는다. 또한 tcp_wrapper는 보
통의 데몬보다 훨씬 세부적인 정보를 syslog에 기록한다. 이런 점 때문에
inetd로부터 실행하기를 원하는 서비스에 tcp_wrapper를 인스톨하는 것을
권장한다.
● Ftp Backdoor▲ 공격방법
FTP Server 프로그래머가 시스템을 원격지에서 접속,관리하기 위해서 Userid
에 “NULL”, Password에 “NULL”을 입력하면 인증 절차없이 root 권한으로
접속할 수 잇도록 한 FTP Server 모듈이 배포된 적이 있다. 공격자는 이러한
사실을 알고 대상서버에 접속 하여 각종 해킹을 할 수 있다. 하지만 이는 극
히 제한적으로 배포 되었기 때문에 큰피해는 발생하지 않았지만 반드시 서버
에 대해서 확인을 해야 할 사항이다.▲ 탐지방법
① 연결된 Session에서 TCP PROTOCOL을 분석한다.
② TCP Session 의 연결흐름이 Client 에서 Server 이고 port가 21번 이면서
Userid, Password의 입력값이 NULL이면 FTP Back door로 Scan 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Ftp Backdoor공격으로 탐지한다.▲ 조치방법
이러한 사실을 System, Network 관리자에게 주지 시키고, 각각의 서버에 설
치되어 있는 FTP Server에 대해서 Backdoor 설치 여부를 확인한다. 또한 불
필요한 FTP Service는 방화벽에서 Disable함으로서 공격의 피해를 최소화 한
다.
● Ftp Check User▲ 공격방법
FTP Server에 등록되어 있는 계정에 대해서 응답하는 속성을 이용하여 시스
템에 어떤 사용자가 존재하는지에 대한 확인 방법으로 CWD ~user를 사용한다.
이러한 정보를 차후 해킹을 하기 위한 정보로 활용될 수 있기 때문에 철저하
게 관리해야 한다.▲ 탐지방법
① 연결된 Session에서 TCP PROTOCOL을 분석한다.
② TCP Session 의 연결흐름이 Client 에서 Server 이고 port가 21번 이면서
Packet의 값이 CWD ~user이면 FTP Check user 공격으로 Scan 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Ftp Check user로 탐지한다.▲ 조치방법
이러한 사실을 System, Network 관리자에게 주지 시키고, 불필요한 FTP Se
-rvice는 방화벽(F/W)에서 Disable함으로서 공격의 피해를 최소화 한다.
● Ftp Commandline Overflow▲ 공격방법
FTP Server 가 내부적으로 관리하는 Command line Buffer 에 대해 Overflow
공격을 가해서 특정 Script(서버에 인증절차 없이 접근할 수 있는 Script)를
서버에 등록하여, 차후 이를 이용하여 각종 해킹을 할 수 있다.▲ 탐지방법
① 연결된 Session에서 TCP PROTOCOL을 분석한다.
② TCP Session의 연결흐름이 Client에서 Server이고 port가 21번 이면서 각
종 Command가 규정된 길이 이상으로 Setting되어 있으면 FTP Commandline
Overflow 공격으로 Scan 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Ftp Commandline overflow공격으로 탐지한다.▲ 조치방법
이러한 사실을 System, Network 관리자에게 주지 시키고, 불필요한 FTP Se
-rvice는 방화벽(F/W)에서 Disable함으로서 공격의 피해를 최소화 한다.
● Ftp CWD ~root▲ 공격방법
FTP Server 에 guest ID로 접속을 한 다음 CWD “~root” 명령어를 이용하여
root 권한을 획득하는 공격으로 일부 FTP Server 에 이러한 취약점이 있는
Version이 극히 제한적으로 배포된 적이 있다.▲ 탐지방법
① 연결된 Session에서 TCP PROTOCOL을 분석한다.
② TCP Session 의 연결흐름이 Client 에서 Server 이고 port가 21번 이면서
Command가 CWD “~root”로 Setting되어 있으면 FTP CWD ~root 공격으로
Scan 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Ftp CWD ~root공격으로 탐지한다.▲ 조치방법
이러한 사실을 System, Network 관리자에게 주지 시키고, 불필요한 FTP Serv
-ice는 방화벽(F/W)에서 Disable함으로서 공격의 피해를 최소화 한다. 또한
버그가 Patch된 Version으로 Upgrade를 한다.
● Ftp Login Fail▲ 공격방법
대상 system에 Ftp 서비스로 접속하여, 자주(기본으로) 사용되는 사용자 이
름 혹은 정보수집을 통해 알아낸 사용자 이름에 흔히 사용되는 password 를
반복 입력함으로써 password 를 알아내 대상 system 에 login 하는 공격이다.
손으로 직접 하는 경우도 있지만 script등을 이용하여 자동으로 반복 수행시
키는 경우가 더 위협적이며, 자신의 위치를 숨기기 위해 제 3의 시스템에 침
투한 다음 시도하는 경우가 있다.▲ 탐지방법
① 연결된 Session에서 TCP PROTOCOL을 분석한다.
② TCP Session 의 연결흐름이 Client 에서 Server 이고 port 가 21이면 Ftp
Login 공격으로 간주한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Ftp Login Fail 로 탐지한다.▲ 조치방법
공격인증 횟수 이상 실패한 공격자에 대해서 Reset Signal 를 이용하여 차단
한 다음, 공격자의 IP Address를 Black List에 등록하여 특정시간 동안 해당
서버에 접속하지 못하도록 한다. 또한 Ftp서비스를 사용할 수 있는 사용자를
방화벽(F/W)에서 제한함으로서 서버를 보호할 수 있다.
● Ftp Other Server▲ 공격방법
FTP Server에 특정ID(guest 등)로 접속(21 Port)을 한 다음 다른 서버에 있
는 각종 정보를 주고, 받을 수 있도록 하는 기법으로 이는 FTP의 Data Port
인 20번에 대해서 인증을 거치지 않고 송.수신이 가능 하다는 취약점을 이용
한 서비스 공격이다.▲ 탐지방법
① 연결된 Session에서 TCP PROTOCOL을 분석한다.
② TCP Session의 연결흐름이 Client 에서 Server 이고 port 가 21번 이면서
실질적으로 Data를 송수신하는 IP Address, Port 번호를 확인하여 IP Add
-ress가 다르고, Port가 20번이면 FTP Other Server로 Scan 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Ftp Check user로 탐지한다.▲ 조치방법
이러한 사실을 System, Network 관리자에게 주지 시키고, 불필요한 FTP Ser
-vice는 방화벽(F/W)에서 Disable함으로서 공격의 피해를 최소화 한다. 또한
버그가 Patch된 Version으로 Upgrade를 한다.
● Ftp PASV Crash▲ 공격방법
FTP Server의 명령어의 PASV를 이용하여 대상 서버에 각종 쓰레기 DATA를 대
량으로 보냄으로써 서버에 Overload 를 발생 시키는 정상적인 서비스를 이용
한 Dos 공격으로 사용된다.▲ 탐지방법
① 연결된 Session에서 TCP PROTOCOL을 분석한다.
② TCP Session 의 연결흐름이 Client 에서 Serve r이고 port가 21번 이면서
FTP Command가 PASV이면 FTP PASV Crash공격으로 Scan한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 FTP PASV Crash공격으로 탐지한다.▲ 조치방법
이러한 사실을 System, Network 관리자에게 주지시키고, 불필요한 FTP Ser
-vice는 방화벽(F/W)에서 Disable함으로서 공격의 피해를 최소화 한다. 또한
버그가 Patch된 Version으로 Upgrade를 한다.
● FTP Port bounce▲ 공격방법
이 공격은 TCP port에 연결시도를 하기 위해, 원격 FTP서버를 활용하여 어떤
TCP 포트가 원격지 호스트에 활성화 상태인지를 판단한다. 이는 어떤 TCP po
-rt가 원격 네트워크상에 열려 있는가를 판단하기 위해 FTP bounce attack을
이용한다. FTP bounce attack에 취약한 FTP 서버는 필터링 라우터가 그 포트
의 접근을 막는다 하더라도, 공격자가 원격지 서버 혹은 다른 내부 호스트에
서 어떤 서비스들을 제공하는지를 판단할 수 있게끔 한다.▲ 탐지방법
① 공격자가 보낸 Packet에서 TCP를 분석한다.
② FTP DATA의 패킷이 1024번 아래의 포트를 Open하면 Ftp Port Bounce 공
격으로 간주한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 FTP Port bounce로 탐지한다.▲ 조치방법
공격 클라이언트와 서버에 RESET 신호를 보내어 공격을 무력화시킴으로서
서버의 정보를 보호하고, FTP bounce attack 에 취약하지 않은 최신버전의
FTP서버로 업그레이드 할 것을 권장한다.
● Ftp Site exec▲ 공격방법
FTP Server의 명령어 중에서 원격 프로그램 실행 명령어인 Site exec를 이용
하여 대상 서버에 특정 Script (backdoor 설치 등)를 등록 함으로서 차후 인
증절차 없이 대상서버에 root권한으로 접속을 하여 각종 정보를 해킹한다.▲ 탐지방법
① 연결된 Session에서 TCP PROTOCOL을 분석한다.
② TCP Session 의 연결흐름이 Client 에서 Server 이고 port가 21번 이면서
FTP Command가 Site exec이면 FTP Site exec공격으로 Scan한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Ftp Site exec 공격으로 탐지한다.▲ 조치방법
이러한 사실을 System, Network 관리자에게 주지 시키고, 불필요한 FTP Ser
-vice는 방화벽(F/W)에서 Disable함으로서 공격의 피해를 최소화 한다. 또한
버그가 Patch된 Version으로 Upgrade를 한다.
● Mail Bad Command▲ 공격방법
E-Mail를 주고받기 위해서는 이미 정해진 규약 (SMTP)을 반드시 이용하여야
하는데 공격자가 임의로 규약을 어기고 이상한 명령어를 서버에 보내어 서버
시스템이 다운되거나, 예상하지 못한 일을 하게 함으로서 공격이 이루어진다.▲ 탐지방법
① 연결된 Session에서 SMTP PROTOCOL을 분석한다.
② SMTP로 주고받는 명령어를 감시하여 규약에 어긋나는 명령어가 탐지 되면
Mail Bad Command 공격으로 간주 한다.
③ 공격자가 보내는 Packet의 횟수를 Count 하여 공격인정시간내에 공격인정
회수이면 Mail Bad Command 로 탐지한다.▲ 조치방법
공격자에게 RESET신호를 보내어 공격을 무력화하거나 침입차단시스템에서 공
격 클라이언트를 차단하여 공격으로부터 서버를 보호한다.
● Mail Bounce▲ 공격방법
E-Mail를 주고받기 위해서는 서버에 반드시 Mail서버라는 프로그램이 실행되
어 있어야 한다. 하지만 일부 E-Mail 서버에는 “FROM TO: | program_name”
을 입력하면 해당 서버에 존재하는 Program이 실행 되는 Bug를 가진 Mail 서
버가 배포되었다는 점을 이용하여 해커가 악의적인 목적으로 이를 사용한다.▲ 탐지방법
① 연결된 Session에서 SMTP PROTOCOL을 분석한다.
② SMTP Protocol 에서 FROM TO: 다음에 정상적인 E-Mail ID가 아닌 Program
name이 있으면 Mail Bounce 공격으로 Scan 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Mail Bounce 공격으로 탐지한다.▲ 조치방법
공격자에게 RESET 신호를 보내어 공격을 무력화하거나 침입차단 시스템에서
공격 클라이언트를 차단하여 공격으로부터 서버를 보호한다. 또한 Bug가 수
정된 Mail 서버를 사용함으로써 공격의 피해를 최소화 할 수 있다.
● Mail Command over flow▲ 공격방법
E-Mail 서버가 내부적으로 관리하는 Command buffer에 대해서 공격자가 임의
적으로 Over flow를 발생시켜, 서버의 특정 명령어 (Backdoor 설치, 정보획
득 등)를 실행시키는 공격이다.▲ 탐지방법
① 연결된 Session에서 SMTP PROTOCOL을 분석한다.
② SMTP로 주고받는 명령어를 감시하여 정의된 길이보다 긴 명령어가 검출되
면 Mail Command over flow 공격으로 간주한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Mail Command over flow 공격으로 탐지한다.▲ 조치방법
공격자에게 RESET신호를 보내어 공격을 무력화하거나 침입차단시스템에서 공
격 클라이언트를 차단하여 공격으로부터 서버를 보호한다. 또한 Bug가 수정
된 Verson으로 Upgrade를 한다.
● Mail Debug▲ 공격방법
E-Mail 서버가 가지고 있는 Debug 명령어를 이용하여 서버의 특정 명령어
(Backdoor 설치, 정보획등 등)를 실행시키는 공격이다.▲ 탐지방법
① 연결된 Session에서 SMTP PROTOCOL을 분석한다.
② Client와 Server가 주고받는 명령어를 감시하여 Debug 명령어가 검
출되면 Mail Debug 공격으로 간주한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Mail Debug 공격으로 탐지한다.▲ 조치방법
공격자에게 RESET신호를 보내어 공격을 무력화하거나 침입차단시스템에서 공
격 클라이언트를 차단하여 공격으로부터 서버를 보호한다. 또한 Bug가 수정
된 Verson으로 Upgrade를 한다.
● Mail Files▲ 공격방법
E-Mail를 주고받기 위해서는 서버에 반드시 Mail 서버라는 프로그램이 실행
되어 있어야 한다. 하지만 일부 E-Mail 서버에는 “RCPT TO: /tmp/test”을
입력하면 수신되는 메일의 내용이 /tmp/test 라는 파일에 저장되게 된다. 이
렇게 함으로서 해커는 악성 코드를 /tmp/test라는 파일에 등록 한 다음 차후
이를 이용하여 서버를 해킹한다.▲ 탐지방법
① 연결된 Session에서 SMTP PROTOCOL을 분석한다.
② SMTP Protocol 에서 RCPT TO: 다음에 정상적인 E-Mail ID가 아닌 file
name이 있으면 Mail Files 공격으로 Scan 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Mail Files 로 탐지한다.▲ 조치방법
공격자에게 RESET신호를 보내어 공격을 무력화하거나 침입차단시스템에서 공
격 클라이언트를 차단하여 공격으로부터 서버를 보호한다. 또한 Bug가 수정
된 Mail 서버를 사용함으로써 공격의 피해를 최소화 할 수 있다.
● Mail Mailing list▲ 공격방법
E-Mail 서버에 등록되어 있는 Mailing list 를 획득하여 차후 이를 이용하여
또다른 행위를 위한 정보로 사용한다.▲ 탐지방법
① 연결된 Session에서 SMTP PROTOCOL을 분석한다.
② SMTP Protocol 에서 Mailing list command 가 있으면 Mail Mailing list
로 Scan 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Mail Mailing list 공격으로 탐지한다.▲ 조치방법
공격자에게 RESET신호를 보내어 공격을 무력화하거나 침입차단시스템에서 공
격 클라이언트를 차단하여 공격으로부터 서버를 보호한다. 또한 Bug가 수정
된 Mail 서버를 사용함으로써 공격의 피해를 최소화 할 수 있다.
● Mail Programs▲ 공격방법
E-Mail를 주고받기 위해서는 서버에 반드시 Mail 서버라는 프로그램이 실행
되어 있어야 한다. 하지만 일부 E-Mail 서버에는 “FROM TO: program_name”
을 입력하면 해당 서버에 존재하는 Program이 실행 되는 Bug를 가진 Mail 서
버가 배포되었다는 점을 이용하여 해커가 악의적인 목적으로 이를 사용한다.
Mail Bounce공격과 유사하다.▲ 탐지방법
① 연결된 Session에서 SMTP PROTOCOL을 분석한다.
② SMTP Protocol 에서 FROM TO: 다음에 정상적인 E-Mail ID가 아닌 Program
name이 있으면 Mail Program 공격으로 Scan 한다.
③ 공격자가 보내는 Packet의 횟수를 Count하여 공격인정 시간내에 공격인정
회수이면 Mail Program 공격으로 탐지한다.▲ 조치방법
공격자에게 RESET신호를 보내어 공격을 무력화하거나 침입차단시스템에서 공
격 클라이언트를 차단하여 공격으로부터 서버를 보호한다. 또한 Bug가 수정
된 Mail 서버를반응형'case Computer :' 카테고리의 다른 글
INODE (0) 2009.08.30 침입 탐지 시스템(IDS) (0) 2009.08.30 정보 수집(Scan) 종류 및 탐지 (0) 2009.08.30 서비스 거부 공격(DoS : Denial of Service) 종류 및 탐지 (0) 2009.08.30 [Network] 데이터 교환방식 (0) 2009.08.30