본문 바로가기
Certification/2. 정보보안기사

[정보보안기사 실기] [2. 네트워크 보안] 요약 본

by 행태정보수집가 2024. 8. 5.
Port Scanning
※ 학습 목표

구분 Stealth 여부 내용 결과 Nmap
TCP Connect Scan   TCP 포트 오픈 여부 확인 열림 : SYN + ACK
닫힘 : RST + ACK
-sT
TCP SYN Scan O
(Half-Open)
TCP 포트 오픈 여부 확인 열림 : SYN + ACK
닫힘 : RST + ACK
-sS
TCP ACK Scan   방화벽 정책 여부 확인 필터링 On : 응답 없음 or ICMP 에러
필터링 OFF : RST + ACK
-sA
TCP FIN Scan
TCK Xmas Scan
TCK NULL Scan
O FIN : TCP FIN 제어 비트 패킷
Xmas : TCP Flag (UAPRSF) 전달
NULL : 아무것도 설정하지 않는 비트 
열림 : 응답없음
닫힘 : RST + ACK
-sF
-sX
-sN
UDP Scan   UDP 포트 오픈 여부 확인 열림 : DUP 응답 or 응답없음
닫힘 : ICMP 에러 메시지
-sU
Ping Scan   호스트 활성화 여부 확인   -sP
Decoy Scan   다양한 주소로 위조하여 스캔
(위조된 IP로 포트스캐닝 등)
  -sS [ ] -D

 

 


DoS vs DDoS vs DRDoS
※ 학습 목표

 

[DoS vs DDoS vs DRDoS]

구분 내용
DoS (Denial of Service) 1 VS 1 공격
DDoS (Distributed Denial of Service) N vs 1 공격
DRDos (Distributed Reflection Denial of Service) 분산시스템을 악용한 공격

 

[DoS / DDoS]

구분 내용 보안방법
대역폭 공격 ICMP Flooding 1. 대량의 ICMP Echo 요청 ICMP 패킷 차단
Ping of Death 1. 비정상적으로 큰 ICMP 패킷 전송
2. MTU로 인해 패킷 재조합 과정에서 65536Byte 초과
 
Smurf 1. 공격자 IP 위조(희생자 PC 스푸핑)
2. 대량의 ICP Echo Request 패킷 전송
IP Broadcast 패킷 차
Land Attack 1. TCP 패킷의 출발지 IP와 목적지 IP를 공격 대상의 IP주소로 설정  
UDP Flood 1. 대량의 UDP 패킷 전송  
자원 소진 공격 SYN Flooding 3-Way-HandShake 악용하여 대량의 SYN 패킷만 전달하여 세션 연결 1. SYN Cookie 적용
(SYN/ACK 값에 sequence값을 Cookie값에 추가하여, 정상 연결이 아니면 Backlog Queue를 소모하지 않음)
2. TCP 연결유지 시간 조정
3. 임계치 기반
4. First SYN Drop
ACK Flooding 3-Way-Handshake 악용하여 대량의 ACK 패킷 전달 1. 임계치 기반
2. 비정상 TCP 패킷 차단
(방화벽 -> 3-way-handshake 거치지 않는 패킷 차단)
DNS Query Flooding DNS서버에 대량의 DNS질의 1. 임계치 기반
2. 비정상 질의 차단
(비정상 도메인 질의, 랜덤한 호스트 값)
웹/DB 부하 공격 HTTP GET Flooding 3-way-handshake 세션 맺은 후, HTTP GET 메소드를 요청하여, 웹서버와 DB자원 소진 1. 상태코드 4xx 차단 IP 설정
2. 임계치 기반
3. 동일 URL 대량 요청 IP 차단
4. 쿠키값 추가 응답 -> 쿠키 값 미포함 사용자 차단
Hulk DoS 공격대상 웹사이트 주소를 지속적으로 변경하면서 대량 HTTP GET 요청  
Hash DoS Hash 테이블에 Hash Contention을 발생시켜 지속적인 Hash Collision으로 CPU 부하 1. HTTP 요청 길이 제한
2. 랜덤 해쉬함수 사용
Slowloris Attack
(Slow HTTP Header Dos)
헤더 개행문자(\r\n)를 조작하여 세션을 끊내지 않음. 1. Session Timeout 설정
2. 시그니처 차단
RUDY Attack
(Slow HTTP POst DoS)
Post Method를 매으 크게 설정한 후 분할하여 서버에 장시간 전달 1. Content-Length 임계치 설정
2. Session Timeout 설정
Slow read Attack
(Slow HTTP Read DoS)
windows Size를 낮게 설정하여 서버로 전달 1. 비정상 windows size 패킷 차단
2. Session Timeout 설정

 

[DRDoS]

[출처 : 한국인터넷진흥원 , 디도스 공격 대응 가이드]

구분 내용 보완방법
DNS Reflection Attack
  1. DNS 통신은 DNS 서버간의 통신이기에, 출발지 포트가 53/UDP이면서 목적지 주소가 DNS 서버가 아닌 패킷을 차단
2. DNS Query 패킷에 대한 임계치 값을 설정
NTP Reflection Attack   1. 출발 포트가 123/UDP인 패킷을 차단 , 패킷에 monlist 값이 포함될 경우 차단
 - 외부망 NTP 사용 : 화이트리스트 정책
CLDAP Reflection Attack
  1. 외부로부터 들어오는 CLDAP Response 패킷(UDP 프로토콜을 사용하며 출발지 Port는 389번을 사용함)은 차단
SSDP Reflection Attack
  1. 외부로부터 들어오는 SSDP Response 패킷(UDP 프로토콜을 사용하며 출발지 Port는 1900번을 사용함)은 차단
Memcached Reflection Attack : 
  1. 외부로부터 인입되는 Memcached Response 패킷 (UDP 프로토콜을 사용하며 출발지 Port는 11211번을 사용함)은 차단
WS-Discovery Reflection Attack   1. 외부로부터 인입되는 UDP 프로토콜(출발지 Port 3702)을 차단해야 함
CoAP Reflection Attack   1. 외부 노출이 되지 않아야 하기 때문에 5683번 Port 로 인입되는 UDP 프로토콜 패킷은 차단해야 함
Jenkins Reflection Attack
  1. UDP 프로토콜 중 출발지 Port를 33848번으로 사용하는 패킷(Jenkins Response Packet)에 대하여 차단하는 정책 설정
SNMP Reflection Attack   1. 161번을 출발지 Port로 사용하는 패킷을 최상단에서 차단

 


스위치 환경 스니핑 공격 (ARP)
※ 학습 목표

 

구분 내용 보안방법
Switch Jamming Attack
(Mac Flooding Attack)
Switch MAC Address Table의 buffer를 Overflow 시켜서 Switch가 Hub처럼 동작하게 만드는 기법 1. 네트워크 상의 Promiscuous Mode (무차별 모드) 점검
2. ARP Cache Table 내부 IP Static 설정 (재부팅 시 정책 사라짐)
3. 스니핑 전용 탐지 도구 (ARP Watch, Anitsniff, CPM, Neped)
ARP Spoofing Attack MAC주소 위조 → ARP Reply 패킷 지속적 전송 → 희생자 ARP Cache Table 변조 → 스니핑 가능한 구조에서 공격자는 IP Forwarding 기능을 활성화
ARP Redirect Attack Router/Gateway 주소로 Mac 변조 → 외부나가는 패킷 스니핑 1. ICMP Redirection 기능 해제
ICMP Redirect Attack ICMP Redirect Message를 악용하여 희생자의 라우팅 테이블 변조
SPAN(Swich Port Analyzer)
/ Port Mirroring Attack
스위치 관리 포트 접근 물리보안

 


Router 보안
※ 학습 목표

 

구분 내용
Ingress Filtering  
Egress Filtering  
Blackhole Filtering  
Unicast RPF  

 


SSL/TLS
※ 학습 목표

 

[SSL 특징]

SSL 보안 서비스 내용
기밀성
(Confidentiality)
* 대칭 암호(Symmetric Cipher)를 이용한 송수신 메세지 암호화를 통해, 기밀성 제공
무결성
(Integrity)
* 메세지 인증 코드(MAC : Message Access Code)를 통해, 송수신 메세지의 위/변조 여부를 확인할 수 있는 무결성 제공
인증
(Authentication)
* 공개키 인증서를 이용한 Server/Client 간 상호 인증을 수행

(HTTPS-443/TCP, SMTPS-465/TCP, FTPS-990/TCP, TELNETS-992/TCP 등)

 

[SSL/TLS Handshake]

SSL/TLS 완전협상 과정 내용
1. Client Hello * 클라이언트가 지원 가능한 SSL/TLS 버전, 암호 도구 목록(Cipher Suites), 압축 방식 등을 Server에 전달하는 메세지


* Client Random : 클라이언트가 생성하는 32Byte 난수값
- 임의 난수 28byte + 현재 시간 및 날짜 4byte으로, Master Secret 및 Key Block 생성 시, Salt 역할 수행


* Session ID : 서버 세션 식별을 위한 ID
- 클라이언트가 처음 세션을 생성할 때(완전 협상)에는, 빈값을 전달하고, 이미 생성된 세션을 재사용할 때(단축 협상)에는, 세션 ID를 담아서 전달


* 암호 도구 목록(Cipher Suites) : 클라이언트에서 지원 가능한 정보를 담아서 전송
- 키 교환 및 인증 알고리즘, 암호 명세(Cipher Spec)으로 구성 -> 형식 : SSL/TLS_(키 교환 및 인증 알고리즘)_WITH_(Cipher Spec)
- Cipher Spec(암호 명세) : 대칭 암호 알고리즘, 암호키 길이, 블럭 암호모드, HMAC용 해시 알고리즘 등으로 구성
ex) TLS_RSA_WITH_AES_256_CBC_SHA256 : 키 교환 및 인증 알고리즘으로 RSA 사용, 대칭 암호 알고리즘으로 AES 사용, 암호키 길이 256bit, 블록 암호 모드는 CBC, HMAC용 해시 알고리즘은 SHA-256 사용
ex) TLS_DHE_DSS_WITH_AES_256_GCM_SHA256 : 키 교환 알고리즘으로 DHE(Ephemeral Diffie-Hellman), 인증 알고리즘으로 DSS, 대칭 암호 알고리즘 AES, 암호 키 길이 256, 블럭 암호 모드 GCM, HMAC용 해시 알고리즘 SHA-256 사용


* SSL/TLS에서 Diffie-Hellman 키 교환 유형
1. Ephemeral Diffie-Hellman(임시 디피 헬먼) : 매 협상 시 마다, 새 Diffie Hellman 개인키(임의 정수값)을 생성, 공개 Diffie-Hellman 매개변수에 대한 서명(Cipher Suite의 인증/서명 알고리즘 이용)을 통해 인증을 수행


2. Anonymous Diffie-Hellman(익명 디피 헬먼) : 임시 방식과 동일하게 새로운 Diffie-Hellman 개인키(임의 정수값)을 생성하나, 매개변수에 대한 인증을 수행하지 않아 MITM 공격에 취약, 해당 키 교환 방식의 Cipher Suite는 사용하지 않는 것을 권고
2. Server Hello * 사용할 SSL/TLS 버전, 암호 도구(Ciper Suite), 압축 방식 등을 클라이언트에 전달하는 메세지


* Server Random : 서버가 생성하는 32byte 난수값
- 임의 난수 28byte + 현재 시간 및 날짜 4byte로, master secret 및 Key block 생성 시, Salt 역할 수행


* Session ID : 새롭게 생성하거나 존재하는 세션 ID 정보
3. Server Certificate
(선택적 메세지)
* 필요 시, 서버 인증서 목록(서버 인증서 및 인증서에 서명한 인증기관들의 인증서 목록)을 클라이언트에게 전달
4. Server Key Exchange
(선택적 메세지)
* 필요 시, 키 교환에 필요한 정보를 전달
- 키 교환 알고리즘으로 Ephemeral Diffie-Hellman을 사용할 시, 공개 Diffie-Hellman 매개변수(소수 p, 원시근 g, 서버 Diffie-Hellman 공개키)를 서명 알고리즘으로 서명하여, 서명값과 함께 전달
5. Certificate Request
(선택적 메세지)
* 필요 시, 클라이언트 인증을 위한 인증서를 요청
- 요청 시, 서버측에서 인증 가능한 인증기관 목록을 제공
6. Server Hello Done * Server Hello 종료 과정을 알림
7. Client Certificate
(선택적 메세지)
* 필요 시(서버의 Certificate Request 메세지 수신 시), 클라이언트 인증서 목록을 전달
8. Client Key Exchange * 키 교환에 필요한 premaster secret을 생성 후 서버에 전달하는 메세지
- 키 교환 알고리즘에 따라 premaster secret 생성 방식이 다름


RSA : premaster secret(난수값) 생성 후 수신한 서버 인증서의 공개키를 이용하여 암호화 전송


Diffie-Hellman : 클라이언트 Diffie-Hellman 공개키를 생성하여 서버에 전달, 클라이언트와 서버는 각각 Diffie-Hellman 연산을 통해 공통의 premaster secret 생성
9. Certificate Verify
(선택적 메세지)
* 필요 시(서버의 Certificate Request 메세지 수신 시), 클라이언트가 보낸 인증서에 대한 개인키를, 클라이언트가 가지고 있음을 증명
- 현재까지의 핸드셰이크 과정에서 주고 받은 메세지와, master secret을 조합한 해시값에, 클라이언트의 개인키로 서명하여 전달
10. Change Cipher Spec * 협상한 암호명세(Cipher Spec)를 이후부터 적용/변경함을 알리는 메세지
11. Finished * 협상 완료를 서버에 알림
12. Change Cipher Spec * 협상한 암호명세(Cipher Spec)를 이후부터 적용/변경함을 알리는 메세지
13. Finished * 협상 완료를 클라이언트에 알림

 

SSL/TLS 단축협상 과정 내용
1. Client Hello * 사용할 Session ID와 Client Random을 전달
2. Server Hello * Server Random을 전달

 

 

 

[SSL 취약점]

구분 내용 보안방법
Open SSL의 HeartBleed
   
SSL 3.0 취약점과 Poodle
   
FREAK 공격과 암호 수출 규제
   
완전 순방향 비밀성 1. 서버 공개키와 개인키를 이용, 키 교환을 수행(RSA 방식)할 시, 공격자는 MITM을 통해 트래픽을 가로채고, 서버 개인키를 이용하여 세션키/비밀키 및 송수신 데이터 복호화가 가능
2. 희생자는 유출된 서버 인증서를 폐기(CRL 또는 OCSP Protocol을 통한 폐기)하여도, 유출된 서버 개인키로 보호되는 이전 트래픽 정보를 공격자가 보관한다면, 이들 모두 복호화가 가능
* PFS (Perfect Forward Secrecy : SSL/TLS와 완전 순방향 비밀성) : SSL/TLS 통신의 서버 개인키 노출 문제점을 해결하기 위해 등장 암호학적 성질 순방향 비밀성(FS) 또는 완전 순방향 비밀성(PFS)라고 칭함
PFS : 클라이언트 서버 간, 키 교환에 사용되는 개인키가 노출 되어도, 이전 트래픽의 세션키/비밀키 기밀성은 그대로 유지되어 통신 내용을 알 수 없는 암호학적 성질


 


IPSec
※ 학습 목표

 

[IPSec 특징]

구분 내용
기밀성
(Confidentiality)
ESP 프로토콜을 통해 네트워크 구간 암호화 수행 (AH 제외)
비 연결형 무결성
(Connectionless Integrity)
HMAC(Hash-based Message Authentication) 위변조 방지 기법 사용
재전송 공격 방지
(Protection Against Replays)
패킷 번호(Sequence Number부여
접근 제어
(Access Control)
보안 정책 설정
흐름제어 터널/보안 게이트웨이

 

[AH 프로토콜 동작 모드]

- 인증

 

전송모드

IP-H AH-H IP Payload

 

터널모드

New IP-H AH-H Original IP-H IP Payload

 

 

[ESP 프로토콜 동작모드]

- 인증, 기밀성

 

전송모드

IP-H ESP-H IP Payload ESP-T ESP AUTH

 

터널모드

New IP-H ESP-H Original IP-H IP Payload  ESP-T ESP AUTH

 


무선 랜

 

※ 학습 목표
구분 WEP
(Wired Equivalent Privacy)
WPA1
(Wi-Fi Protected Access)
WPA2
(Wi-Fi Protected Access)
WPA3
(Wi-Fi Protected Access)
Release 1999년 2003년 2004년 2018년
표준 IEEE 802.11b IEEE 802.11i
암호화 RC4 RC4-TKIP AES-CCMP AES-CCMP
AES-GCMP
무결성 검증 CRC-32 MIC CBC-MAC GMAC
인증방법 WEP-OPEN
WEP-SHARE
PSK(Personal)
IEEE 802.1x with EAP(Enterprise)
PSK(Personal)
IEEE 802.1x with EAP(Enterprise)
SAE(Personal)
IEEE 802.1x with EAP(Enterprise)
Key 관리 방법 X 4-way handshaking SAE handshaking
문제점 사전 공유 비밀키 크랙 취약(암호화 제한) RC4 알고리즘 키 재설치 공격(크랙)