Network Security WireShark를 활용한 프로토콜 분석 I.

Slides:



Advertisements
Similar presentations
Chapter 4. 캡처한 패킷 작업 1. 목차  4.1 캡처 파일 작업 ☞ 캡처 된 패킷 저장과 내보내기 ☞ 캡처 된 패킷 병합  4.2 패킷 작업 ☞ 패킷 검색 ☞ 패킷 표시 ☞ 패킷 출력  4.3 시간 표시.
Advertisements

HTTPS Packet Capture Tutorial
정보 보안 개론과 실습 네트워크 해킹과 보안 3부 해킹 전 정보 획득 Chapter 10. 목록화.
LAN의 구성요소 컴퓨터 네트워크과 오세원.
1 안드로이드 네트워킹 안드로이드 앱 프로그래밍 여 규리.
16장 X.25 패킷 교환망 16.1 X.25 계층 구조 16.2 패킷 계층 프로토콜 16.3 요약.
CHAP 22. 블루투스.
7장. TCP와 UDP.
6 데이터 링크 계층.
22 장 프로세스간 전달 : UDP와 TCP 22.1 프로세스간 전달 22.2 사용자 데이터그램 프로토콜
Network Lab. Young-Chul Hwang
PHP입문 Izayoi 김조흔.
24 장 TCP/IP 24.1 개요 24.2 네트워크층 24.3 주소 지정 24.4 서브넷팅틍
네트워크 보안 TCP/IP 네트워크통신 개념.
VoIP (Voice Over Internet Protocol)
4.3 Managing TCP sessions 4조 임종철,임정묵,이규윤.
제 17 장 TCP : 전송 제어 프로토콜 정보통신연구실.
네트워킹 CHAPTER 13 Section 1 네트워킹의 개요와 java.net 패키지 Section 2 인터넷 주소와 URL
인공지능실험실 석사 2학기 이희재 TCP/IP Socket Programming… 제 7장 소켓 연결의 우아한 종료 인공지능실험실 석사 2학기 이희재
8장. 원격지 시스템 관리하기.
15장 X.25 패킷 교환망 15.1 X.25 계층 15.2 X.25와 관련된 기타 프로토콜 15.3 요약.
네트워크 프로그래밍 Yang-Sae Moon Department of Computer Science
Chapter 21 Network Layer: ARP, ICMP (IGMP).
제 19 장 TFTP 19.1 메시지 19.2 연결 19.3 데이터 전송 19.4 UTP 포트 19.5 TFTP 예제
Chapter 06. UDP 서버/클라이언트.
NJM Messenger 박상원 박연호.
컴퓨터 네트워크 PART 02 프로토콜 (chapter 03 트랜스포트 계층) 임효택
모바일 자바 프로그래밍 JDBC / WAP Ps lab 오민경.
10 장 데이터 링크 제어(Data Link Control)
제 22 장 TCP Persist Timer.
17장 X.25 패킷 교환망 17.1 X.25 계층 17.2 X.25와 관련된 기타 프로토콜 17.3 요약.
속성과 리스너 초기화 파라미터 외 파라미터에 대해 이해한다. 리스너를 생성해보고 사용에 대해 이해한다.
Chapter 5 UDP Socket 소켓 프로그래밍.
Chapter 19 솔라리스 네트워크 관리 Solaris1 . TCP/IP 개요
Trivial File Transfer Protocol (TFTP)
22 장 전송층(Transport Layer)
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
Contents 통신 프로토콜의 필요성 OSI의 7계층 참조 모델 계층적 프로토콜의 동작 TCP/IP 프로토콜
제 15 장 BOOTP와 DHCP BOOTP 15.2 동적 호스트 설정 프로토콜.
Wi-Fi 취약점 분석 본 프로젝트는 Wi-Fi 환경에서의 취약점 분석을 위한 프로젝트로 다양한 공격방법을 테스트
Transmission Control Protocol (TCP)
21 장 전송층(Transport Layer)
제 12 장 전송 제어 프로토콜(TCP) 12.1 프로세스간 통신 12.2 TCP 서비스 12.3 세그먼트 12.4 옵션
6 데이터 링크 계층 학습 목표 오류 제어, 흐름 제어의 원리와 동작 방식을 이해한다.
9 TCP의 이해 학습 목표 전송 계층 프로토콜이 제공하는 기능을 이해한다.
CGI란 무엇인가? CGI(Common Gateway Interface)의 정의
TCP/IP TCP/IP의 이해 TCP UDP IP 한빛미디어(주).
16 장 네트워크 보안 : 방화벽과 VPN 16.1 개요 16.2 기밀성 16.3 전자 서명 16.4 인터넷 보안
Network 네트워크 이론 및 실습 TCP / IP 4장.
10 장 데이터 링크 제어(Data Link Control)
10 장 데이터 링크 제어(Data Link Control)
웹(WWW).
STS 에서 웹 서버 설치 방법.
제 19 장 TCP 대화식 데이터 흐름.
Ping Test.
통신프로토콜 전산정보학부 모바일인터넷과 권 춘 우
Chapter 04. TCP 서버/클라이언트.
세션에 대해 알아보고 HttpSession 에 대해 이해한다 세션 관리에 사용되는 요소들을 살펴본다
제 6 장 IP 패킷 전달과 라우팅 6.1 연결형 서비스와 비연결형 서비스 6.2 직접 전달과 간접 전달 6.3 라우팅 방법
5.2.3 교환방식의 비교 학습내용 교환방식의 비교.
다자간 채팅프로그램 김형도 허영민
4. IP 데이터그램과 라우팅 (6장. 인터넷과 IP) IP 데이터그램 : 특정 물리망에 종속되지 않은 가상의 패킷 형식.
소리가 작으면 이어폰 사용 권장!.
컴퓨터 네트워크 PART 02 프로토콜 (chapter 03 트랜스포트 계층) 임효택
Network Lab. Young-Chul Hwang
CCIT 네트워크 발표 정보보호학과 평문 사이트와 SSL 사이트, SSL strip과 데이터 변조를 이용한 로그인 취약점
Completion Port기반의 채팅프로그램
통신프로토콜 전산정보학부 모바일인터넷과 권 춘 우
ARP.
소리가 작으면 이어폰 사용 권장!.
Presentation transcript:

Network Security WireShark를 활용한 프로토콜 분석 I

CONTENT 1 TCP 분석 2 Telnet 분석 (글로 대체) 3 FTP 분석 (글로 대체)

1 TCP 분석 1 TCP란? 전송계층으로 서버와 클라이언트간에 데이터를 신뢰성 있게 전달하기 위해 만들어진 프로토콜 메시지나 파일들을 좀더 작은 패킷으로 나누어 전달하는 일과, 수신된 패킷들을 원래의 메시지로 재조립하는 일을 담당 데이터는 네트워크 선로를 통해 전달되는 과정에서 손실되거나 순서가 바뀔 수 있는데, TCP는 손실을 검색해내서, 이를 교정하고 순서를 재조합 할 수 있게 함 쪼갠 데이터와 필요한 정보를 함께 전송하여 통신링크 마지막 부분에서 합치는데, 합친 부분을 데이터 그램이라고 함 TCP를 이용하는 애플리케이션에는 HTTP나 SMTP등이 있음

TCP 헤더 형식 1 [그림 0] TCP 헤더 형식

1 TCP 접속의 시작 절차 (3-way handshake) 클라이언트에서 웹 서버로 연결을 최초로 시도했을 경우 먼저 SYN 패킷을 보내고 SVN-SENT 상태로 전환 서버가 Listen 상태에서 클라이언트로 부터 SYN 패킷을 받으면 이에 대한 응답으로 SYN + ACK 패킷을 클라이언트에 전송한 후 클라이언트 IP에 대해 SYN-Received 상태로 전환 서버로부터 SYN+ACK 패킷을 받으면 클라이언트는 Established 상태로 변하게 되면서 연결을 확인 클라이언트는 서버로 SYN+ACK에 대한 응답으로 ACK 패킷 전송 서버는 ACK 패킷을 받고 해당 클라이언트 IP에 대한 포트 Established 상태로 전환 [그림 1] 3-way handshake

1 TCP 접속의 시작 절차 (3-way handshake) 클라이언트에서 SYN 패킷을 보낼 때 Sequence number에 임의의 숫자(ex. 100)를 넣어서 보냄 앞서 배웠듯이 SYN 패킷을 받은 서버는 응답으로 SYN+ACK 패킷을 보내는데, 이때 sequence number에 임의의 숫자(ex. 200)를 넣고 앞에서 받은 sequence number+1 값을 Acknowledgement number에 넣어서 보냄 (이때 sequence number 도 100 -> 101) 서버로부터 SYN+ACK 패킷을 받은 클라이언트는 응답으로 ACK 패킷을 보내고 서버로 부터 받은 Sequence number + 1 값을 Acknowledgment number에 넣어 보냄 [그림 2] Sequence number

TCP 덤프 분석 1 [그림 3] WireShark

TCP 덤프 분석 1 [그림 4] [Statistics] – [Flow Graph]

TCP 덤프 분석 1 [그림 5] SYN, ACK

47번 TCP 덤프 분석 1 [그림 6] 패킷 상세 영역 Source Port : 송신자 포트 번호 (클라이언트가 동적으로 할당, 16비트) Destination Port : 수신자 포트 번호 (웹(HTTP)을 나타내는 80번 저장, 16비트) Stream index : 와이어샤크가 TCP 접속에 대해 일련번호를 부여한 것 (0부터 시작) Sequence number : 패킷의 일련번호가 저장되어 있음 (상대적인 일련번호) Header Length : TCP 헤더의 크기 47번 덤프의 Source port : 10491, Destination port : 80 (HTTP)

1 47번 TCP 덤프 분석 [그림 7] 초기 시퀀스 번호 및 확인 응답 번호 47번 덤프의 초기 시퀀스 번호 : b2 a1 d8 96 (32비트), 응답 번호 : 00 00 00 00

1 47번 TCP 덤프 분석 [그림 8] Flag TCP의 플래그는 각각 1비트로 구성, 1이 삽입 : 유효화 URG : 긴급 포인터 플래그 (통신 도중에 중요한 데이터를 끼워 넣고 보낼 때 1) ACK : 확인 응답번호를 유효화 할 경우 1 PSH : 푸시기능에 의해 수신 윈도우에 버퍼링 된 세그먼트를 애플리케이션에 전달할 때 1 RST : 통신 도중에 강제 종료하면 1 SYN : 통신 시작 시에 동기화 할 경우 1 FIN : 통신 종료 시에 1 47번 TCP 덤프에는 SYN만 1로 셋팅 되어있고 나머지는 0으로 되어있음

1 48번 TCP 덤프 분석 [그림 9] 패킷 상세 영역 48번 덤프 Source port : 80 Destination port : 10491 SYN+ACK 패킷 전송 과정 SYN 전송과정에서는(47번) 목적지가 웹 서버(80)였으므로 SYN 패킷을 받은 웹 서버가 클라이언트(10491)로 SYN+ACK 패킷을 전송함

1 48번 TCP 덤프 분석 [그림 10] 시퀀스 번호 및 확인 응답 번호 48번 덤프의 초기 시퀀스 번호 : 53 48 b8 b2 (32비트), 응답 번호 : b2 a1 d8 97 이전에(47번) Sequence number(b2 a1 d8 96) + 1값이 48번의 응답 번호

1 48번 TCP 덤프 분석 [그림 11] Flag 48번 TCP 덤프 SYN : 1 셋팅, ACK : 1 셋팅

1 49번 TCP 덤프 분석 [그림 12] 패킷 상세 영역 49번 덤프 Source port : 10491 Destination port : 80 ACK 패킷 전송 과정 SYN+ACK 전송과정에서는(48번) 목적지가 클라이언트(10491)였으므로 SYN+ACK 패킷을 받은 클라이언트가 웹 서버(80)로 ACK 패킷을 전송함

1 49번 TCP 덤프 분석 [그림 13] 시퀀스 번호 및 확인 응답 번호 49번 덤프의 초기 시퀀스 번호 : b2 a1 d8 97(32비트), 응답 번호 : 53 48 b8 b3 이전에(48번) Sequence number(53 48 b8 b2) + 1값이 49번의 응답 번호

1 49번 TCP 덤프 분석 [그림 14] Flag 49번 TCP 덤프 ACK : 1 셋팅 47,48,49 3개의 세그먼트를 주고 받으면서 3-way handshake가 종료됨

1 참고 문헌 http://mindgear.tistory.com/206 http://hack-cracker.tistory.com/120 http://wildpup.cafe24.com/archives/522 와이어 샤크를 이용한 패킷 캡처 철저 입문, 다케시타 메구미 저, 길벗, p366 ~ p385

1

감사합니다!