통신 프로토콜 : 서로 다른 기기들 간의 데이터를 교환할 때 통신 방법에 대한 규칙과 약속
OSI 7Layer
TCP/IP 프로토콜
포트(Port): 각 단말기 내에서 사용되는 주소
수신자의 시스템 내에서 어떤 프로그램으로 메시지를 올려 보내줄지 결정
TCP 작동
encapsulation -> routing ->decapsuation
encapsulation: host A(송신)에서 계층을 내려가며 보내고자 하는 정보에 헤더를 보내는 과정
router를 거치며 routing, host B로 보내짐
decapsulation: host B(수신)에서 계층을 올라가며 읽은(필요 없는) 헤더를 뗌
SYN: Synchronize, 동기화 / ACK: Acknowledge, 수락
IP
네트워크 계층에 해당하는 통신 프로토콜, 라우팅(Routing) 담당
각 노드의 주소는 3계층의 IP주소
라우팅 테이블(Routing Table)은 각 노드 사이의 연결 정보를 저장한 테이블로, 두 연결 사이의 전송 비용(Cost)을 저장
IP 주소 | MAC 주소 |
---|---|
IPv4, IPv6 | 물리적 주소 |
10진수로 표현하고, 32bit | 16진수로 표현하고, 48bit |
집주소처럼 네트워크가 달라지면 바뀐다 | 주민번호처럼 변하지 않는 주소다 |
Network 계층(L3)에서 사용 | Data Link 계층(L2)에서 사용 |
Sniffing
Spoofing
DOS(Denial Of Service: 서비스 거부 공격)
LAN (Local Area Network) : 가까운 지역을 묶는 네트워크
VLAN (Virtual LAN) : LAN을 논리적으로 분할하여 가상의 LAN을 구성하는 것
Trunking : 서로 다른 스위치를 연결할 때 하나의 통합 링크로 여러 VLAN
에 패킷을 보낼 수 있는 방식
Tagging : 패킷에 VLAN 정보를 넣어서 보내는 것
VLAN 종류
Static VLAN | Dynamic VLAN |
---|---|
스위치의 port에 VLAN을 할당 | 동적으로 VLAN 할당 |
포트 기반 VLAN으로 일반적인 VLAN | MAC 주소 등에 따라 자동으로 VLAN 할당 |
woodstock-1
와이어샤크에 들어가서 Analyze -> Follow -> TCP Stream을 보면
$MyPass BITSCTF{such_s3cure_much_w0w}을 확인할 수 있다.
당신이 플래그를 찾을 수 있을까?
1번과 마찬가지로 와이어샤크에 들어가서 Analyze -> Follow -> TCP Stream을 보면
PRIVMSG #ctf : 뒤에 나오는 문장들이 대화로 이어지는 것을 알 수 있다.
대화를 읽다보면 CTF{some_leaks_are_good_leaks_} 플래그를 얻을 수 있다.
DefCoN#21 #1
마찬가지로 와이어샤크에 들어가서 Analyze -> Follow -> TCP Stream을 보면
PRIVMSG #S3cr3tSp0t : 뒤에 나오는 문장들이 대화로 이어지는 것을 알 수 있다.
what day do you want to meet up? 다음에 오는 문장들이 특수문자로 이루어진 것을 보면 HTML 인코딩 방식을 사용했다는 것을 알 수 있다.
문자열들을 html decoder를 통해 복호화하면
How does Wednesday sound?
Great :) what time?
ah 2pm
Ok, I can't wait!
회의가 예정된 요일은 수요일이고 시간은 2시라는 정보를 얻을 수 있다.