Presentation is loading. Please wait.

Presentation is loading. Please wait.

시스템 보안 백 도 어 학번:20032319 이름: 김 준 일.

Similar presentations


Presentation on theme: "시스템 보안 백 도 어 학번:20032319 이름: 김 준 일."— Presentation transcript:

1 시스템 보안 백 도 어 학번: 이름: 김 준 일

2 차례 백도어의 특징 및 의미 백도어의 종류 이해 운영체제별 백도어의 종류 이해 및 이용 백도어 탐지와 제거
보안대책 수립과 수행

3 백도어의 특징 및 의미 백도어의 특징 및 의미 1983년 Ken Thompson이 최초로 사용한 용어
시스템 관리자나 개발자에 의해 의도적으로 남겨진 시스템의 보안 허점으로 정상적인 절차를 우회하여 시스템에 출입할 수 있도록 임시로 만들어둔 비밀 출입문. 보안상 허점을 역이용하여 크래커들이 시스템에 침입한 후 자신이 원할 때 재침입하거나, 권한 획득을 쉽게 하기 위하여 만들어 놓은 일종의 비밀 통로를 의미. 트랩도어(trap door), administrative hook이라 부름.

4 백도어의 특징 및 의미 백도어의 특징 및 의미 시스템 관리자의 보안 관리를 우회 발견되지 않고 시스템으로 침입가능
패스워드 갱신 등의 조치에도 무관 발견되지 않고 시스템으로 침입가능 로그를 남기지 않고 침입(대부분 온라인으로 침입) 시스템 침입 시간이 짧음

5 백도어의 특징 및 의미 트로이 목마의 특징 네트워크를 통한 원격 조정 가능. 자기 복제 능력 없는 프로그램의 일종.
다른 정상프로그램에 숨겨져 동작. 사용자 정보를 몰래 빼냄. 최신 백신 프로그램으로 진단/치료 가능

6 백도어의 특징 및 의미 트로이 목마 특정 사용자 또는 프로그램이 실행에 의한 수동적인 방법에 의존한 것, 이는 사용자의 직간접적인 도움을 통해서 설치되거나 Bind(속박)되어진 프로그램이 실행되어 설치. 백도어 프로그래머나 크래커가 능동적으로 만든 것. 예전에는 관리의 목적으로 사용하기도 하였으나, 대부분 크래커들에 의해 권한이 획득된 후, 해당시스템에 추후 접속을 용이하게 하기 위하여 서비스 데몬 등을 수정하여 사용

7 백도어의 종류와 이해 백도어의 종류와 이해 1.로컬 백도어 2.원격 백도어 3.원격 GUI 백도어 4.패스워드 크래킹 백도어
5.시스템 설정 변경 백도어 6.트로이 목마형 백도어 7.거짓 업그래이드

8 백도어의 종류와 이해 1. 로컬 백도어 서버의 셸을 얻어낸 뒤 관리자로 권한 상승을 할 때 사용하는 백도어.
서버의 셸을 얻어낸 뒤 관리자로 권한 상승을 할 때 사용하는 백도어. 시스템 로그인한 뒤 관리자로 권한을 상승 시키기 위한 백도어로 공격자는 일반 계정이 하나 필요

9 백도어의 종류와 이해 SetUID형 로컬 백도어 Root상태 #cp /bin/ksh /home/일반계정/hack
#chmod /home/일반계정/hack #ls –l /home/일반계정/hack 일반계정사용자는 자신의 계정으로 로깅후 훔친 shell(일종의 백도어)을 이용하여 언제라도 Root이 될수있다. (하지만 사용하는 시스템에따라 root 권한 획득되지 못한 경우가 많다.)

10 백도어의 종류와 이해 SetUID형 로컬 백도어 #include <stdio.h> main( ) {
system(“/bin/sh”); } SetUID 대표적 공격 버퍼 오버플로우 공격이며 이러한 공격 프로그램은 SetUID에 부여된 시스템 명령중 잘사용하지 않는 명령을 SetUID프로그램으로 대체해서 숨겨둠.(Find명령으로 검사)

11 백도어의 종류와 이해 2.원격 백도어 원격에서 관리자로 계정과 패스워드를 입력하고 로그인한 것처럼 바로 시스템의 관리자 계정을 사용할 수 있는 백도어. (시스템 계정 필요없음) 네트워크에 자신의 포트를 항상 열어놓는 경우가 많음. 일종의 서비스를 제공하는 데몬처럼 동작하는 것임. 프로토콜의 변형된 형태를 이용하는 발전된 형태의 백도어는 TCP, UDP, ICMP 프로토콜 중 아주 일부분을 효과적으로 이용

12 백도어의 종류와 이해 3.원격 GUI 백도어 백도어 크기가 크고, 많은 데이터를 전송해 노출이 쉬움.(실제로 많이 존재하지 않음) 주로 윈도우용 원격 관리용 툴인 경우가 많음. 약용될 소지는 있음. 원격 관리 툴의 종류(vnc, Radmin, pcAcywhere, Dameware,등)

13 백도어의 종류와 이해 4.패스워드 크래킹 백도어 인증 회피 백도어 아님. 원격지 공격자에게 인증에 필요한 패스워드를 보내줌.
키보드를 누르는 정보를 전송 Passwd와 같은 특정 문자열 뒤의 값을 전송 유닉스의 경우 passwd파일의 정보를 전송 침입자들은 패스워드 크래킹을 사용 취약한 패스워드를 어려운 패스워드로 바꿈.

14 백도어의 종류와 이해 해커가 원하는 대로 시스템의 설정을 변경 유닉스 프로그램 스케줄러로 사용되는 cron 데몬을 이용.
5. 시스템 설정 변경 백도어 해커가 원하는 대로 시스템의 설정을 변경 유닉스 프로그램 스케줄러로 사용되는 cron 데몬을 이용. 공격자는 백도어 쉘 프로그램을 cronjob에 추가 하여 관리자가 접속하지않는 새벽시간에 구동. Cronjob에서 합법적인 프로그램으로 가장.

15 백도어의 종류와 이해 시스템 설정 변경 백도어 Cron데몬 vi/etc/crontab
17 * * * * root run-parts --report /etc/cron_hourly 0 4 * * * ./ishd –i 65000 0 5 * * * pkill –U root ishd

16 백도어의 종류와 이해 6. 트로이 목마형 백도어 자기복제없음, 사용자 정보유출일으키는 악성 프로그램의 일종
백도어 목적으로 만들어진 프로그램이 아닌데도 백도어로 동작하는 경우. 응용 프로그램에 섞여 있어 원래 목적의 프로그램이 정상적으로 실행되면 동시에 백도어도 설치됨.

17 백도어의 종류와 이해 7. 거짓 업그래이드 시스템을 패치/업그레이드 할 때 잘못된 파일을 설치하는 경우.
원하지 않은 업그레이드를 강제로 하는 경우. 성인 사이트 접속 시 사용자의 시스템이 통제 할 수 없는 상태에서 여러 가지 프로그램이 설치 되는 경우

18 운영체제별 백도어의 종류 이해 및 이용 운영체제별 백도어의 종류 이해 및 이용 윈도우
Joiner 프로그램을 이용하여 기존의 프로그램 파일과 BackDoor를 혼합하여 만듬. 1.윈도우용 원격 관리툴(GUI 백도어):서버 관리 목적,패스워드를 알면 쉽게 사용가능해서 악용의 위험도 큼). 2.백오리피스(back orifice):유명하고 매우 강력함,현재 오픈 소스형식으로 개발. 3.NetBus:TCP연결만 지원,메뉴를 통해 편리하게 원격으로 조종, 실제로 가장 많이 설치된 백도어,백오리피스와 같이 클라이언트 서버 형식.(유사백도어:스쿨버스,서브세븐) 4.Beast:현제 방화벽 또는 사설Ipfmf 사용하는 경우가 많아 reverse 형태의 백도로 변화,은닉의 기능.

19 운영체제별 백도어의 종류 이해 및 이용 운영체제별 백도어의 종류 이해 및 이용 유닉스/리룩스
공격자가 서버데몬의 취약점을 찾아 권한을 빼앗게되는 경우 데몬이 ROOT이었을때 ROOT권한을 같게 되고, nobody로 운영 되고 있었을땐 nobody권한만 같게됨. 1.ICMP 백도어:Beast와 같이 방화벽을 우회하는 백도어, 방화벽은 내부사용자의 ping사용을 감안, 들어오는 echo request 패킷에 대한 요청은 막지만 나가는 패킷은 막지않는다 따라 들어오는 echo reply에 대해서도 막지 않는것을 이용한 백도어. 2.cronjob 백도어:같은 작업을 주기적으로 반복할수있도록 처리해주는 데몬,작업부여후 시간을 정해 구동

20 운영체제별 백도어의 종류 이해 및 이용 BackDoor 프로그램(리눅스) Rootkit
Backdoor와 Trojan Horse 프로그램 패키지. 1998년 11월 기능이 보강된 리눅스용 Rootkit 4 발표. 원격접근, 내부 사용흔적 제거, 관리자 권한 획득 등.

21 운영체제별 백도어의 종류 이해 및 이용 BackDoor 프로그램(윈도우)
VNC (Virtual Network Computing) 원격 관리 프로그램 접속 패스워드 설정 가능 툴 자체의 취약점이 있어 패스워드 노출가능

22 운영체제별 백도어의 종류 이해 및 이용 TCP 3-way handshaking
모든 과정이 성공적으로 끝나야 세션이 이루어지고 서버와 클라이언트가 통신을 하게 됨 서버 클라이언트 Syn Syn + Ack Ack

23 운영체제별 백도어의 종류 이해 및 이용 AckCmd 공격 방식 . 공격대상 서버 클라이언트 Ack Ack Ack Ack 공격자
출발지포트 : 공격자 시스템의 80번 포트 목적지포트 : 임의의 포트(1020) 목적지포트 : 공격자 시스템의 80번 포트 출발지포트 : 임의의 포트(1020) Ack Ack 공격자

24 운영체제별 백도어의 종류 이해 및 이용 VNC 설치

25 운영체제별 백도어의 종류 이해 및 이용 VNC 설치

26 운영체제별 백도어의 종류 이해 및 이용 VNC 설치

27 운영체제별 백도어의 종류 이해 및 이용 VNC 설치

28 운영체제별 백도어의 종류 이해 및 이용 VNC 서버 접속 (웹브라우저) VNC 서버주소

29 운영체제별 백도어의 종류 이해 및 이용 VNC 서버 접속 (웹브라우저)

30 운영체제별 백도어의 종류 이해 및 이용 VNC 서버 접속 (웹브라우저)

31 운영체제별 백도어의 종류 이해 및 이용 NetBus – 파일구성

32 운영체제별 백도어의 종류 이해 및 이용 NetBus

33 운영체제별 백도어의 종류 이해 및 이용 NetBus Host name /IP : 접속할 타겟 시스템의 IP 주소를 입력
Port : 타겟 시스템의 포트 번호를 입력 Start program : 실행하고자 하는 프로그램의 절대경로를 입력 Screendump : 서버 시스템의 현재 화면을 캡처 Active Wnds : 현재 사용중인 프로세스를 보고, Kill 할 수 있다 Listen : 타겟 시스템의 키 스트로크를 저장 Server setup : 서버의 설정을 바꿔서 아무나 접속하지 못하게 한다 File manager : 서버내의 파일 열람 , 다운로드, 업로드, 삭제가 가능 Open CD-ROM : 서버의 시디롬을 여닫을 수 있다. Swap mouse : 마우스의 오른족 버튼과 왼쪽 버튼의 기능을 바꾼다 Exit Windows : 서버를 리부팅, 로그아웃, 끌 수 있다. Sound system : 서버의 볼륨을 조절할 수 있고, 녹음도 할 수 있다. Control mouse : 클라이언트 측의 마우스포인터가 움직이는 대로 서버 의 마우스를 조정한다. Go to URL : 특정 사이트의 URL을 열어준다 Key manager : 서버의 키보드 관련 사항을 열어준다.

34 운영체제별 백도어의 종류 이해 및 이용 리눅스 BackDoor 로컬 백도어 - SetUID형
   #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);    }

35 운영체제별 백도어의 종류 이해 및 이용 로컬 백도어 - SetUID형 설치 SetUID가 주어진 정상적인 파일과 교체
find / -perm 4775 교체할 파일의 인자 값 없이 실행 시 출력형태를 BackDoor에 추가. 파일을 교체함. cp ./backdoor /usr/bin/usernetctl

36 운영체제별 백도어의 종류 이해 및 이용 로컬 백도어 - SetUID

37 운영체제별 백도어의 종류 이해 및 이용 ICMP 원격 셸 백도어
많은 침입차단시스템들이 외부로부터 내부 시스템에 대한 ping을 허락함. 침입자는 ping ICMP 패킷에 데이터를 추가하여 ping을 하고 있는 시스템과 셸을 제공받을 수 있도록 함. 시스템 관리자는 다량의 ping 패킷들을 발견하겠지만 패킷 속의 데이터를 보지 않는 이상 침입 사실을 알 수 없음.

38 운영체제별 백도어의 종류 이해 및 이용 ICMP 원격 셸 백도어 ICMP 서버 구동
./ishd –i –t 0 –p 1024

39 운영체제별 백도어의 종류 이해 및 이용 ICMP 원격 셸 백도어 ICMP 클라이언트를 이용한 접속
./ish –i –t 0 –p

40 백도어 탐지와 제거 백도어의 탐지와 대응책 동작중인 프로세스 확인하기 열린 포트 확인 SetUID 파일검사
파일 시스템 무결성 점검 바이러스 및 백도어 탐지툴 이용 로그분석

41 백도어 탐지와 제거 BackDoor 탐지 / 대책 SetUID 바이러스 및 백도어 탐지 툴 이용 윈도우 시스템은 해당 없음
유닉스(리눅스) 시스템에서는 로컬 백도어로 강력한 기능을 함. 주기적으로 추가/변경 사항을 체크해야 함. 바이러스 및 백도어 탐지 툴 이용 가장 편리한 방법 윈도우용 탐지 툴은 많으나 유닉스용은 많이 없어 수동으로 해야 함.

42 백도어 탐지와 제거 무결성 검사 로그 분석 시스템에 어떤 변화가 일어나는지 테스트. MD5 해시 기법 많이 사용.
시스템에 어떤 변화가 일어나는지 테스트. MD5 해시 기법 많이 사용. 주기적으로 주요 파일의 MD5값을 수집하여 관리자의 변경이나 시스템 운영상 변경이 아닌 변경이 있는지를 체크함. 로그 분석 시스템에 남아 있는 흔적을 분석. 다양한 로그 분석 방법이 있어 Cyber Forensic 이라는 하나의 분야로 정착.

43 백도어 탐지와 제거 열린 포트 확인 C:\at>pslist

44 백도어 탐지와 제거 열린 포트 확인 12345 : NetBus port C:\at>netstat -na

45 백도어 탐지와 제거 열린 포트 확인 C:\at>fport 각 port별 응용프로그램 확인 가능

46 백도어 탐지와 제거 열린 포트 확인 C:\at>promiscdetect

47 백도어 탐지와 제거 열린 포트 확인 C:\at>promiscdetect
스니퍼가 설치되어 있을 경우 Promiscuous 모드로 변경되어 있을 수 있다.

48 백도어 탐지와 제거 SetUID 파일 검사 Find / -perm +4000

49 백도어 탐지와 제거 윈도우용 탐지 툴 유닉스(리눅스)용 탐지 툴
다잡아(AD-Spider) The Cleaner 유닉스(리눅스)용 탐지 툴 Chkrootkit

50 백도어 탐지와 제거 VNC NetBus [제어판] -> [프로그램 추가/삭제] Windows폴더에 Patch.exe 삭제
레지스트리 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run에 등록된 키 값 삭제

51 보안대책 수립과 수행 로그인 계정 / 패스워드 확인 OS(windows) 서비스 팩 확인 공유폴더 확인 시작 프로그램 확인
최신 백신 엔진 유지 네트워크 연결 상태 확인 프로세스 확인 스팸 메일/미확인 자 메일 열지 않기 P2P 프로그램 사용 안하기 정품 프로그램 사용하기

52 END 수고하셨습니다 .


Download ppt "시스템 보안 백 도 어 학번:20032319 이름: 김 준 일."

Similar presentations


Ads by Google