1. 네트워크 기반 공격 기술 종류
(1) 서비스 거부 공격(DoS : Denial of Service)
- 특정 서비스를 계속적으로 호출해 컴퓨터 자원을 고갈시키는 공격
- 소프트웨어 취약점 이용 공격
- 로직 공격(Logic Attack) : IP Header 변조
- 플러딩 공격(.Flooding Attack) : 무작위로 패킷 발생
(2) 분산 서비스 거부 공격(DDoS)
▶ TCP SYN Flooding
- TCP 패킷의 SYN 비트를 이용한 공격 방법
- 다른 사용자가 서비스를 제공받지 못함
- 대응방법 :
- 방화벽에서 대응 : PPS(Packet Per Second) 조정
- First SYN Drop 설정 : 클라이언트 존재 여부 파악
- TCP 세션 연결 차단
- Back queue 증가
- 라우터에서 대응
- Watch Mode : 일정 시간동안 미연결 시 SYN 패킷 차단
- Intercept Mode : 라우터에서 SYN 패킷 요청을 가로채 요청한 클라이언트와 서버를 대신 연결
- sysctl -w net.ipv4.tcp_max_syn_backlog = 1024 :
- sysctl -w net.ipv4.tcp_syncookies = 1
▶ DRDoS : 별도의 Agent를 설치하지 않고 TCP Half Open의 취약점 이용 공격
▶ ICMP Flooding(Smurfing Attack)
- IP 특징(Broadcast 주소 방식)과 ICMP 패킷을 이용한 공격 방법
- 서브네트워크에 Source Address를 공격대상 서버로 위조한 ICMP Echo 패킷을 Broadcast로 전송하여 다량의 응답 패킷으로 공격
- 대응방법
- ACL을 이용한 차단
- Inbound 패킷 임계치 설정
▶ Tear Drop : IP Fragmentation
- MTU(Maximum Transmission Unit)보다 큰 패킷의 경우 분할하여 flags와 offset에 정보를 저장
- offset을 임의로 조작하여 재조립이 불가능하게 만드는 공격
- Tear Drop 공격 종류
- Tiny Framgment : 최초의 Fragment를 아주 작게 만들어 네트워크 침입탐지 시스템, 패킷 필터링 장비 우회
- Fragment Overlap
- IP Fragmentation을 이용한 서비스 거부 공격
- Ping of Death : 규정 크기 이상의 ICMP로 시스템 마비 공격
- Tear Drop : TCP Header 부분의 offset field 값이 중첩되는 데이터 패킷을 전송
▶ Land Attack
- 송신자 IP 주소, Port 주소를 수신자 IP, Port 주소로 설정하여 트래픽을 전송하는 공격(자폭 공격)
- 대응 방법
- 송신자와 수신자의 IP가 동일한 패킷 삭제
▶ HTTP Get Flooding
- HTTP Request를 지속적으로 호출하는 공격
- 대응 방법
- 선별적 IP 차단
- 컨텐츠 요청횟수 임계치 설정(횟수)
- 시간대 별 웹 페이지 URL 접속 임계치 설정(시간)
- Web Scraping 기법을 이용한 차단
▶ Cache Control
- Cache-Control을 no-cache로 설정하여 항상 최신의 페이지를 전송하게 하여 웹 서버에 부하를 주는 공격
- 대응 방법
- Cache-Control 사용 여부에 따른 임계치 기반 대응
▶ Slow HTTP Get/Post Attck
- Slow HTTP Get 방식
- TCP 및 UDP 기반 공격, 소량의 트래픽을 사용한 공격, 서비스 취약점 이용
- Slow HTTP Post 방식
- Post는 데이터가 모두 수신될 때까지 장시간 연결을 유지함
- HTTP Post로 서버에 전달할 대량의 데이터를 장시간동안 느리게 전송하는 공격
- Content-Length 필드에 큰 값을 주고, Content를 소량씩 전송하여 연결을 장시간 유지 시킴
- Slow HTTP Read Dos
- TCP 윈도우 크기 및 데이터 처리율을 감소시켜 전송하여 웹 서버가 정상적으로 응답하지 못하는 공격
- Slow HTTP Header Dos
- HTTP Header와 Body는 개행문자(\r\n\r\n)로 구분
- HTTP Header를 조작하여 헤더 정보를 구분할 수 없게 만들어, 웹 서버가 Header 정보를 수신하기 위해 장시간 연결을 유지하게 하는 공격
- Slow HTTP Get/Post 공격 대응
- 접속 임계치 설정
- 방화벽 설정 도구인 iptables로 차단
- Connection Timeout 설정
- Keepalivetime 설정
- RequestReadTimeout 설정
- POST 메시지 크기 제한
- 최저 데이터 전송 속도 제한
▶ Hash DoS
- 해시테이블의 인덱스 정보가 중복되도록 유도해 (해시충돌) 해시테이블 조회 시 많은 CPU 자원을 소모시키는 공격
- 대응 방법
- HTTP Post 파라미터 수 제한
- Post 메시지 크기 제한
- PHP에서 Hash DoS 차단
▶ Hulk DoS
- Get Flodding 공격으로, 공격 대상 URL을 지속적으로 변경해 DDoS 차단 정책을 우회
- 대응 방법
- 접속 임계치 설정
- HTTP Request HOST 필드 값에 대한 임계치 설정
- 302-Redirect 차단
(3) 스캐닝(Scanning)
▶ 포트 스캐닝(Port Scanning)
- 서버에 열려있는 포트를 확인 후 해당 포트의 취약점을 이용한 공격
- NMAP 포트 스캐닝
- TCP Connect() Scan
- TCP SYN SCAN(HalfOpen, StealthScanning)
- Open : SYN/ACK
- Close : RST/ACK
- TCP FIN SCAN
- Open : X
- Close : RST
- TCP Null : 모든 플래그를 지운다
- Open : X
- Close : RST
- TCP X-MAS Tree Scan : FIN, URG, PSH 패킷 전송
- Open : X
- Close : RST
- TCP Fragmentation
- 헤더를 두 개로 분할하여 보안 장비 탐지 우회
- 첫 번째 헤더에는 IP 정보
- 두 번째 헤더에는 Port 정보
(4) 스니핑 공격(Sniffing Attack)
- 네트워크로 전송되는 패킷을 훔쳐보는 공격
- 소극적 공격, 수동적(Passive)
- 예방은 가능하나 발견하기 어려움
- 데이터를 도청 & 수집해서 분석하는 것으로 직접적인 피해는 X
- Normal Mode(정규모드)
- 자신과 관련된 메시지만 수신, 관련 없는 패킷 삭제
- Promiscuous Mode(무차별 모드)
- 네트워크에 흘러 다니느 모든 패킷 모니터링
- tcpdump
(5) 세션 하이재킹(Session Hijacking)
- 이미 인증을 받아 세션을 생성, 유지하고 있는 연결을 빼앗는 공격
- 인증을 위한 모든 검증 우회 : TCP를 이용해 통신 시 RST 패킷을 보내 일시적으로 TCP 세션을 끊고 시퀀스 넘버를 새로 생성해 세션을 빼앗고 인증 회피 가능
(6) 스푸핑 공격(Spoofiing Attack)
▶ IP Spoofing
- 자신의 IP를 속여 해킹하는 방법 (위장 기법)
- 대응 방법
- Router에서 Source Routing 차단
- Sequence Number를 Random하게 발생
- R-Command 취약점 제거
- 암호화된 프로토콜 사용
▶ ARP Spoofing
- 클라이언트의 MAC 주소를 공격자가 자신의 MAC 주소로 변경하여 서버와 클라이언트 사이에서 수행하는 공격
- fragrouter를 통해 연결이 끊어지지 않도록 Release 과정이 필요
- 스위치 공격 및 스니핑 방법
- Switch Jamming : 스위치 MAC 주소 테이블에 버퍼 오버플로우 공격, 스위치가 허브처럼 동작
- ICMP Redirect : 피해자에게 라우팅 경로를 자신의 주소로 위조한 ICMP Redirect 메시지 전송
- ARP Redirect : 공격자 라우터의 MAC 주소로 변경해 ARP Reply 패킷을 해당 네트워크에 브로드 캐스팅
- ARP Spoofing : 피해자의 ARP Cache Table을 공격자의 MAC 주소로 변경
2. 네트워크 대응 기술 및 응용
(1) 침입차단 시스템(Firewall)
▶ 침입차단 시스템
-
네트워크를 경유해서 내부 시스템으로 진입하는 트래픽을 모니터링하고 접근 통제(Access Control List)를 적용해 시스템에 접근이 허용 가능한 사용자, IP, 포트를 결정
- 인증되지 않은 데이터가 네트워크로 유입되는 것을 방지하고, 어떤 종류의 데이터가 어떻게 외부로 송신되는지를 제한하는 접근 제어 장비
- 리버스 텔넷(Reverse Telnet) : 내부 망에서 외부 망으로 telnet을 통해 연결하는 것
▶ 침입차단 시스템 구현 방식에 따른 유형
- 패킷 필터링(Packet Filtering)
- 특정 IP, 프로토콜, 포트 차단 및 허용 가능
- 계층 : Network 계층과 Transport 계층
- 애플리케이션 게이트웨이(Application Gateway)
- 접근 통제, 로그 관리 등의 기능이 있지만 성능이 느림
- 계층 : Application 계층
- 회선 게이트웨이(Circuit Gateway)
- 계층 : Application ~ Session 계층 사이
- 상태 기반 패킷 검사(Sateful Packet Inspection)
- OSI 전 계층에서 패킷의 컨텐츠를 해석해서 침입차단을 제공하는 가장 강력한 기능 가짐
- 패킷 필터링 방식에 비해 세션 추적 기능 추가
- 혼합형 타입(Hyrid type)
- 심층 패킷분석(DPI;Deep Packet Inspection)
- DPI는 패킷이 가지고 잇는 컨텐츠까지 모두 검사할 수 있는 기능
- 다양한 컨텐츠 식별 및 분석 가능한 가장 강력한 침입차단 시스템
- OSI 전계층에서 동작 및 접근 통제 가능
▶ 침입차단 시스템 구축 유형
- 스크리닝 라우터(Screening Router)
- IP, TCP, UDP 헤더 부분에 포함된 내용만 분석하여 동작
- 내부 네트워크와 외부 네트워크 사이의 패킷 트래픽을 perm/drop하는 라우터
- 베스천 호스트(Bastion Host)
- 단일 홈 호스트(Single-Home Host)
- 내부 네트워크 전면에서 내부 네트워크 전체를 보호
- 내부 네트워크와 외부 네트워크를 연결하는 라우터 뒤에 위치
- 스크리닝 라우터보다 안전
- Bastion Host 손상 시 내부망 손상
- 듀얼 홈드 호스트(Dual-Homed Host)
- 2개의 네트워크 인터페이스를 가진 Bastion Host
- 하나의 NIC(Network Interface Card)는 내부 네트워크와 연결하고 다른 NIC는 외부 네트워크와 연결
- 스크린드 호스트(Screened Host)
- Packet Filtering Router와 Bastion Host로 구성되어 있음
- Packet Filtering Router는 외부 및 내부 네트워크에서 발생하는 패킷을 통과시킬 지 결정
- 외부에서 내부로 유입되는 패킷에 대해서는 Bastion Host로 전달
- 가장 많이 사용
- 스크린드 서브넷(Screened Subnet)
- 스크린드 호스트 보안상의 문제점을 보완
- 외부 네트워크와 내부 네트워크 사이 하나 이상의 경계 네트워크를 두어 내부 네트워크를 외부 네트워크로 부터 분리
- 일반적으로 두 개의 스크리닝 라우터와 한 개의 베스천 호스트를 이용
(2) 침입탐지 시스템
▶ 침입탐지 시스템(Intrusion Detection System)
- 침입 패턴 정보를 DB에 저장하고 지능형 엔진을 사용해 네트워크나 시스템 침입을 실시간 모니터링, 침입 탐지 여부 확인 가능한 보안 시스템
- 침입차단 시스템 차단 방법
- 정보 수집
- 정보 가공 및 축약
- 침입 분석 및 탐지
- 보고 및 조치
- 오용탐지(Misuse)
- 침입패턴 정보를 DB화 하여 사용자 혹은 침입자의 네트워크 및 호스트 활동기록과 비교해 동일하면 침입으로 식별
- 시그니처 기반, 지식 기반
- 미리 정의된 Rule에 매칭
- False Positive(오탐률) 낮음
- False Negative 큼
- 사전 침입 탐지 불가능
- 이상탐지(Anomaly)
- 정상 패턴을 저장하고 정상과 다른 활동이 식별되면 모두 침입으로 식별
- 프로파일 기반, 행동 기반, 통계 기반
- 사전 침입 탐지 가능, 오탐률이 높음
- 알려지지 않은 공격(Zero Day Attack) 대응 가능
- False Positive가 큼
※ False Positive : false(+)로 표현, 공격이 아닌데도 공격이라고 오판하는 것
※ False Negative : false(-)f로 표현, 공격이지만 공격이 아니라고 오판하는 것
- 침입탐지 시스템 분류
- NIDS(Network based IDS)
- 네트워크에 흐르는 패킷들을 검사, 침입 판단
- 방화벽 외부의 DMZ나 방화벽 내부 네트워크 모두 배치 가능
- 탐지 가능 공격 : 스캐닝, 서비스 거부 공격(DoS), 해킹
- HIDS(Host based IDS)
- 시스템상에 설치, 사용자가 시스템에서 행하는 행위, 파일의 체크를 통해 침입 판단
- 주로 웹 서버, DB 서버 등에 배치
- 탐지 가능 공격 : 내부자에 의한 공격, 바이러스, 웜, 트로이목마, 백도어
- NIDS(Network based IDS)
▶ Snort
- 패킷을 스니핑해서 지정한 Rule과 동일한 패킷 탐지
- Rule Header는 Action Protocol, IP 주소, 포트 등으로 구성
- Rule Option은 탐지하는 세부적인 조건 정의
- 스니퍼(Sniffer)
- 네트워크에 전송되는 모든 패킷 수신을 위해 Promiscuos Mode(무차별 모드)로 동작
- WinPcap 라이브러리가 스니핑을 실행
- 전처리기(Preprocessing)
- 입력되는 패킷에 대해 특정 행위가 탐지될 경우 탐색엔진으로 전송
- 탐색엔진(Detection Engine)
- 등록된 Rule과 동일한지 여부를 확인하는 규칙 기반 패턴 검색 실행
- 경고(Alert) 및 로깅(Logging)
- 탐지된 정보를 로그파일, 네트워크, SNMP 프로토콜 등으로 전송
- 이후 참고 net123.tistory.com/579
(3) 침입대응 시스템
▶ 침입대응 시스템(Intrusion Prevention System)
- 공격 시그니처를 찾아내 네트워크에 연결된 기기에서 비정상적인 활동이 이루어지는지 감시하여 자동으로 해결 조치
- 침입 경고 이전에 공격을 중단시키는 것이 주요 목적
- Real Time 가능한 예방 통제 시스템
- IDS 문제점 보완 : 오탐지, 미탐지, NIDS의 실시간 공격 방어 불가능
▶ 침입대응 시스템 종류
- NIPS(Network IPS) : 공격 탐지에 기초하여 트래픽 통과 여부를 결정하는 인라인 장치
- HIPS(Host IPS) : 호스트 OS 위에서 수행, 공격 탐지 후 실행 전에 공격 프로세스 차단 기능
(4) 허니팟
▶ 허니팟(Honeypot)
- 해커의 행동, 공격 기법 등을 분석하는데 이용
- Zero Day 공격 탐지하기 위한 수단 (Zero Day 공격 : 해당 취약점에 대한 패치가 나오지 않은 시점에서 이루어지는 공격)
▶ 허니팟 위치
- 방화벽 앞 : 내부 네트워크 위험도 증가는 없음
- 방화벽 내부 : 효율성이 높으나 내부 네트워크 위험 증가
- DMZ 내부 : 가장 적당한 위치, 관리 불편, 다른 서버의 연결 차단 필요
▶ 허니팟 구축 시 고려사항
- 해커에게 쉽게 노출될 수 있는 상태, 위치여야함
- 시스템의 모든 구성요소 갖춰야함
- 시스템을 통과하는 모든 패킷 감시
- 시스템 접속자에 대해 관리자에게 전달
(5) 가상사설망
▶ 가상사설망 개요
- 공중망을 이용해 사설망과 같은 효과를 얻기 위한 컴퓨터 시스템과 프로토콜 집합
- 따라서 안전한 통신 방식 지향
- 안전한 통신 방식 : 인증, 터널링
- 터널링으로 VPN 클라이언트와 VPN 서버 간에 암호화 키 교환 과정을 수행한 후에 암호화를 사용해 메시지를 송수신
▶ SSL VPN
- SSL(Secured Socket Layer) VPN
- 웹브라우저만 있으면 언제 어디서나 사용 가능(추가적인 VPN 프로그램 설치할 필요 X)
- 서버와 클라이언트 간 인증으로, RSA 방식과 X.509 사용
- SSL VPN 구성
- 대칭키 암호화(트래픽을 암호)와 비대칭키 암호화(대칭키 암호)를 혼합해서 사용
- 서버와 클라이언트 사이의 인증, 기밀성, 무결성, 부인방지 서비스 제공
- SSL VPN 보안 서비스
- 인증(Authentication) : 클라이언트가 접속하는 서버가 신뢰할 수 있는 서버인지, 서버에 접속한 클라이언트가 인가된 사용자인지 확인, 전자서명과 X.509 공개키 인증서 사용
- 무결성(Integrity) : 함께 키를 사용하는 MAC 기법을 사용하여 데이터 변조 여부 확인
- 기밀성(Confidentiality) : 대칭키 암호 사용
- 부인봉쇄(None-repudiation) : 부가적인 SW를 사용해 응용 계층에서 메시지에 대한 전자서명 허용
▶ IPSEC VPN
- 보안에 취약한 인터넷에서 안전한 통신을 실현하는 통신규약
- IPSEC VPN 전송 모드
- 터널 모드 : VPN과 같은 구성으로 패킷의 출발지에서 일반 패킷이 보내지면 중간에서 IPSec을 탑재한 중계 장비가 패킷 전체를 암호화(인증)하고 중계 장비의 IP 주소를 붙여 전송
- 전송 모드 : 패킷의 출발지에서 암호화(인증)를 하고 목적지에서 복화하가 이루어지므로 End-to-End 보안 제공
- IPSEC VPN 키 관리 담당
- ISAKMP
- Internet Security Association and Key Management Protocol
- Security Association 설정, 현상, 변경, 삭제 등 SA 관리와 키 교환을 정의했으나 키 교환 메커니즘에 대한 언급은 없음
- IKE
- Internet Key Exchange, 키 교환담당
- IKE 메시지는 UDP 프로토콜을 사용해서 전달되며 출발지 및 도착지 주소는 500port를 사용하게 됨
- IPSEC VPN 인증과 암호화를 위한 Header
- AH
- 데이터 무결성과 IP 패킷의 인증 제공, MAC 기반
- 인증 시 MD5, SHA-1 인증 알고리즘을 이용
- 수신자는 닥ㅌ은 키를 이용해 인증값 검증
- ESP
- 전송 자료를 암호화하여 전송하고 수신자가 받은 자료를 복호화하여 수신
- AH와 달리 암호화를 제공(대칭키, DES, 3-DES 알고리즘)
- AH
- ISAKMP
(6) NAC(Network Access Contol)
▶ 엔드 포인트(End Point) 보안 솔루션으로 등록되지 않은 단말기를 식별하여 차단
▶ 네트워크에 대한 무결성 지원
▶ NAC 구성요소
- 정책관리 서버(Policy Management Server)
- 차단 서버Policy Enforcement Server)
- 에이전트(Agent)
- 콘솔(Console)
▶ NAC 주요 기능
- 네트워크 정보 자동 수집 및 업데이트 지원
- IP 관리 및 충돌 보호
- 인증 서버 연동
- 네으퉈크 접속 강제화 및 필수 프로그램 설치유도
- 보안 무결성 확인
- 무선AP(Access Point) 정보수집 및 비인가 무선 AP접속 통제
- DHCP(Dynamic Host Conficuration Protocol
▶ NAC 동작 방식
- Agent 방식
- 사용자 단말기 NAC Agent를 설치
- 사용자 단말기에 대한 윈도우 환경, 설정 정보 등의 자세한 정보를 모두 수집할 수 있음
- Agentless 방식
- 사용자 단말기에 별도의 Agent를 설치할 필요가 없음
- ARP 프로토콜을 사용해서 사용자 단말기 정보를 수집하기 때문에 정보 수집에 한계가 발생
(7) ESM(Enterprise Security Management)
▶ 기업의 정보보안 정책을 반영하여 다수 보안 시스템을 통합한 통합 보안관제 시스템
▶ 침입차단 시스템, 침입탐지 시스템, VPN 등의 각종 이벤트를 수집하고 분석하여 통합보안 구현
▶ ESM 주요기능
- 통합 보안관제 업무
- ESM Agent 관리
- 분석 보고서 관리
▶ ESM 구성요소
- ESM Agent
- 각종 보안 솔루션의 로그 수집 역할
- 실시간으로 수집한 로그를 정규 표현식으로 변환하여 ESM Manager에게 전달
- ESM Manager
- 로그를 DB에 저장하고 위협 분석, 상관성 분석, 위험도 추론 침입탐지 등의 분석
- SSL을 사용하여 ESM Agent에서 ESM console로 명령 전달
- ESM Console
- 모든 보안 정보를 모니터링 하며 침입 발생 시 명령을 ESM Manager에게 전달
- 각종 침입에 대한 알람 발생
▶ SIEM과 ESM차이점
- ESM
- 수집된 로그 및 분석정보를 DB에 저장
- 보안 솔루션 위주의 로그 수집
- IP, Port 단위 분석과 알려진 패턴 위주의 분석
- SIEM
- 빅데이터를 사용해 대용량의 로그정보를 보관
- 기업의 모든 자원의 정보 및 로그를 통합해 수집
- APT 공격 및 알려지지 않은 패턴에 대해 분석
- 각 칼럼별 인덱싱 가능, 빠르게 대용량 데이터 분석 가능
(8) 무선 LAN 보안 기법
▶ SDR(Software Defined Radio)
- 무선 네트워크를 수신받기 위한 안테나와 소프트웨어로 구성
- 무선 네트워크를 수신받아서 처리할 수 있는 장치
- 주파수를 수신받아 재생공격 가능
▶ 무선 LAN 보안 기술
- SSID(Service Set ID)
- 무선 LAN 서비스 영역을 구분하기 위한 식별자
- WEP(Wired Equivalent Privacy) 인증
- IEEE 802.11b에 서 표준화한 데이터 암호화 방식
- RC4 대칭형 암호화 알고리즘
- 무작위 공격에 취약
- WPA(Wi-Fi Protected Access) : IEEE 802.1x/EAP
- WEP의 정적 키 관리에 대한 문제점 해결 가능
- 128bit 동적 암호화 및 복호화 수행
- TKIP(temporal key Integrity Protocol) 방식 : 임시 키 무결성 프로토콜
- WPA2(Wi-Fi Protected Access) : IEEE 802.11i
- WPA 동적 키 방식의 블록기반 암호화 기법
- 128bit 이상의 키를 사용하는 AES 암호화를 사용
- IEEE 802.11i
- WPA 방식의 암호화 알고리즘은 AES 사용
- CCMP(counter Mode Encryption Protocol)는 RC4 알고리즘 대신 TKIP 블록 암호화 방법을 사용하고 AES 암호화 즉, 블록 암호화 방식에 인증 강화
- KRACK(WPA2 Key Reinstallation Vulnerabilities)
- WPA2의 암호화 기능을 무력화할 수 있는 공격
- 공격 시에 AP에 연결하지 않아도 됨
- 타겟 AP 혹은 Statioon으로 위장하기 위해 MAC Spoofing 필요
- 특정 대상에 한정된 공격만 수행가능
- HTTPS로 보호된 인터넷 통신 프로토콜에 대해 복호화 가능
- 공격자가 패킷 변조 전에 공격 탐지 못하면 사용자가 공격 확인 불가
참고 자료 : 이기적 정보보안기사 필기 이론서
'자격증 > 정보보안기사' 카테고리의 다른 글
[어플리케이션 보안] 기타 어플리케이션 보안 (0) | 2021.03.10 |
---|---|
[어플리케이션 보안] 인터넷 응용 & 데이터베이스 보안 (0) | 2021.03.09 |
[네트워크 보안] 네트워크 일반 및 활용 (0) | 2021.03.06 |
[시스템 보안] 클라이언트 보안 (0) | 2021.03.05 |
[시스템 보안] 서버 보안 (0) | 2021.03.04 |
댓글