본문 바로가기
INCOGNITO 2023

[WebSocket] WAF / IDS / IPS

by hezin* 2024. 2. 26.

 

WAF (Web Application Firewall)

: 웹 애플리케이션 방화벽은 악의적 공격과 원치 않는 인터넷 트래픽으로부터 웹 애플리케이션을 보호할 수 있도록 지원한다. WAF를 사용하면 IP 주소, HTTP 헤더, HTTP 본문, URI 문자열, XSS ,SQL 삽입 등의 인터넷 위협을 방지하기 위한 규칙을 수립하고 관리할 수 있다. 

네트워크 Layer7 (애플리케이션) 계층에서 HTTP 프로토콜을 베이스로 하는 취약점 공격을 탐지 및 차단한다. 

일반적인 네트워크 방화벽과는 달리 웹 애플리케이션 보안에 특화된 방화벽이다. 웹 서비스를 하는 모든 웹 서버를 대상으로 보호한다.

 

따라서, WAF는 웹 연결 애플리케이션을 보호하고, 규정 준수와 분석을 위한 액세스 로그를 수집하기 위해 사용된다.

 

WAF 서비스 구성 요소

: WAF 정책 : WAF 정책에는 원본 관리, 보호 규칙 설정, 봇 감지 기능을 비롯한 전반적인 WAF 서비스 구성이 포함된다.

  • 원본 : WAF 정책에 정의된 대로, 보호 규칙 또는 기타 기능을 설정하도록 설계된 웹 애플리케이션의 원본 호스트 서버이다.
  • 보호 규칙 : 지정된 보호 규칙 기준을 충족할 때, 차단 또는 기록하도록 구성할 수 있다. WAF는 시간 경과에 따라 웹 애플리케이션에 대한 트래픽을 관찰하고 적용할 새 규칙을 제안한다.
  • 봇 관리:  애플리케이션에 대해 식별된 봇 트래픽을 감지하여 차단하거나 허용할 수 있는 여러 기능이 포함되어 있다. 봇 관리 기능에는 JavaScript 인증 질문, CAPTCHA 인증 질문, GoodBot 허용 목록이 포함되고, 봇 관리 솔루션은 IP 비율 제한, CAPTCHA, 장치 핑거프린팅 및 인간 상호 작용 인증 질문과 같은 감지 기술을 사용하여 웹 애플리케이션에서 의심스러운 봇 활동을 식별하고 차단할 수 있다. 그와 동시에 WAF는 게시된 봇 제공자의 합법적인 봇 트래픽을 허용하여 이러한 제어를 무시할 수도 있다.

 

WAF의 주요 기능

  • 악성 트래픽 필터링: 악성 요청 및 응답을 감지하고 차단하여 웹 애플리케이션에 대한 여러 공격을 방어한다. 이러한 공격에는 SQL Injection, Cross-Site Scripting, Cross-Site Request Forgery , 파일 업로드 취약점 등이 있다.
  • 시그니처 기반 탐지: WAF는 미리 정의된 시그니처 패턴을 사용하여 알려진 웹 애플리케이션 공격을 탐지한다. 이러한 시그니처 패턴은 새로운 공격 패턴이나 취약점이 발견될 때마다 업데이트된다.
  • 행위 기반 감지: WAF는 웹 애플리케이션의 동작을 모니터링하고, 비정상적인 행위나 패턴을 탐지하여 악의적인 활동을 차단한다. 행위 기반 감지를 통해 새로운 공격 패턴을 탐지할 수 있다.
  • 접근 제어 및 인증 : 사용자의 접근을 제어하고 인증된 사용자만이 웹 애플리케이션에 접근할 수 있도록 한다.
  • 보안 로깅과 이벤트 관리: 웹 애플리케이션의 보안 이벤트를 로깅/모니터링한다. 이를 통해 보안 위협을 식별하고 적절한 조치를 취할 수 있게 한다.
  • DDoS 공격 방어: 일부 WAF는 DDoS 공격을 감지하고 차단하여 웹 애플리케이션의 가용성을 보호한다.

즉, WAF는 웹 애플리케이션 또는 API에 대한 악의적인 요청을 필터링한다. 또한 트래픽 발생 지점에 대한 가시성을 높이고, DDoS 공격을 완화하여 애플리케이션 가용성을 확보하고, 규정 준수 지시를 더욱 효과적으로 적용할 수 있게 된다.

 

이러한 WAF의 모니터링, 악성 패킷 필터링 등의 과정을 통해서  WAF는 웹소켓 보안 취약점을 탐지하고 방지할 수 있다. 


그리고 보안을 강화하기 위해서 IDS 와 IPS 를 적용할 수 있다.

 

IDS

: 침입 탐지 시스템

네트워크 트래픽과 디바이스에서 알려진 악성 활동, 의심스러운 활동 또는 보안 정책 위반이 있는지 모니터링하는 네트워크 보안 툴, 가능한 한 실시간으로 탐지하여 관리자에게 경고 메시지를 보내주고 대응하는 시스템

 

IPS

: 침입 방지 시스템

침입 기술에 대항해 다양한 방법의 보안 기술을 사용하여 침입이 일어나기 전에 실시간으로 침입을 막는 시스템, 침입 탐지가 목적인 IDS를 넘어서 침입을 탐지했을 경우에 대한 대처까지 수행한다.

 

IDS와 IPS는 네트워크 상의 모든 트래픽을 모니터링하여 알려진 악의적인 활동을 식별한다. 공격 시도를 식별하고, 해당 공격이 네트워크 내의 엔드포인트를 손상시키기 전에 차단한다.

 

IDS / IPS 의 구현

:IDS는 공격 및 기술 식별을 담당하며, 모든 트래픽을 분석하고 수상하거나 악의적인 트래픽에서 침입 event를 생성할 수 있도록, 대역 외에서 감시 모드로 작동되는 경우가 많다.

IPS는 모든 트래픽이 목적지에 도착하기 전, 어플라이언스를 반드시 통과하도록 트래픽 경로에 구축된다. 악의적인 트래픽이 탐지되면 IPS는 연결을 끊고, 해당 세션 또는 트래픽을 중단한다.

 

이러한 IDS와 IPS를 이용해서 웹 소켓 보안 취약점을 보완할 수 있다.

 

- IDS

: 웹 소켓 트래픽을 모니터링하여 악의적인 패턴이나 행위를 탐지한다. 예를 들면 웹 소켓을 통한 악성 코드 전달, 비정상적인 패킷 패턴, 웹소켓을 이용한 다양한 공격을 감지할 수 있다. 이를 토대로 보안 취약점을 식별할 수 있다.

 

-IPS

: IDS와 유사하게, 소켓 트래픽을 모니터링하고 악성 행위를 탐지한다. 그러나 IPS는 발견된 보안 위협에 대해 즉각적으로 대응하여 차단할 수 있다. 예를 들어, IPS는 악성 웹소켓 연결을 차단하거나 악의적인 패킷을 필터링하여 보안 취약점을 방지한다.

 

 


위와 같은 WAF, IDS, IPS와 같은 보안 도구를 통해 실시간으로 트래픽을 모니터링하고 악의적인 활동을 탐지하여  웹소켓 보안 취약점을 보완할 수 있다.

 

[참고]

WAF(웹 애플리케이션 방화벽)란 무엇인가? | Oracle 대한민국

침입탐지시스템(IDS)/침입방지시스템(IPS)/방화벽 차이 (tistory.com)

IDS, IPS란? | 주니퍼 네트웍스 (juniper.net)