1. 보안의 개념과 정의
1-1. 정보 보안의 정의
- 정보보안 : 우리가 생산하거나 유지해야 할 정보에 위험이 발생하거나 사고가 날 염려 없이 편안하고 온전한 상태를 유지하는 일련의 활동
- 보안의 필수 요소인 3대 보안 정의
- 기밀성 : 인가되지 않은 사용자가 정보를 보지 못하게 하는 모든 작업(ex. 암호화 작업)
- 무결성 : 정확하고 완전한 정보 유지에 필요한 모든 작업(ex. MD5, SHA)
- 가용성 : 정보가 필요할 때, 접근을 허락하는 일련의 작업
1-2. 네트워크 정보 보안
- 수집된 정보를 침해하는 행동을 기술적으로 방어하거나 정보의 송수신 과정에 생기는 사고를 막기 위한 작업
- 정보를 가진 시스템을 공격해 유출하거나 사용하지 못하게 하거나 시스템이 동작하지 못하게 해 정보 서비스를 정상적으로 구동할 수 없게 만드는 행위를 네트워크에서 적절히 막는 것이 네트워크 보안의 1차 목표
- 네트워크를 통해 정보가 복제, 이동되므로 그 유출을 막는 것이 네트워크 보안의 2차 목표
1-3. 네트워크 보안의 주요 개념
✍ 트러스트(Trust) 네트워크 : 외부로부터 보호받아야 할 네트워크
✍ 언트러스트(Untrust) 네트워크 : 신뢰할 수 없는 외부 네트워크
✍ DMZ(DeMilitarized Zone) 네트워크 : 내부 네트워크이지만 신뢰할 수 없는 외부 사용자에게 개방해야 하는 서비스 네트워크

정보 보안별 네트워크의 종류: Trust 네트워크, Untrust 네트워크, DMZ 네트워크
- 트래픽의 방향과 용도에 따라 두 가지로 나뉨
- 인터넷 시큐어 게이트웨이(Internet Secure Gateway) : 트러스트(또는 DMZ) 네트워크에서 언트러스트 네트워크로의 통신을 통제(ex. SWG, 웹 필터, 애플리케이션 컨트롤, 샌드박스)
- 데이터 센터 시큐어 게이트웨이(Data Center Secure Gateway) : 언트러스트 네트워크에서 트러스트(또는 DMZ)로의 통신을 통제(ex. IPS, DCSG, WAF, Anti-DDoS)
네트워크 보안 정책 수립에 따른 분류
- 화이트리스트(White List) : 방어에 문제가 없다고 명확히 판단되는 통신만 허용하는 방식
- 일반적으로 회사 내부에서 사용하는 방화벽이 화이트리스트 방식을 주로 사용
- 블랙리스트(Black List) : 공격이라고 명확히 판단되거나 문제가 있었던 IP 리스트나 패킷 리스트를 기반으로 데이터베이스를 만들고 그 정보를 이용해 방어하는 형태
- 각종 패턴으로 공격을 방어하는 네트워크 장비(IPS, 안티바이러스, WAF)들은 일반적으로 블랙리스트 기반의 방어 기법을 제공
정탐, 오탐, 미탐(탐지 에러 타입)
- IPS나 안티바이러스와 같은 네트워크 장비에서는 공격 데이터베이스에 따라 공격과 악성 코드를 구분해 방어
- 정탐(정상 탐지) : 공격이라고 추론했는데 실제로 공격인 경우 OR 공격이 아니라고 추론했는데 실제로 공격이 아닌 경우
- 오탐(오 탐지) : 공격이라고 생각해 패킷을 드롭했지만 실제로는 공격이 아닌 정상 패킷인 경우
- 미탐(미 탐지) : 공격이 아니라고 패킷을 허용했는데 실제로 공격인 경우
2. 보안 솔루션의 종류
- 데이터 센터에서 보안 장비를 디자인할 때 'DDoS - 방화벽 - IPS - WAF' 형태와 같이 여러 단계로 공격을 막도록 인라인 상에 여러 장비를 배치
- 모든 공격을 장비 한 대로 방어할 수 없으므로 여러 장비의 기능으로 단계적으로 방어
2-1. DDoS 방어 장비
- DoS 공격 : 다양한 방법으로 공격 목표에 서비스 부하를 가해 정상적인 서비스를 방해하는 공격 기법
- DoS공격은 비교적 탐지가 쉽고 짧은 시간 안에 탐지할 수 있다면 IP 주소 기반으로 충분히 방어 가능하지만 이런 탐지를 회피하고 더 짧은 시간 안에 공격 성과를 내기 위해 다수의 봇을 이용해 분산 공격을 수행하는 DDoS 공격 기법이 등장

DDoS 공격 형태
- DDoS 장비 : DDoS 공격을 방어하는 보안 장비로 데이터 센터 네트워크 내부와 외부의 경계에서 공격을 방어하는데 이것은 볼류메트릭 공격(Volumetric Attack)을 우선 막기 위함
✍ 볼류메트릭 공격(Volumetric Attack) : 회선 사용량이나 그 이상의 트래픽을 과도하게 발생시켜 회선 사용을 방해하는 공격
📌 회선을 공급해주는 ISP나 네트워크 ISP와 연결되는 데이터 센터 네트워크의 가장 바깥쪽에 DDoS 장비를 위치시켜 이 공격을 완화해야 함
2-2. 방화벽
- 4계층에서 동작하는 패킷 필터링 장비로 해당 정책과 매치되는 패킷이 방화벽을 통과하면 그 패킷을 허용 또는 거부할 수 있음
- DDoS 방어 장비 바로 뒤에 놓는 네트워크 보안 장비
2-3. IDS(침입 탐지 시스템), IPS(침입 방지 시스템)
더 자세한 내용은 뒤의 내용 참고
- 방화벽에서 방어할 수 없는 다양한 애플리케이션 공격을 방어하는 장비
- 사전에 공격 데이터베이스를 제조사나 위협 인텔리전스 서비스 업체로부터 받음
2-4. WAF(Web Application Firewall)
- 웹 서버를 보호하는 전용 보안 장비로 HTTP, HTTPS처럼 웹 서버에서 동작하는 웹 프로토콜의 공격을 방어
- IDS/IPS 장비보다 범용성이 떨어지지만 웹 프로토콜에 대해서는 더 세밀히 방어 가능
- 프록시 서버와 같이 패킷을 데이터 형태로 조합해 처리
- 다음과 같은 다양한 형태의 장비나 소프트웨어로 제공
- 전용 네트워크 장비
- 웹 서버의 플러그인
- ADC 플러그인
- 프록시 장비 플러그인
2-5. 샌드박스
✍ 지능형 지속 공격(APT) : 차세대 보안위협으로 지목되고 있는 공격으로 취약점 공격에 의해 실행된 악성코드는 사용자 시스템에서 챙긴 정보를 해커가 운영하는 C&C 서버에 전달
- 가상 운영체제 안에서 각종 파일을 직접 실행시키고 그 행동을 모니터링해 그 파일들의 악성 코드 여부를 판별
2-6. NAC(Network Access Control)
- 네트워크에 접속하는 장치들을 제어하기 위해 개발됨
- 네트워크에 접속할 때 인가된 사용자만 내부망에 접속할 수 있고 인가받기 전이나 승인에 실패한 사용자는 접속할 수 없도록 제어하는 기술
2-7. IP 제어 솔루션
- 보안사고 추적이 쉽도록 IP를 할당하고 추적하는 솔루션 및 할당된 IP를 관리하고 정확한 의도된 IP 할당이 아니면 정상적으로 네트워크를 사용하지 못하게 하는 기능을 구현한 솔루션
2-8. 접근 통제 솔루션
- 서버나 데이터베이스에 직접적인 접근을 막고 작업 추적 및 감사 가능
- 대부분 배스천 호스트(Bastion Host) 기반으로 구현
✍ 배스천 호스트(Bastion Host) : 침입 차단 소프트웨어가 설치되어 내부와 외부 네트워크 사이에서 일종의 게이트 역할을 수행하는 호스트
2-9. VPN
더 자세한 내용은 뒤의 내용 참고
- 사용자 기반의 VPN 서비스를 제공해주는 장비
- 대부분 방화벽이나 라우터 장비에 VPN 기능 포함
- 주로 IPSEC과 SSL을 사용하는데 IPSEC은 주로 네트워크 연결용으로 쓰이고 SSL은 사용자가 내부 네트워크에 연결할 때 사용
3. 방화벽
3-1. 방화벽의 정의
- 네트워크 중간에 위치해 해당 장비를 통과하는 트래픽을 사전에 주어진 정책 조건에 맞추어 허용하거나 차단하는 장비
- 일반적으로 네트워크 3, 4계층에서 동작하며 세션을 인지하는 상태 기반 엔진(Stateful Packet Inspection, SPI)으로 동작
3-2. 초기 방화벽
- 초기 방화벽은 패킷의 세션 정보나 방향성과 상관없이 순수하게 방화벽에 설정된 정책에 따라 동작(스테이트리스 방화벽 OR 패킷 필터 방화벽)
3-3. 현대적 방화벽의 등장(SPI 엔진)
✍ 상태 기반 방화벽(Stateful Inspection Firewall) : 기존 패킷 필터 방화벽이 패킷의 상태값 없이 순수하게 정책만으로 제어하던 한계를 극복하기 위해 개발된 것
- 패킷 필터 엔진은 통신의 양방향성을 인지하지 못하고 단순히 패킷이 조건과 일치하는지만 검사
- SPI 엔진은 패킷의 인과 관계와 방향성을 인지해 정책을 적용할 수 있어 내부 네트워크에서 인터넷으로 통신할 때 유용하게 사용
- SPI 엔진은 내부에서 외부 인터넷으로 통신을 시도해 받은 응답과 외부에서 내부로 직접 들어오려는 패킷 구분 가능
3-4. 방화벽 동작 방식

방화벽의 패킷 확인 순서
- 장비에 패킷이 들어오면 우선 세션 상태 테이블 확인
- 조건에 맞는 세션 정보가 세션 테이블에 있을 때, 포워딩 테이블을 확인
- 조건에 맞는 세션 정보가 세션 테이블에 없을 때, 방화벽 정책 확인
- 방화벽 정책은 맨 위의 정책부터 확인해 최종 정책까지 확인한 후 없을 때 암시적인 거부 규칙을 참고해 차단
- 허용 규칙이 있으면 내용을 세션 테이블에 기록
- 포워딩 테이블 확인
- 조건에 맞는 정보가 포워딩 테이블에 있을 때, 적절한 인터페이스로 패킷을 포워딩
- 조건에 맞는 정보가 포워딩 테이블에 없을 때, 패킷을 폐기
3-5. ALG(Application Layer Gateway)
- FTP는 컨트롤 프로토콜과 데이터를 보내는 데이터 프로토콜이 분리되어 동작
- FTP는 컨트롤 프로토콜과 데이터 프로토콜이 반대로 세션을 맺으므로 방화벽이 FTP 프로토콜을 이해해 동작하지 않으면 정상적인 서비스 불가능
- FTP 액티브 모드(Active Mode)에서는 초기 접속 방향과 반대로 데이터 프로토콜이 동작하므로 방화벽을 정상적으로 통과 불가능

FTP 액티브 모드
- 초기 접속 방향과 반대로 데이터 프로토콜이 동작하는 문제를 해결하기 위해 FTP 통신 방식을 패시브 모드로 변경하면 되지만 패시브 모드 자체를 제공하지 못하는 컴포넌트 또는 이미 개발된 애플리케이션 변경이 불가능한 경우가 존재

FTP 패시브 모드
-
ALG 기능은 방화벽에서 FTP 액티브 모드를 통과시키기 위해 애플리케이션 프로토콜을 확인하고 필요에 따라 세션을 인지해 포트를 자동으로 열어줌
-
ALG 기능은 PAT(Port Address Translation)기능이 동작하는 방화벽에서 PAT를 정상적으로 통과하지 못하는 프로토콜들을 자동으로 인지해 애플리케이션 정보를 변경해주거나 세션 테이블을 만들어주는 작업 수행
-
FTP 프로토콜이 방화벽을 지나갈 때의 방화벽 동작 순서
- FTP ALG 기능은 초기 FTP 요청 커맨드를 모니터링
- 서버 쪽에서 사용할 데이터 세션에서 사용할 포트를 클라이언트로 알려줄 때, 이 정보를 확인하고 적절한 세션 정보를 만듬. 서버의 출발지 IP와 포트는 TCP 20번으로, 클라이언트의 IP와 서버에서 알려준 포트를 도착지로 하는 세션을 만들어 세션 테이블을 올림
- 서버에서 클라이언트로 데이터 세션을 열 때, 세션 테이블에 이미 정보가 들어가 있어 정책을 확인하지 않고 패킷이 포워딩
3-6. 방화벽의 한계
- 방화벽이 많은 곳에서 사용되자 기존 공격 방식으로는 해킹이 어려워져 다양한 방법의 새로운 공격 방식이 생겨남
- 방화벽을 우회하는 다양한 공격이 개발되고 대규모 웜 공격으로 인터넷 서비스가 마비되면서 방화벽의 한계가 명확히 드러남
- 방화벽은 OSI 3, 4계층에서만 동작하므로 한계가 있음
- 웜 공격을 막기 위해 IPS 보안 장비가 등장
4. IPS, IDS
- 애플리케이션 계층에서 이루어지는 이런 다양한 공격을 탐지, 방어하기 위해 IDS와 IPS가 개발되었음
4-1. IPS, IDS의 정의
✍ IDS(Intrusion Detection System, 침입 탐지 시스템) : 공격자가 시스템을 해킹할 때 탐지를 목적으로 개발된 시스템
✍ IPS(Intrusion Prevention System, 침입 방지 시스템) : 공격이 발견되면 직접 차단하는 능력을 갖춘 장비
- IDS는 '방어'보다 탐지에 초점을 맞추어 개발되어 공격에 직접 개입하거나 방어하는 것이 아닌 트래픽을 복제해 검토하고 침입 여부를 판별
- IPS는 트래픽을 복제해 검토만 하는 것이 아니라 트래픽이 지나가는 인라인 상에 장비를 배치

IPS는 인라인 상에 위치해 공격을 탐지하면 IPS 장비 자체적으로 방어할 수 있다.
4-2. IPS, IDS의 동작 방식
패턴 매칭 방식
- 기존 공격이나 취약점을 통해 공격 방식에 대한 데이터베이스를 습득하고 그 최신 내용을 유지하다가 공격을 파악하는 기술
- IPS는 많은 공격 데이터베이스를 보유해야 하고 최신 공격 방식을 공격 데이터베이스에 최대한 신속히 반영하는 것이 매우 중요
어노말리 공격 방어
- 어노말리 : 블랙리스트 기반의 방어 방식인 패턴 기반 방어의 한계 때문에 IPS에서 화이트리스트 기반의 방어 기법이 개발
- 분명한 공격으로 파악되지 않더라도 특정 기준 이상의 행위를 이상하다고 판단하고 방어
- 어노말리 기법은 프로파일 어노말리(Profile Anomaly)와 프로토콜 어노말리(Protocol Anomaly)로 나뉨
- 프로파일 어노말리 : 평소 관리자가 정해놓은 기준이나 IPS 장비가 모니터링해 정해진 기준과 다른 행위가 일어나면 공격으로 판단
- 프로토콜 어노말리 : 잘 알려진 포트와 실제로 통신하는 프로토콜이 다를 때, 이것을 파악해 적절히 제어하는 기법
4-3. IPS, IDS의 한계와 극복(NGIPS)
- 네트워크상에서 빠른 속도로 애플리케이션 레벨까지 확인하기 위해 플로 엔진을 사용하는데 플로 엔진은 패킷을 모아 데이터 형태로 변환해 검사하는 것이 아니라 패킷이 흘러가는 상황을 모니터링해 공격을 탐지하므로 IPS 장비를 비교적 쉽게 우회
- IPS는 오탐이 많이 발생하므로 초기에 설치된 환경에 맞는 튜닝작업을 오래 해주어야 함
- 너무 많은 오탐과 알람 때문에 장비가 공격을 정상적으로 방어하지 못하거나 정상적인 서비스가 차단될 수 있음
- NGIPS(Next Generation IPS) 장비는 애플리케이션을 인지하거나 다양한 시스템과 연동 가능, APT 공격을 방어하기 위한 일부 기능 탑재, 다양한 외부 시스템과 연동 가능, 기존 IPS의 기능을 향상시켜 문제점 해결
5. DDoS 방어 장비

DDoS공격은 타깃이 서비스를 정상적으로 제공하지 못하도록 방해한다.
5-1. DDoS 방어 장비의 정의
- 다양한 DDoS 공격 형태에 따른 DDoS 공격을 방어하기 위한 전문적인 장비의 필요성이 대두되었고 DDoS 전용 방어 장비가 등장함
- DDoS 방어 장비는 볼류매트릭 공격을 방어하기 위해 트래픽 프로파일링 기법을 주로 사용하고 인터넷의 다양한 공격 정보를 수집한 데이터베이스를 활용
5-2. DDoS 방어 장비 동작 방식
- DDoS 공격을 탐지해 공격을 수행하는 IP 리스트를 넘겨주면 방어 장비나 ISP 내부에서 이 IP를 버림
- IP 평판 데이터베이스를 공유해 DDoS 공격으로 사용된 IP 기반으로 방어 여부를 결정하거나 특정 공격 패턴을 방어
5-3. DDoS 공격 타입
- 볼류매트릭 공격(Volumetric Attack) : 대용량의 트래픽을 사용해 공격 대상의 대역폭을 포화시키는 공격
- 프로토콜 공격(Protocol Attack) : 3, 4계층 프로토콜 스택의 취약점을 악용해 대상을 액세스할 수 있게 만드는 공격
- 애플리케이션 공격(Application Attack) : 7계층 프로토콜 스택의 약점을 악용하는 공격
5-4. 볼류메트릭 공격
- 회선을 공급해주는 ISP 내부나 사용자 네트워크 최상단에 위치시켜 이 공격을 완화해야함, 회선을 공급하는 ISP와 공조해 방어할 필요가 있음
- ISP를 통한 방어나 Cloud DDoS 솔루션을 통해 서비스 네트워크로 트래픽이 직접 도달하지 못하도록 조치 필요
6. VPN
✍ VPN(Virtual Private Network) : 물리적으로 전용선이 아닌 공중망을 이용해 논리적으로 직접 연결한 것처럼 망을 구성하는 기술

IPSEC VPN 연결 구성도
- SSL VPN 기술인 경우 PC나 모바일 단말과 같은 원격지는 별도의 네트워크 장비 없이 VPN 연결 사용 가능

SSL VPN 연결 구성도
6-1. VPN 동작 방식
- VPN은 가상 네트워크를 만들어주는 장비로 터널링 기법을 사용
✍ 터널링 기법 : 패킷을 터널링 프로토콜로 감싸 통신하는 기법
- VPN은 3가지 형태로 구현
- Host to Host 통신 보호 : 두 호스트 간에 직접 VPN 터널을 연동하는 기법
- Network to Network 통신 보호 : 본사-지사 같은 특정 네트워크를 가진 두 종단을 연결하는 경우(IPSEC 프로토콜 스택에서 가장 많이 사용)
- Host가 Network로 접근할 때 보호 : 모바일 사용자가 일반 인터넷망을 통해 사내망으로 연결하는 경우(IPSEC과 SSL 프로토콜이 범용적으로 사용)