프로토콜 분석
1. Telnet 프로토콜
1) 개요
- 텔넷은 인터넷이나 로컬 영역 네트워크 연결에 쓰이는 네트워크 프로토콜(원격 제어 터미널)
- 프로토콜의 클라이언트 일부 기능이 추가된 소프트웨어
- 텔넷 클라이언트는 대부분의 유닉스 시스템에서 사용
- 최근 텔넷의 보안 문제로 사용률 감소 (SSH로 대체)
- 23번 포트를 주요 사용
2) 실습
2. FTP 프로토콜
1) 개요
- 파일 전송 프로토콜의 약자
- TCP/IP 프로토콜을 가지고 서버와 클라이언트 사이의 파일 전송을 하기 위한 프로토콜
- 응용 계층에 속함
- 최초의 FTP 클라이언트 애플리케이션들은 운영 체제가 그래픽 사용자 인터페이스를 갖추기 이전에 개발된 CUI 프로그램으로 현재 대부분의 윈도우, 유닉스, 리눅스 운영 체제에 기본 포함
- 그 뒤로 수많은 FTP 클라이언트 및 오토메이션 유틸리티들이 데스크톱, 서버, 모바일 장치, 하드웨어용으로 개발되고 있으며, FTP는 웹 페이지 편집기와 같은 생산성 응용 프로그램들에 통합
명령/데이터 전송 연결
명령 연결 |
- 서버 21번 포트 - 명령을 위한 연결 생성 후 여기를 통해 클라이언트에서 지시하는 명령어 전달 |
데이터 전송용 연결 |
- 실제 파일 전송은 필요할 때 새로운 연결 |
능동/수동 모드
능동 모드 |
- 20번 포트에서 클라이언트가 지정한 지점으로 데이터 연결 - 클라이언트가 방화벽, NAT 등을 사용하는 환경일 때 동작 X |
수동 모드 |
- 클라이언트가 서버의 지정한 포트로 연결 - 보통 1023보다 큰 포트 사용 |
2) 실습
3. ARP/ICMP 프로토콜
1) 개요
① ARP(주소 결정 프로토콜)
- 네트워크 상에서 ip 주소를 물리적 네트워크 주소로 대응시키기 위해 사용되는 프로토콜
- ARP 통신 방식
: 호스트 A가 호스트 B에게 IP 패킷 전송
: ARP 프로토콜 사용
: 호스트 B는 자신의 IP 주소가 목적지에 있는 ARP 패킷 수신
: 자신의 물리 주소를 A에게 응답
- ARP Table
: 각 IP 호스트의 ARP 캐시라 불리는 메모리에 테이블 형태로 저장
: 패킷을 전송할 때 다시 사용
- ARP와 반대로 IP 호스트가 자신의 물리 네트워크 주소는 알지만 IP 주소는 모르는 경우 서버로부터 IP 주소를 요청하기 위해 RARP를 사용
② ICMP(인터넷 제어 메시지 프로토콜)
- ICMP 필요성
: IP는 최선형 전달 서비스만 지원하기 때문에 IP 패킷이 전송되는 목적지에 전달되지 못함
: 전달되더라도 원하는 서비스 포트가 존재하지 않는 경우가 존재하지 않는 경우도 발생
: 오류에 대한 보고 기능과 네트워크 상태 진단 기능을 통해 IP를 보조하는 기능을 수행
: ICMP는 IP로 캡슐화되며 IP 헤더의 프로토콜 필드값을 1로 설정하여 ICMP 메시지임을 나타냄
ICMP 포맷
① 메시지 타입 필드 : ICMP 메시지 종류를 기술
② 코드 필드 : 메시지 타입에 따라 세분화가 필요할 때 사용
③ 체크섬 필드 : ICMP메시지에 대해 체크섬을 계산한 값이 삽입
2) 실습
4. HTTP/DNS 프로토콜
1) 개요
① HTTP
- HTTP는 WWW 상에서 정보를 주고받을 수 있는 프로토콜
- 주로 HTML 문서를 주고받는 데 쓰임
- HTTP는 클라이언트와 서버 사이에 이루어지는 요청/응답 프로토콜
- 전달되는 자료는 http:로 시작하는 URL로 조회
요청 메소드 |
설명 |
GET |
URL에 해당하는 자료의 전송 요청 |
HEAD |
GET과 같은 요청이지만 자료에 대한 정보만을 받음 |
POST |
서버가 처리할 수 있는 자료 전송 |
PUT |
해당 URL에 자료를 저장 |
DELETE |
해당 URL의 자료를 삭제 |
TRACE |
이전에 요청한 내용을 들을 것을 요청 |
OPTIONS |
서버가 특정 URL에 대해 어떠한 HTTP Method를 지원하는지 확인 |
CONNECT |
프록시가 사용하는 요청 |
PATCH |
리소스에 대한 부분적인 수정을 적용 |
② DNS(도메인 네임 시스템)
- 호스트의 도메인 이름을 호스트의 네트워크 주소로 바꾸거나 그 반대의 변환을 수행
- 특정 컴퓨터의 주소를 찾기 위해 사람이 이해하기 쉬운 도메인 이름을 숫자로 된 식별 번호로 변환
- IP 주소로 변환하고 라우팅 정보를 제공하는 분산형 데이터베이스 시스템
- 전화번호부와 비슷한 기능
2) 실습
5. SMB 프로토콜
1) 개요
- 도스나 윈도우에서 파일이나 디렉터리 및 주변 장치들을 공유하는데 사용되는 메시지 형식
- NetBIOS는 SMB 형식에 기반을 두고 있으며, 많은 네트워크 제품들도 SMB를 사용
(랜매니저, 윈도우 포 워크그룹(Windows for Workgroups), 윈도우 NT, 그리고 랜 서버(Lan Server) 등)
- 서로 다른 운영체제 사이에 파일을 공유할 수 있도록 하기 위해 SMB를 사용
- SMB는 대부분 마이크로소프트 윈도우를 실행하고 있는 컴퓨터에서 이용
- 윈도우 2003, win7, vista 이상
[네트워크 분석 도구]
1. 시큐리티 오니언
- 침입 탐지, 네트워크 보안 모니터링 및 로그 관리를 위한 Linux 배포판
- Ubuntu를 기반
- Snort, Suricata, Bro, OSSEC, Sguil, Squert, ELSA, Xplico, NetworkMiner 및 기타 여러 보안
도구 포함
- 사용하기 쉬운 설치 마법사를 사용하면 몇 분 안에 기업의 분산 센서 군 구축
2. wireshark
- 세계에서 가장 널리 쓰이는 네트워크 분석 프로그램
- 네트워크상에서 캡처한 데이터에 대한 네트워크/상위 레이어 프로토콜의 정보를 제공
- 패킷을 캡처하기 위해 pcap 네트워크 라이브러리를 사용
- 장점 : 쉬운 설치, GUI를 이용한 간단한 사용법, 다양한 기능
3. xplico
- 목표 : 포함된 응용 프로그램 데이터를 인터넷 트래픽 캡처에서 추출
- pcap 파일에서 각 전자 메일, 모든 HTTP 내용, 각 VoIP 호출, FTP, TFTP 등을 추출
- 오픈 소스 네트워크 포렌식 분석 도구
- 지원되는 프로토콜 : HTTP, SIP, IMAP, POP, SMTP, TCP, UDP, IPv6 등
- 각 애플리케이션 프로토콜에 대한 PIPI
- SQLite 데이터베이스 또는 MySQL 데이터베이스 및 / 또는 파일에 데이터 및 정보 출력
- 재구성한 각 데이터에는 플로우를 고유하게 식별하는 XML 파일과 재구성된 데이터가 포함된 pcap 연결
- 외부 DNS 서버가 아닌 입력 파일에 포함된 DNS 패키지에서 역 DNS 조회
- 데이터 입력 또는 파일 입수 수에 제한 X
- 각 Xplico 구성 요소는 모듈 (모듈화)
- 가장 적절하고 유용하게 추출된 데이터를 구성하는 디스패처를 쉽게 생성할 수 있는 기능
4. networkminer
- Windows 용 Network Forensic Analysis Tool (NFAT)
- Linux / Mac OS X / FreeBSD에서도 호환
- 운영 체제, 세션, 호스트 이름, 열린 포트 등을 검색하기 위해 수동 네트워크 스니퍼/패킷 캡처 도구로 사용
- PCAP 파일에서 전송 된 파일 및 인증서를 다시 생성/재구성
- 직관적인 사용자 인터페이스에서 추출된 가공하여 고급 네트워크 트래픽 분석 (NTA)을 쉽게 수행
- YouTube와 같은 웹 사이트에서 네트워크를 통해 스트리밍되는 미디어 파일(예 : 오디오 또는 비디오 파일)
을 추출하고 저장하는 데 사용
- 파일 추출을 위해 지원되는 프로토콜 : FTP, TFTP, HTTP, SMB, SMB2, SMTP, POP3 및 IMAP
5. captipper
- Python으로 제작된 악성 트래픽 분석 도구
- 디지털 포렌식 분석을 하기 위한 기본 기능을 제공
: 트래픽 내에서 파일 추출
: 트래픽 흐름 분석
: 패킷 헤더, 내용 분석
: 헥사 뷰어
: 기타 기능 제공
- 패킷 캡쳐 파일 흐름 재구성 기능 제공
: log 명령으로 페이지 탐색 모니터링 가능
- 통신을 오브젝트 단위로 구별하여 분석 기능 제공
- 분석 보고서 생성 기능 제공(--report 옵션)
6. IDS 장비
① 스구일(Sguil)
- 네트워크 보안 모니터링 및 탐지 이벤트 분석 도구
- 일반 GUI 응용 프로그램
- TCL/TK 를 지원하는 모든 운영 체제에서 실행 가능
- Linux, MacOS, Window 등
② Quick Query
- ST / Src IP / Sport / Dst IP / Dport 값을 기준으로 데이터 베이스 결과를 출력
- 사용 방법 : 마우스 오른쪽 클릭 후 사용
- ST 필드는 카테고리를 기준으로 데이터를 검색
- Src IP, Dst IP, Sport, Dport는 해당 값들을 기준으로 데이터를 검색
③ 스노트(Snort)
- 스니퍼 : 네트워크 패킷 수집
- 패킷 디코더 : 전처리기와 탐지 엔진이 파싱 할 수 있도록 정규화
- 전처리기 : 특정 행위가 발견된 패킷을 탐지 엔진으로 전송
- 탐지엔진 : 전달받은 패킷을 스노트 규칙에 매칭되는 지 확인
- 경고/로깅 : 스노트 규칙에 매칭된 경우 경고 출력 및 기록
7. 바이러스 토탈
- 대표 온라인 분석 사이트
- 기존에 동일한 샘플코드들이 존재했는지 빠르게 확인
- 하루에도 수많은 악성코드가 나타나는 위협에 빠르게 대응
- swf나 exe등의 다양한 악성코드 분석 시 주로 이용
- 다양한 기능
: 파일 전송 및 검색
: 이미 제출된 파일 재검색
: 파일 검사 보고서 가져오기
: URL 보내기 및 스캔
: URL 스캔 리포트 가져오기
: IP 주소 보고서 검색
: 도메인 보고서 검색
: 파일 및 URL에 대한 의견을 달기
: 공용 API와 상호 작용하는 스크립트
'2020 WINTER STUDY > Network' 카테고리의 다른 글
4주차 (0) | 2021.02.12 |
---|---|
3주차 (0) | 2021.01.25 |
1주차 (0) | 2021.01.11 |