보안
by Frinee이 글은 고재성, 이상훈 저 - "IT 엔지니어를 위한 네트워크 입문"를 공부하고 정리하여 작성하였습니다.
1. 보안의 개념과 정의
1.1. 정보보안의 정의
- “다양한 위협으로부터 보안을 보호하는 것”
- 3대 보안 정의
- 기밀성(Confidentiality): 인가되지 않은 사용자가 정보를 보지 못하게 하는 모든 작업
- 무결성(Integrity): 정확하고 완전한 정보 유지에 필요한 모든 작업
- 누군가가 정보를 고의로 훼손하거나 중간에 특정 이유로 변경이 가해졌을 때, 그것을 파악해 잘못된 정보가 전달되거나 유지되지 못하게 하는 것
- 대표적인 기술은 MD5, SHA와 같은 해시 함수를 이용해 변경 여부를 파악
- 가용성(Availabilty): 정보가 필요할 때 접근을 허락하는 일련의 작업
- 이 3대 요소 외에 추가로 진정성, 책임성, 부인 방지, 신뢰성 유지를 정보보안 활동 중 하나로 정의하기도 함
1.2. 네트워크의 정보 보안
- 네트워크 입장에서는 수집된 정보를 침해하는 행동을 기술적으로 방어하거나 정보의 송수신 과정에서 생기는 사고를 막기 위한 작업
- 네트워크 보안 1차 목표: 시스템을 공격해 유출하거나 시스템이 역할을 못하게 하는 행위를 네트워크에서 적절히 막는 것
- 네트워크 보안 2차 목표: 정보가 네트워크를 통해 복제, 이동되어 유출되는 것을 막는 것
1.3. 네트워크 보안의 주요 개념
- 네트워크 보안의 목표는 외부 네트워크로부터 내부 네트워크를 보호하는 것
- 이 때 외부로부터 보호받아야 할 네트워크를 트러스트 네트워크, 신뢰할 수 없는 외부 네트워크를 언트러스트 네트워크로 구분
- 그리고 우리가 운영하는 내부 네트워크이지만 신뢰할 수 없는 외부 사용자에게 개방해야 하는 서비스 네트워크를 DMZ 네트워크라 부름
- 일반적으로 인터넷에 공개되는 서비스가 이 네트워크에 배치됨
- 네트워크 보안 분야는 트래픽의 방향과 용도에 따라 두 가지로 나뉨
- 인터넷 시큐어 게이트웨이(Internet Secure Gateway)
- 트러스트(또는 DMZ) 네트워크에서 언트러스트 네트워크로의 통신을 통제
- SWG, 웹 필터, 애플리케이션 컨트롤, 샌드박스와 같은 다양한 서비스나 네트워크 장비가 포함
- 데이터 센터 시큐어 게이트웨이(Data Cneter Secure Gateway)
- 언트러스트 네트워크에서 트러스트(또는 DMZ)로의 통신을 통제
- IPS, DCSG, WAF, Anti-DDoS 등의 장비가 사용됨
- 인터넷 시큐어 게이트웨이(Internet Secure Gateway)
- 보안 장비 시장을 구분할 때도 사용되는데 상황에 따라 요구되는 성능과 기능이 다르기 때문
- 인터넷으로 나갈 때는 인터넷에 수많은 서비스가 있으므로 그에 대한 정보와 요청 패킷을 적절히 인식하고 필터링하는 기능이 필요
- 반면, 데이터 센터 게이트웨이는 상대적으로 고성능이 필요하고 외부의 직접적인 공격을 막아야 하므로 인터넷 관련 정보보다 공격 관련 정보가 더 필요
1.3.1. 네트워크 보안 정책 수립에 따른 분류
- 화이트리스트
- 방어에 문제가 없다고 판단되는 통신만 허용하는 방식
- 일반적으로 IP와 통신 정보에 대해 명확히 아는 경우에 사용
- 블랙리스트
- 공격이라고 명확히 판단되거나 문제가 있던 IP 리스트나 패킷 리스트를 기반으로 DB를 만들어 해당 정보로 방어하는 형태
- 각종 패턴으로 공격을 방어하는 네트워크 장비(IPS, 안티바이러스, WAF)들은 일반적으로 이 기법을 제공
- 인터넷 어디선가 공격을 당할 때 분석해 공격기법을 판단해 탐지하도록 DB를 만드는데 이를 공격 패턴(signature)라 함
- 대부분의 장비는 수립 정책에 따라 화이트리스트와 블랙리스트 기법 모두 사용할 수 있음
- 최근 보안 위협이 증가하면서 화이트리스트 기반 정책이 많아짐
- 이를 위해선 통신 정보를 상세히 알고 세부적인 통제가 필요함
1.3.2. 정탐, 오탐, 미탐(탐지 에러 타입)
공격 상황 | 정상 상황 | |
공격 인지 (공격 알람) |
True Positive (정상 탐지) |
False Positive (오 탐지) |
정상 인지 (공격 알람 x) |
False Negative (미 탐지) |
True Negative (정상 탐지) |
- True Positve, True Negative의 경우 정상적인 동작이므로 정탐이라 부름
- 공격이라 생각해 패킷을 드랍했는데 실제는 정상인 경우 오탐이라 부름, 이 경우는 예외 처리를 통해 오탐을 줄이는 튜닝작업이 필요
- 정상이라 생각했는데 실제로 공격인 경우를 미탐이라 부름, 이 경우 공격 패턴 업데이트가 되지 않거나 과도한 예외 처리가 된 경우 발생
1.4. 네트워크 정보 보안의 발전 추세와 고려사항
- 네트워크 보안 장비는 보안 영역 외부와 내부의 변화로 발전
- 보안 영역 외부는 인프라나 서비스의 대변화로 보안이 따라서 발전하는 경우
- 보안 영역 내부는 해킹 기술의 발전에 대응하여 발전하는 경우
- 최근 빅데이터와 머신 러닝 발전으로 빅데이터와 머신러닝 기법을 보안에 적용해 빠르게 대응하는 시스템과 서비스를 개발하는 추세
2. 보안 솔루션의 종류
- 데이터 센터에서 보안 장비를 디자인할 때 DDoS - 방화벽 - IPS - WAF 형태와 같이 여러 단계로 공격을 막도록 인라인 상에 장비를 배치
2.1. DDoS 방어 장비
- DoS (Denial of Service) 공격은 다양한 방법으로 공격 목표에 서비스 부하를 가해 정상적인 서비스를 방해하는 기법
- DoS 공격은 적이 공격 출발지에서 공격하는 것이 일반적이었고 비교적 탐지가 쉽고 짧은 시간 안에 탐지만 하면 IP 주소 기반으로 방허가 가능
- 이런 탐지를 회피하고 더 짧은 시간에 공격 성과를 내기 위해 다수의 봇을 이용해 분산 공격을 수행하는 DDoS 공격기법이 등장
- DDoS 장비는 데이터 센터 네트워크 내부와 외부의 경계에서 공격을 방어하는 데 이것은 볼류메트릭 공격을 우선 막기 위함
- 볼류메트릭 공격(Volumetric Attack): 회선 사용량이나 그 이상의 트래픽을 과도하게 발생시켜 회선 사용을 방해하는 공격
- 회선을 공급해주는 ISP나 네트워크 ISP와 연결되는 데이터 센터 네트워크의 가장 바깥쪽에 위치시켜 이 공격을 완화해야 함
2.2. 방화벽
- 4계층에서 동작하는 패킷 필터링 장비이며 3,4 계층 정보를 기반으로 정책을 세울 수 있음
- 그리고 해당 정책과 매치되는 패킷이 방화벽을 통과하면 그 패킷을 허용/거부할 수 있음
- 일반적으로 DDoS 방어 장비 바로 뒤에 놓는 네트워크 보안 장비
- 3,4계층에서 동작하여 다른 장비에 비해 비교적 간단히 동작하고 성능도 우수
- 최근 고성능 방화벽은 ASIC이나 FPGA와 같은 전용 칩을 이용해 가속하므로 대용량을 요구하는 데이터 센터에서도 사용
2.3. IDS, IPS
- IDS(침입 탐지 시스템)과 IPS(침입 방지 시스템)는 방화벽에서 방어할 수 없는 다양한 애플리케이션 공격을 방어하는 장비
- 최근에는 애플리케이션 공격을 방어하는 장비를 IPS로 통칭함
- 사전에 공격 데이터베이스(Signiture)를 제조사나 위협 인텔리전스 서비스 업체로부터 받음
- 이후 IDS와 IPS 장비에 인입된 패킷이 보유한 공격 데이터베이스에 해당하는 공격일 때, 차단하거나 모니터링 후 관리자에게 알림을 보내 공격 시도를 알림
- 기존에는 블랙리스트 기반 방어만 제공했지만 프로파일링 기반 방어 기법이 IPS 장비에 적용되어 애플리케이션을 골라 방어할 수 있는 애플리케이션 컨트롤 기능이 추가되어 화이트리스트 방어 기법도 적용됨
2.4. WAF(Web Application Firewall)
- 웹 서버를 보호하는 전용 보안 장비로 HTTP, HTTPS처럼 웹 서버에서 동작하는 웹 프로토콜의 공격을 방어함
- IDS/IPS 장비보다 범용성이 떨어지지만 웹 프로토콜에 대해선 더 세밀히 방어할 수 있음
- WAF는 다음과 같이 다양한 형태의 장비나 소프트웨어로 제공됨
- 전용 네트워크 장비
- 웹 서버의 플러그인
- ADC 플러그인
- 프록시 장비 플러그인
- WAF는 IPS 회피공격을 방어할 수 있음
- IPS는 데이터를 조합하지 않고 처리하지만 WAF는 프락시 서버와 같이 패킷을 데이터 형태로 조합해 처리할 수 있음
- 그래서 회피 공격을 쉽게 만들기 어렵고 데이터의 일부를 수정, 추가하는 기능을 수행
- 공격 트래픽을 방어만 하지 않고 공격자에게 통보하거나 민감한 데이터가 유출될 때 그 정보만 제거해 보내줄 수 있음
2.5. 샌드박스
샌드박스 등장 배경
- 보안 장비의 발전으로 해커들의 공격 방식이 악성 코드를 관리자 PC에 우회적으로 심고 이 악성 코드를 이용해 관리자 PC를 컨트롤하는 방식으로 변함
- 악성 코드가 든 이메일을 관리자에게 보내거나 관리자가 악성 코드를 내려받도록 유도하는 방법을 사용
- 이후 이 PC들을 외부에서 컨트롤하도록 C&C(Command & Control) 서버를 만들고 감염 PC들을 이 C&C 서버로 연결하도록 조작
- 이런 공격들이 발전해 현재 APT(Advanced Persistent Threat: 지속 공격)와 ATA(Advanced Target Attack: 지능형 표적 공격)가 되었음
- APT와 ATA 공격을 막기 위해 IPS 장비와 C&C 서버와의 통신을 탐지할 수 있는 다양한 형태의 Anti-APT 솔루션들이 개발됨
- 샌드박스는 APT의 공격을 방어하는 대표적인 장비로 악성 코드를 샌드박스 시스템 안에서 직접 실행
- 가상 운영체제 안에서 각종 파일을 직접 실행시키고 그 행동을 모니터링해 그 파일의 악성 코드 여부를 판별함
최근 악성 코드 추세
더보기
- 최근 악성 코드들은 다크웹에서 코드가 공개되거나 사고팔리는 경우가 많아 재사용됨
- 짧은 기간에 다양한 변종이 출현해 탐지가 어려움
- 기존 보안시스템이 탐지하지 못하도록 암호화, 난독화시켜 오랫동안 여러 단계에 거쳐 공격
- 파일을 직접 실행한 후 파일의 행동을 모니터링하면 이런 악성 코드를 감싼 많은 트릭을 제거하거나 탐지할 수 있음
2.6. NAC(Network Access Control)
- 네트워크에 접속하는 장치들을 제어하기 위해 개발되었고 인가된 사용자만 내부망에 접속할 수 있음
- 내부 PC 관리나 보안 패치로 대응하더라도 외부 PC가 내부망에 접속해 보안사고를 일으키거나 악성 코드를 전파하는 문제점들이 많아 등장함
2.7. IP 제어
- IP 제어 솔루션은 NAC와 비슷하지만 국내에서 많이 사용하며 NAC와 다른 목적으로 개발
- 보안사고 추적이 쉽도록 고정 IP 사용 권고 지침이 금융권에 내려오면서 IP를 할당하고 추적하는 솔루션이 필요해짐
- 할당된 IP를 관리하고 나아가 정확히 의도된 IP 할당이 아니면 정상적으로 네트워크를 사용하지 못하게 하는 기능이 필요하여 개발됨
2.8. 접근 통제
- 서버나 데이터베이스에 대한 직접적인 접근을 막고 작업 추적 및 감사를 할 수 있는 솔루션
- 에이전트 기반, 에이전트리스, 구현 방법에 따라 다양하게 분류되지만 대부분 배스천 호스트(Bastion Host) 기반으로 구현
배스천 호스트
- 서버 접근을 위한 모든 통신은 배스천 호스트를 통해서만 가능
- 서버 호스트의 방화벽에 배스천 호스트에서 출발한 통신만 허용
- 호스트의 보안, 감사를 높이면 보안을 강화할 수 있음
- 최근의 접근 통제 솔루션들은 단순한 접근 제어뿐만 아니라 감사, 보안 이슈 대응 등을 위해 사용자가 작업한 모든 이력을 저장
- 사용자가 접근 제어 솔루션을 통과해 서버에 접근하면 그에 대한 감사 로그도 모두 저장됨
2.9. VPN
- 사용자 기반의 VPN 서비스를 제공해 주는 장비를 말함.
- 기존에는 별도의 VPN 서비스를 제공하는 하드웨어가 있었지만 현재는 방화벽이나 라우터 장비에 VPN 기능이 포함
- 가장 많이 사용하는 VPN
- IPSEC: 주로 네트워크 연결용으로 사용
- SSL: 사용자가 내부 네트워크에 연결할 때 주로 사용
3. 방화벽
- 네트워크 중간에 위치해 해당 장비를 통과하는 트래픽을 사전에 주어진 정책 조건에 맞춰 허용하거나 차단하는 장비
- 일반적으로 방화벽은 네트워크 3,4 계층에서 동작하며 세션을 인지하는 상태 기반 엔진(Stateful Packet Inspection)으로 동작함
3.1. 초기 방화벽
- 초기 방화벽에서는 패킷의 인과관계를 확인하지 못하고 장비에 등록된 정책만으로 필터링
- 이런 초기 방화벽을 스테이트리스(Stateless) 또는 패킷 필터(Packet Filter) 방화벽이라고 함
- 패킷이 장비에 인입되면 해당 패킷이 방화벽에 설정된 정책에 일치되는 것이 있는지 확인
- 이때 참고하는 조건을 5-튜플이라 하고 패킷의 3,4계층 헤더 중 5가지 주요 필드를 뜻함
- Source IP
- Destination IP
- Protocol No
- Source Port
- Destination Port
- 이와 같은 패킷 필터링 방화벽은 지정된 구간에서 간단하게 실행할 때는 큰 문제가 없음
- 하지만 인터넷 통신과 같이 불특정 다수 기반 정책을 정의할 때 룰셋이 복잡해지고 보안이 약화됨
- 5-튜플 외의 3,4계층 헤더를 변조해 공격하면 방어가 불가능
- 하지만 패킷 필터링 동작이 간단하여 네트워크 장비에 활용되거나 현재도 특수한 기능에 사용
- 지정된 IP를 방어하는데 부하가 적어 블랙리스트 처리르 위해 방화벽 내부 패킷 필터링 엔진과 SPI 엔진을 함께 동작시키기도 함
3.2. 현대적 방화벽의 등장(SPI 엔진)
- 현재 우리가 방화벽이라 하는 모든 장비는 세션 기반으로 동작하는 상태 기반(SPI) 엔진을 탑재함
- 패킷 필터 엔진은 가볍고 빠르지만 통신의 양방향성을 인지하지 못함
- 내부 사용자가 외부의 특정 웹페이지에 접속할 때 3 웨이 핸드셰이크를 거친 후 HTTP 요청과 응답 과정을 거침
- 패킷 필터 방화벽에서 이런 트래픽을 처리하기 위해 정책을 선언하려면 외부로 나가는 목적지에 대해서 모든 패킷을 허용해야 함
- 이 경우 내부 → 외부는 가능하지만 외부 → 내부에 대한 정책이 없어 통신이 되지 않음
- 외부 → 내부 응답 설정 시 정책을 설정해야 한다면 출발지는 모든 IP여야 하고 목적지 서비스 포트도 랜덤 포트를 지정하므로 역시 모든 포트가 돼야 함
- 이런 정책은 보안에 너무 취약하기 때문에 패킷 상태를 인지해 패킷의 인과 관계를 파악할 수 있는 상태 기반 SPI 엔진이 등장
SPI 엔진
- 패킷의 인과 관계와 방향성을 인지해 정책을 적용할 수 있어 내부 네트워크에서 인터넷 통신할 때 유용하게 사용
- 내부 → 외부 인터넷으로 통신을 시도해 받은 응답과 외부에서 내부로 직접 들어오려는 패킷을 구분할 수 있음
3.3. 방화벽 동작 방식
간단한 상태 기반 방화벽의 패킷 플로
- 방화벽 제조사 별로 방화벽 동작이 다양하므로 제조사가 제공하는 Packet Processing Flow 문서를 참조하세요.
방화벽 패킷 확인 순서
- 장비에 패킷이 들어오면 우선 세션 테이블 확인
- 조건에 맞는 세션 정보가 세션 테이블에 있을 때, 포워딩 테이블 확인(라우팅, ARP 포함)
- 조건에 맞는 세션 정보가 세션 테이블에 없을 때, 방화벽 정책 확인
- 방화벽 정책은 전체를 확인하여 없을 때 암시적 거부(Implicit Denial) 규칙을 참고해 거부
- 허용 규칙이 있으면 내용을 세션 테이블에 적는다
- 포워딩 테이블을 확인(라우팅, ARP 포함)
- 조건에 맞는 정보가 포워딩 테이블에 있을 때, 적절한 인터페이스로 패킷을 포워딩
- 조건에 맞는 정보가 포워딩 테이블에 없을 때, 패킷 폐기
- SPI 엔진을 가진 방화벽은 세션 인지 기능이 있어 OSI 3,4 계층의 세부적인 필드도 함께 확인
- TCP 컨트롤 플래그에 따라 동작 방식이 변하거나 시퀀스와 ACK 번호가 갑자기 변경되는 걸 인지해 세션 탈취 공격을 일부 방어할 수 있음 (TCP Anti-Replay)
- 세션을 추가로 인지하고 세션 테이블에 저장하므로 세션을 로깅하기 쉬움
- 그리고 대부분의 방화벽은 통신 전체의 세션을 로그로 저장할 수 있어 보안사고 시 이를 바탕으로 어떤 통신의 문제인지 판단할 수 있음
3.4. ALG
- 방화벽은 세션을 인지할 수 있지만 애플리케이션 헤더 정보는 인지할 수 없음
- FTP의 경우, 세션 방화벽 등장 이전에 개발되어 세션 장비를 고려하지 못해 방화벽이 있는 경우 정산적인 통신을 못함
- FTP는 컨트롤 프로토콜과 데이터 프로토콜이 분리되어 동작하고 반대로 세션을 맺음
FTP 동작에서의 문제
- FTP 액티브 모드에서는 초기 접속 방향과 반대로 데이터 프로토콜이 동작해 방화벽이 정상적으로 통과할 수 없음
- FTP 통신 방식을 패시브 모드로 변경하면 패시브 모드 자체를 제공하지 못하는 컴포넌트도 있고 이미 개발된 애플리케이션 변경이 불가능한 경우도 있음
- 그래서 ALG 기능을 통해 방화벽에서 FTP 액티브 모드를 통과시키기 위해 애플리케이션 프로토콜을 확인하고 필요에 따라 세션을 인지해 포트를 자동으로 열어줌
- ALG 기능은 PAT(Port Address Translation) 기능이 동작하는 방화벽에서 PAT를 정상적으로 통과하지 못하는 프로토콜들을 자동으로 인지해 애플리케이션 정보를 변경해 주거나 세션 테이블을 만들어주는 작업을 수행함.
- FTP 프로토콜이 방화벽을 지나갈 때 방화벽 동작 순서
- FTP ALG 기능은 초기 FTP 요청 커맨드를 모니터링
- 서버 쪽에서 사용할 데이터 세션에서 사용할 포트를 클라이언트로 알려줄 때, 이 정보를 확인하고 적절한 세션 정보를 만듦. 서버의 출발지 IP와 포트는 TCP 20번으로, 클라이언트의 IP와 서버에서 알려준 포트를 도착지로 하는 세션을 만들어 세션 테이블에 올림
- 서버에서 클라이언트로 데이터 세션을 열 때, 세션 테이블에 이미 정보가 들어 있어 정책을 확인하지 않고 패킷을 포워딩
3.6. 방화벽의 한계
- 방화벽이 대중화되자 공격 목표가 시스템이나 계정 탈취에서 서비스 중단 쪽으로 바뀌고 DDoS 공격이 새로운 트렌드가 됨
- 방화벽을 우회하는 공격이 개발되고 특히 대규모 웜 공격으로 인터넷 서비스가 마비되면서 방화벽의 한계가 옴
- SPI 엔진 기반 방화벽은 OSI 3,4 계층에서만 동작하여 애플리케이션 영역을 검사하지 못함
- 근본적으로 바이러스나 백도어, 인터넷 웜을 방어할 수 없고 취약점을 악용한 공격도 방어할 수 없음
- 이런 웜 공격을 막기 위해 IPS가 등장함.
현대 방화벽 NGFW, UTM
더보기
- 상태 기반 방화벽은 레거시 방화벽이라 함.
- 기존 방화벽과 달리 네트워크 보안 장비의 기능을 대부분 흡수하여 통합
- APT 공격에 대응하는 샌드박스 기능에 연계되어 제공되기도 함
- NGFW(Next Generation FireWall), UTM(Unified Threat Management)은 방화벽을 애플리케이션 영역까지 확장한 보안 장비
- NGFW는 보안 장비 기능들이 논리적으로 통합되어 있고 UTM은 물리적인 엔진을 통합해 함께 동작하는 방식
NFV(Network Function Virtualization)
더보기
- 네트워크 컴포넌트를 가상화해 범용 하드웨어에 적용하는 기술
- x86 기반의 하드웨어에 가상화 서버 형태로 라우터, 방화벽, L4 스위치와 같은 장비를 탑재
- 성능에 한계가 있지만 서비스 체이닝 기술을 이용해 새로운 서비스를 쉽게 추가, 삭제 ,적용 가능
4. IPS, IDS
- IPS/IDS는 OSI 3~7 계층까지 검사하고 방화벽은 OSI 3,4 계층 영역만 검사함
4.1. IPS, IDS의 정의
- IDS(Intrusion Detection System): 공격자가 시스템을 해킹할 때 탐지를 목적으로 개발된 시스템
- IPS(Intrusion Prevention System): 공격이 발견되면 직접 차단하는 능력을 갖춘 장비, 트래픽이 지나가는 인라인 상에 장비를 배치
- 적극적으로 통신에 개입해 유해 트래픽을 차단, 방어하는 것 외 회피 공격을 차단하기 위한 세션 이해 가능 여부, 능동적 방어를 위한 어노말리(Anomaly) 등 다양한 기능으로 구분
- IPS는 호스트 기반 IPS와 네트워크 기반 IPS로 구분됨
- 일반적인 IPS는 네트워크 기반 NIPS이고 클라우드 내부에서도 네트워크 기반 NIPS로 바뀌는 추세
4.2. IPS, IDS 동작 방식
- 기본적으로 공격 데이터베이스를 사용한 패턴 매칭 방식으로 운영
- 프로토콜 어노말리, 프로파일 어노말리 등 다른 기법으로 공격을 방어함
4.2.1. 패턴 매칭 방식
- 시그니처(signature) 방식, 데이터베이스 방식 방어라고도 함
- 기존 공격이나 취약점을 통해 공격 방식에 대한 데이터베이스를 습득하고 그 최신 내용을 유지하다가 공격을 파악하는 기술
- 패턴 기반 방어가 IPS의 상당 부분을 차지하므로 IPS는 많은 공격 데이터베이스를 보유해야 하고 최신 공격 방식을 반영하는 것이 중요
- IPS는 갖고 있는 공격 패턴 데이터를 활용해 특별한 문자열을 모니터링하다가 자신이 보유한 데이터베이스에 매칭되는 패킷이 들어오면 방어
4.2.2. 어노말리 공격 방어
- 패턴 매칭 기반 방어는 극미한 변화만 생겨도 적절한 대응이 어렵고 변종에 약함
- 블랙리스트 기반 패턴 매칭 기반 방어의 한계 때문에 IPS에서도 화이트리스트 기반의 방어기법이 개발됨
- 프로파일 어노말리
- 평소 관리자가 정해놓은 기준이나 IPS 장비가 모니터링해 정해진 기준과 다른 행위가 일어나면 공격으로 판단
- 이 기능은 동적 프로파일 기능이 강화되면서 향후 DDoS 방어 장비로 진화
- 프로토콜 어노말리
- 좀비 PC의 공격에 대한 탐지와 방어를 위해 사용
- 실제 해당 서비스 포트에서 동작 프로토콜이 아닌 다른 프로토콜을 사용하는 경우 이것을 파악해 적절히 제어하는 기법
4.3. IPS, IDS의 한계와 극복(NGIPS)
IPS의 한계
- IPS는 네트워크 상에 빠른 속도로 애플리케이션 레벨까지 확인하기 위해 플로(flow) 엔진을 사용
- 이 엔진은 흘러가는 상황을 모니터링해 공격을 탐지하므로 IPS 장비를 비교적 쉽게 우회함
- IPS는 오탐이 많이 발생하여 초기 설치 환경에 맞는 튜닝작업을 오래 해줘야 하고 별도의 인력이 장비 모니터링과 환경에 맞는 최적화 작업을 지속해야 함
NGIPS 출시
- IPS의 기능을 향상시켜 문제를 해결한 NGIPS(Next Generation IPS)가 출시됨
- 애플리케이션을 인지하거나 다양한 시스템과 연동
- APT 공격을 방어하기 위한 일부 기능이 탑재되거나 다양한 외부 시스템과 연동
IPS가 공격 데이터베이스를 얻는 방법
더보기
- 실제로 해킹에 사용된 흔적을 이용해 작성
- 새로운 공격을 탐지하기 위해 허니팟 시스템을 구축
- 공격에 대한 방어가 없고 해커는 공격 대상으로 생각하여 공격
5. DDoS 방어 장비
5.1. DDoS 방어 장비의 정의
- 초기에는 네트워크 장비의 취약점을 공격했지만 현재는 다양한 DDoS 공격 형태가 등장
- DDoS 방어 장비는 볼류메트릭 공격을 방어하기 위해 트래픽 프로파일링 기법을 주로 사용하고 다양한 공격 정보를 수집한 데이터베이스를 활용하기도 함
5.2. DDoS 방어 장비 동작 방식
- DDoS 방어 서비스로는 클라우드 서비스, 회선 사업자의 방어 서비스, DDoS 방어 장비를 사내에 설치하는 방법이 있음
- 그 외 회선 사업자와 DDoS 방어 장비를 이원화해 협조하는 서비스도 등장
- DDoS는 대규모 공격이기 때문에 탐지 장비와 방어 장비를 구분하는 경우가 많았음
- DDoS 공격을 탐지해 공격을 수행하는 IP 리스트를 넘겨주면 방어 장비나 ISP 내부에서 이 IP를 버리는 것이 가장 일반적인 DDoS 방어 기법
DDoS 판별 방식
- 프로파일링 기법
- 평소 데이터 흐름을 습득해 일반적인 대역폭, 세션량, 초기 접속량, 프로토콜별 사용량 등을 저장
- 습득한 데이터와 일치하지 않는 과도한 트래픽이 인입되면 알려주고 차단
- 보안 데이터베이스 기반 방어
- IP 평판 데이터베이스를 공유해 DDoS 공격으로 사용된 IP 기반으로 방어 여부 결정
5.3. DDoS 공격 타입
볼류메트릭 공격 | 프로토콜 공격 | 애플리케이션 공격 | |
정의 | 대용량의 트래픽을 사용해 공격 대상의 대역폭을 포화시키는 공격 간단한 증폭기술을 사용해 생성하기 쉬움 |
3,4 계층 프로토콜 스택의 취약점을 악용해 대상을 액세스할 수 있게 만드는 공격 | 7계층 프로토콜 스택의 약점을 악용하는 공격 가장 정교한 공격 및 식별, 완화에 가장 까다로운 공격 |
동작 방식 |
공격에 의해 생성된 트래픽 양은 최종 자원에 대한 액세스를 완전히 차단할 수 있음 쓸모없는 패킷이 회선을 모두 차지해 정상적인 서비스 트래픽이 통과할 수 없음 |
공격 대상이나 중간 위험 리소스의 처리 용량을 모두 사용해 서비스 중단을 유발 일반적인 네트워크 장비나 네트워크 보안 장비를 대상으로 공격 공격 대상 장비의 CPU, 메모리 자원을 고갈시킴 |
대상과의 연결을 설정한 후 프로세스와 트랜잭션을 독점해 서버 자원을 소모시킴 애플리케이션 프로토콜 자체의 취약점이나 플랫폼의 취약점을 악용 |
사례 | NTP 증폭, DNS 증폭, UDP 플러드, TCP 플러드 | Syn 플러드, Ping of Death | HTTP 플러드, DNS 서비스 공격, Slowloris 등 |
5.4. 볼류메트릭 공격
- 회선 사용량이나 그 이상의 트래픽을 과도하게 발생시켜 회선을 사용하지 못하게 방해하는 공격
- 회선 공급을 해주는 ISP 내부나 사용자 네트워크 최상단에 위치시켜 공격을 완화해야 함
※ ISP: Internet Service Provider
- 볼류메트릭 공격은 특정 시간에 특정 타깃을 공격하는 형태로 발생
- 미리 악성 코드에 감염되어 해커가 컨트롤하는 좀비 PC가 많아야 함
- 최근에는 대부분 좀비 PC가 적거나 더 강한 DDoS 공격을 위한 증폭 공격이 증가함
- 증폭 공격: 공격자가 상대적으로 적은 대역폭으로 중간 리플랙터에 패킷을 보내면 이 트래픽이 증폭되어 피해자 네트워크에 수십~수백 배의 공격 트래픽이 발생하는 공격법
- 혼자서는 대부분 방어가 불가능하여 ISP를 통한 방어나 Cloud DDoS 솔루션을 통해 서비스 네트워크로 트래픽이 도달하지 못하도록 조치해야 함
- 클라우드 기반 서비스는 DDoS, WAF와 같은 방어 장비가 필요하지 않은 장점이 있음
- 실제 서비스 앞에 미리 클라이언트 요청을 받아 처리한 후 문제가 없는 요청만 서버 쪽으로 전달
6. VPN
- 전용선이 아닌 공중망을 이용해 논리적으로 직접 연결한 것처럼 망을 구성하는 기술
- 터널이라는 논리적 연결 통로를 이용해 직접 연결한 것처럼 동작함
전용 회선과 VPN
더보기
- 인터넷 망이 아닌 전용 회선으로 직접 연결할 때도 VPN을 추가 구성하는 경우가 있음
- 전용 회선은 종단 간 직접 연결하지만 데이터가 그대로 흐르므로 암호화가 되지 않음
- 보안을 위해서 전용 회선에 VPN을 추가하여 데이터를 암호화함
- 가입자 입장의 VPN 기술은 인터넷 공용 망을 사용하므로 안전한 통신을 위한 암호화와 인증 같은 보안 강화 기술을 적용해야 함
- 과거에는 PPTP, L2TP, GRE와 같이 암호화를 지원하지 않거나 매우 간단한 암호화만 지원했는데 최근에는 IPSEC의 보안 기술이 추가적으로 함께 사용됨
- 본사-지사 같은 네트워크 대 네트워크 연결에는 IPSEC VPN이 사용
- 이 경우, VPN이 연결되는 본사와 지사에 모두 IPSEC VPN 지원 네트워크 장비가 필요
- 개인 사용자가 접속하는 경우 SSLVPN이 사용됨
- 이 경우, PC나 모바일 단말과 같은 원격지는 별도의 네트워크 장비가 필요하지 않음
6.1. VPN 동작 방식
- 터널링 기법이 사용되고 패킷을 터널링 프로토콜로 감싸 통신하는 기법을 말함
- 일반적으로 VPN이라 부르는 프로토콜은 터널링에 보안을 위한 다양한 기술이 포함됨.
- 패킷 암호화, 인증, 무결성 체크 등의 보안 기능을 이용해 패킷이 노출돼도 감청할 수 없도록 보호
- 현재 IPSEC과 SSL이 가장 많이 사용됨
VPN 지원 형태
- Host to Host 통신 보호
- 두 호스트 간에 직접 VPN 터널을 연동하는 기법, 잘 안 쓰임
- Network to Network 통신 보호
- 본사-지사 같은 특정 네트워크를 가진 두 종단을 연결, IPSEC 프로토콜 스택이 가장 많이 사용
- Host가 Network로 접근할 때 보호
- 모바일 사용자가 일반 인터넷망을 통해 사내망으로 연결하는 경우, IPSEC과 SSL 프로토콜이 사용
회피공격
더보기
- 모든 보안 장비나 보안 프로그램을 우회해 공격하는 방법
- 공격자가 시도한 공격이 보안 장비에서 정상적인 통신으로 확인되지만 실제 그 공격이 피해자에게 도착하는 경우의 모든 공격을 말함
- 피해자가 패킷과 데이터를 처리하는 방법과 보안 장비의 다른 부분을 집중 공격하며 IPS가 메인 타깃
자료
- IT 엔지니어를 위한 네트워크 입문 (고재성, 이상훈 저, 2020.10)
'[컴퓨터 과학자 스터디] > 네트워크' 카테고리의 다른 글
로드 밸런서 (0) | 2024.11.07 |
---|---|
DNS (4) | 2024.10.28 |
통신을 도와주는 네트워크 주요 기술 (0) | 2024.10.28 |
로드 밸런서/방화벽: 4계층 장비(세션 장비) (1) | 2024.10.24 |
라우터/L3 스위치: 3계층 장비 (0) | 2024.10.23 |
블로그의 정보
프리니의 코드저장소
Frinee