33
Kim mi jin Kim mi jin 정정 정정 정정정 정정 네네네네 네네네 네네 네네네네 네네네 네네 3 3 네네 네 네네 네네 네네 네 네네 네네 Chapter 6. 네네네네네 네네

정보 보안 개론과 실습 네트워크 해킹과 보안

Embed Size (px)

DESCRIPTION

정보 보안 개론과 실습 네트워크 해킹과 보안. 3 부 해킹 전 정보 획득 Chapter 6. 풋프린팅과 스캔. 1. 풋프린팅. 2. 포트. 3. 스캔. 4. 운영체제의 탐지. 5. 방화벽과 침입 탐지 시스템의 탐지. Contents. 1. 풋프린팅. 기술적인 해킹 공격 , 신문 , 게시판 등과 같은 여러 경로를 통해 공격 대상의 정보를 모으는 방법을 말한다 . 풋프린팅에는 매우 다양한 기법이 있으며 , 매우 넓은 범위가 포함된다. 즉 , 사회공학 (Social Engineering). - PowerPoint PPT Presentation

Citation preview

Kim mi jinKim mi jin

정보 보안 개론과 실습

네트워크 해킹과 보안네트워크 해킹과 보안

33 부 해킹 전 정보 획득부 해킹 전 정보 획득

Chapter 6. 풋프린팅과 스캔

네트워크 해킹과 보안 - 김미진 2

Contents

풋프린팅1

포트2

스캔3

운영체제의 탐지4

방화벽과 침입 탐지 시스템의 탐지5

1. 풋프린팅

기술적인 해킹 공격 , 신문 , 게시판 등과 같은 여러 경로를 통해 공격 대상의 정보를 모으는 방법을 말한다 .

풋프린팅에는 매우 다양한 기법이 있으며 , 매우 넓은 범위가 포함된다 .

즉 , 사회공학 (Social Engineering)

기술적인 해킹에 의한 방법이 아닌 , 개인적인 인간 관계 ,

업무적 관계 등을 이용한 방법에서부터 어깨 넘어 훔쳐보기 등 정보를 획득하는 데 이용 가능한 비기술적인 경로를 이용해서 정보를 모으는 방법이다 .

3 네트워크 해킹과 보안 - 김미진

2. 포트

포트는 활성화된 데몬에 의해서 열리게 되며 , 각각의 프로토콜은 고유의 포트를 가지고 있다 .

시스템에는 65535 개의 포트가 있으며 , 0 번부터 1023 번 포트까지 1024 개의 포트가 Well Known 포트라고 불린다 .

Well Known 포트는 일상적으로 잘 알려진 서비스를 위해 고유의 사용 용도가 정해져 있다 .

보통 0 번 포트는 쓰지 않으며 , 1024 번 포트부터 65534

포트는 임의의 사용용도를 위해서 , 또는 클라이언트가 서버에 접속 시에 할당 받는 포트의 범위다 .

4 네트워크 해킹과 보안 - 김미진

데몬

시스템의 사용자 인터페이스에는 나타나지 않지만 ,

서비스가 요청되었을 때 이에 반응할 수 있도록 항상 실행되는 프로그램을 말한다 .

따라서 웹 서비스에 대한 데몬과 FTP 서비스를 위한 데몬이 별도로 존재한다 . 각각의 데몬을 실행해야만 포트가 열리며 ,

해당 포트에서 적절한 서비스를 제공받을 수 있다 .

각각의 데몬은 하나의 프로그램이기 때문에 취약점이 존재하는데 , 이러한 점을 이용하여 해커는 공격 대상 시스템에 침투한다 .

5 네트워크 해킹과 보안 - 김미진

외워야 할 Well Known 포트 1/2

포트 번호 서비스 서비스 내용

21(TCP)

FTP File Transfer Protocol FTP 연결 시 인증과 컨트롤을 위한 포트

23(TCP)

Telnet Telnet 서비스로서 원격지의 서버의 실행 창을 얻어낸다 .

25(TCP)

SMTP Simple Message Transfer Protocol 메일을 보낼 때 사용하는 서비스

53(UDP)

DNS Domain Name Service 이름을 해석하는 데 사용하는 서비스

69 (UDP)

TFTP Trivial File Transfer Protocol 인증이 존재하지 않는 단순한 파일 전송에 사용되는 서비스

80 (TCP)

HTTP Hyper Text Transfer Protocol 웹 서비스

6 네트워크 해킹과 보안 - 김미진

외워야 할 Well Known 포트 2/2

포트 번호 서비스 서비스 내용

110 POP3  Post Office Protocol 메일 서버로 전송된 메일을 읽을 때 사용하는 서비스

111 RPC

Sun 의 Remote Procedure Call 원격에서 서버의 프로세스를 실행할 수 있게 한 서비스

138 NetBIOS

Network Basic Input Output Service 윈도우에서 파일을 공유하기 위한 서비스

143 IMAP Internet Message Access Protocol. POP3 와 기본적으로 같으나 ,  메일을 읽고 난 후에도 메일은 서버에 남는 것이 다르다 .

161 SNMP Simple Network Management Protocol 네트워크 관리와 모니터링을 위한 서비스

7 네트워크 해킹과 보안 - 김미진

실습 – 윈도우에서 Telnet 데몬 활성화시키기

1. 내 컴퓨터 – 컴퓨터 관리 : Telnet 서비스 선택

8 네트워크 해킹과 보안 - 김미진

실습 – 윈도우에서 Telnet 데몬 활성화시키기

2. 내 컴퓨터 – 컴퓨터 관리 : 서비스 활성화

9 네트워크 해킹과 보안 - 김미진

실습 – 윈도우에서 Telnet 데몬 활성화시키기

3. Telnet 서비스 동작 확인

telnet 127.0.0.1

10 네트워크 해킹과 보안 - 김미진

실습 – 리눅스에서 Telnet 데몬 활성화시키기

1. disable = yes 를 disable = no 로 바꾼다 .

vi /etc/xinetd.d/telnet

11 네트워크 해킹과 보안 - 김미진

실습 – 리눅스에서 Telnet 데몬 활성화시키기

2. 데몬을 재시작해준다 .

service xinetd restart

3. Telnet 서비스 동작 확인한다 .

telnet 127.0.0.1

12 네트워크 해킹과 보안 - 김미진

3. 스캔

스캔은 서비스를 제공하는 서버의 작동 여부와 제공하고 있는 서비스를 확인하기 위한 것이다 . TCP 기반의 프로토콜은 기본적으로 질의 (Request) 를 보내면 응답 (Response) 을 보낸다 .

스캐닝은 이러한 기본적인 메커니즘에 기본 하는 것으로 , 열려있는 포트 , 제공하는 서비스 , 동작중인 데몬의 버전 , 운영체제의 버전 ,

취약점 등 다양한 정보를 얻어내는 것이 가능하다 .

Ping & ICMP Scan

Ping 은 네트워크와 시스템이 정상적으로 작동하는지 확인하기 위한 간단한 유틸리티로 개발되었다 . ICMP(Internet Control Messaging

Protocol) 를 사용한다 .

각각의 네트워크는 고유한 ping 이 존재하며 , 일반적으로 알려진 ping 은 TCP/IP 네트워크에서의 ping 을 말한다 .

13 네트워크 해킹과 보안 - 김미진

ICMP 스캔

ICMP 를 이용한 스캔 방법으로는 다음의 네 가지를 생각할 수 있다 .

- Echo Request(Type 8) 과 Echo Reply(Type 0) 을 이용한 방법

- Timestamp Request(Type 13) 와 Timestamp Reply(Type 14) 을 이용한 방법

- Information Request(Type 15) 와 Information Reply(Type 16)

을 이용한 방법

- ICMP Address Mask Request(Type 17) 와 ICMP Address Mask

Reply(Typ18) 을 이용한 방법

14 네트워크 해킹과 보안 - 김미진

1. Echo Request(Type 8) 과 Echo Reply(Type 0) 을 이용한 방법

15 네트워크 해킹과 보안 - 김미진

2. Timestamp Request(Type 13), Timestamp Reply(Type 14)

Timestamp Request 는 원격지 시스템의 현재 시간을 알아보기 위한 패킷이다 . Timestamp 패킷은 송신자가 패킷을 받은 시간(Originate Timestamp) 과 수신자가 패킷을 받은 시간 (Receive

Timestamp), 송신자가 수신자에게 전송하는 동안 걸린 시간(Transmit Timestamp) 으로 공격대상의 현재 시스템 시간을 알 수 있다 .

하지만 , Timestamp Request 패킷에 Reply 패킷을 돌려보내오는 시스템이 시간만을 알려준다고 생각할 수는 없다 . 상대 시스템이 Reply 패킷이 돌아온다는 것은 상대 시스템이 활성화되어 있음을 말하는 것이다 .

16 네트워크 해킹과 보안 - 김미진

3. Information Request(Type 15), Information Reply(Type 16)

 Information Request 와 Reply 패킷은 메인 프레임의 터미널과 같이 부팅할 때 자신의 디스크가 없는 시스템에 스스로 설정할 수 있도록 하는 패킷으로 , 자신의 네트워크를 찾기 위해 개발되었다 .

기본적인 목적은 RARP, Bootp, DHCP 와 같은 프로토콜과 같으나 다른 프로토콜을 이용한 방법에 비해 원시적이라고 할 수 있다 . 이 방법 역시 Timestamp 패킷과 마찬가지로 죽어있는 시스템이 Relpy 패킷을 보내오지는 않을 것이다 .

4. ICMP Address Mask Request(Type 17), ICMP Address Mask Reply(Typ18)

 ICMP Address Mask Request 와 Reply 패킷은 Information

Request 패킷과 같이 터미널이 부팅될 때 자신이 속해 있는 네트워크의 서브넷 마스크를 알기 위해서 보내는 프로토콜이다 .

위의 두 가지 방법과 마찬가지로 Reply 패킷을 돌려보내오는지 확인함으로써 , 상대 시스템의 활성화 여부를 확인한다 .

17 네트워크 해킹과 보안 - 김미진

UDP Open 스캔

포트가 열려있을 경우 , 아무런 응답이 없으며 , 포트가 닫혀 있을 경우에는 ICMP Unreachable 패킷을 받게 된다 .

포트가 열려 있을 경우 포트가 닫혀 있을 경우

18 네트워크 해킹과 보안 - 김미진

TCP Open 스캔포트가 열려있을 경우 , 세션이 성립되며 , 포트가 닫혀 있을 경우에는 RST+ACK 패킷을 받게 된다 .

포트가 열려 있을 경우 포트가 닫혀 있을 경우

19 네트워크 해킹과 보안 - 김미진

Stealth 스캔 : TCP Half Open 스캔

포트가 열려있을 경우 , 서버로부터 SYN+ACK 패킷을 받은 후 ,

RST 패킷을 보내어 연결을 끊는다 . 포트가 닫혀 있을 경우에는 Open 스캔의 경우와 같다 .

포트가 열려 있을 경우 포트가 닫혀 있을 경우

20 네트워크 해킹과 보안 - 김미진

Stealth 스캔 : FIN, Xmas, Null 스캔

포트가 열려 있을 경우에는 응답이 없고 , 포트가 닫혀 있는 경우에만 RST+ACK 패킷이 되돌아온다 .

포트가 열려 있을 경우 포트가 닫혀 있을 경우

21 네트워크 해킹과 보안 - 김미진

Stealth 스캔 : 시간차 공격

공격의 차단을 피하거나 , 탐지를 회피하기 위해 특정한 시간 간격으로 스캔 패킷을 보내는 기법

Paranoid : 5분이나 10분 간격

Sneaky : WAN 에서는 15초 단위로 , LAN 에서는 5초 단위

Polite : 0.4초 단위

Normal : 정상

Aggressive : 호스트 타임 아웃 : 5분 , 패킷 당 1.25초까지 응답을 기다린다 .

Insane : 호스트 타임 아웃 : 75초 , 패킷 당 0.3초까지 응답을 기다린다 .

22 네트워크 해킹과 보안 - 김미진

실습 – Fping 을 이용한 스캔

Fping 을 이용하여 특정 네트워크에서 활성화된 시스템 확인

fping -g 172.16.0.0/24

23 네트워크 해킹과 보안 - 김미진

실습 – Sing 을 이용한 스캔

Sing 을 이용한 TimeStamp 스캔

./sing -c 1 -tstamp 172.16.0.2

24 네트워크 해킹과 보안 - 김미진

실습 – NMAP 을 이용한 스캔

NMAP 을 이용한 Open 스캔

nmap -v -sT 172.16.0.4

25 네트워크 해킹과 보안 - 김미진

NMAP 을 이용하여 가능한 스캔

스캔 옵션 내 용

-sT connect( ) 함수를 이용한 Open 스캔

-sS 세션을 성립시키지 않는 TCP syn 스캔

-sF Fin 패킷을 이용한 스캔

-sN Null 패킷을 이용한 스캔

-sX XMas 패킷을 이용한 스캔

-sU UDP 포트 스캔

-sA Ack 패킷에 대한 TTL 값의 분석

26 네트워크 해킹과 보안 - 김미진

4. 운영체제의 탐지

Banner Grabbing 은 Telnet 과 같이 원격지의 시스템에 로그인을 시도하면 나타나는 안내문과 같은 것이다 .

배너 그래빙 (Banner Grabbing)

23 번 포트에 텔넷 접속을 시도한 위의 화면에서는 운영체제의 버전과 커널 버전을 확인할 수 있다 . 이러한 배너 그래빙은 23 번 포트 이외에도 , 21, 25, 110.143 포트에서도 가능하다 .

27 네트워크 해킹과 보안 - 김미진

■ Fin 스캔을 이용한다 . Fin 스캔은 모든 운영체제에 적용되는 것은 아니다 . 적용되는 운영체제는 윈도우 , BSD, Cisco, Iris

등으로 , Fin 스캔의 가능 여부에 따라 운영체제를 판별할 수 있다 .

■ 세션 연결 시 TCP 패킷의 시퀀스 넘버 생성을 관찰

 - 윈도우 : 시간에 따른 시퀀스 넘버 생성

 - 리눅스 : 완전한 랜덤

 - FreeBSD, Digital-Unix, IRIX, Solaris : 시간에 따른 랜덤한 증분

■ TCP 연결 시 최초 패킷의 윈도우 크기를 관찰

프로토콜에 대한 반응

28 네트워크 해킹과 보안 - 김미진

운영체제에 대한 체계적인 탐지 정보를 가지고 있는 사이트로 상세한 정보를 얻을 수 있다 .

넷크래프트 이용

29 네트워크 해킹과 보안 - 김미진

5. 방화벽과 IDS 의 탐지

1. TTL 값을 1 로 설정해서 포트 번호를 33435 번으로 하여 UDP

패킷을 한 번에 세 개씩 보낸다 .

2. 첫 번째 라우터는 1 로 설정된 TTL 값을 0 으로 줄이고 , 출발지 주소로 ICMP Time Exceed Message(Type 11) 을 보낸다 .

3. a.a.a.a 에서는 이 패킷을 보고 , 첫 번째 라우터까지의 시간을 알아낼 수 있다 .

4. 다시 두 번째 라우터까지는 TTL 값을 2 로 설정해서 보내고 ,

첫번째 라우터와 같은 과정을 거친다 .

5. 계속 라우터를 통과하여 목적지 시스템에 도달하게 되면 , ICMP port

unreachable(Type 3) 패킷이 돌아오게 되고 , 모든 과정이 끝난다 .

Traceroute 의 원리

30 네트워크 해킹과 보안 - 김미진

목표 IP 에 대해 traceroute 를 시도할 경우 , ICMP Time Exceed

Message 가 돌아오지 않고 , * 로 표시된 부분에 방화벽이 존재한다 .

Traceroute 을 이용한 방법

31 네트워크 해킹과 보안 - 김미진

각각의 방화벽과 IDS 는 운영을 위해 특정한 포트를 활성화시키고 있다 .

특정 포트에 대한 탐지를 통해 방화벽과 IDS 의 종류까지 알아낼 수 있다 .

Port 스캔을 이용한 방법

방 화 벽

Check Point : Firewall - I

256,257,258

M.S. ISA 1078, 1080, 1745

어울림 Secure Works 3346,2890

Cisco PIX 530, 540

Astaro 1235, 1236

IDS( 침입 탐지 시스템 )

Check Point : VPN Swite

300, 301

인젠 Neowatcher 1887

Snort 2350 32 네트워크 해킹과 보안 - 김미진

1. 방화벽이 탐지되면 방화벽까지의 TTL 보다 1 만큼 더 큰 TTL

값을 생성하여 보낸다 .

2. 방화벽이 패킷을 차단할 경우 아무런 패킷도 돌아오지 않는다 .

3. 방화벽이 패킷을 그대로 보낼 경우 , 패킷은 다음 라우터에서 사라지며 , 라우터는 ICMP Time Exceed Message(Type 11) 을 보낸다 .

4. 공격자는 ICMP Time Exceed Message 의 여부를 확인하고 ,

ACL 을 예측할 수 있다 .

방화벽을 이용한 패킷 필터링 규칙 확인 ( firewalk 의 원리 )

33 네트워크 해킹과 보안 - 김미진