WAF란 무엇인가?
웹방화벽(Web Application Firewall, WAF) 은, 일반적인 네트워크 방화벽 (Firewall)과는 달리 웹 애플리케이션 보안에 특화되어 개발된 솔루션이다.
웹방화벽의 기본 역할은 그 이름에서도 알 수 있듯, SQL Injection, Cross-Site Scripting(XSS)등과 같은 웹 공격을 탐지하고 차단하는 것이다.. 웹방화벽은 직접적인 웹 공격 대응 이 외에도, 정보유출방지솔루션, 부정로그인방지솔루션, 웹사이트위변조방지솔루션 등으로 활용이 가능하다..
WAF와 방화벽의 차이점
방화벽은 가장 오래된 정보보호 시스템으로 네트워크 보안사고나 문제의 확대를 방지 및 격리한다. TCP/IP 레벨에서 IP/Port 신뢰 여부를 기준으로 구분하는 접근제어 기반의 보안 솔루션이다. 즉 L3단에서 작동하며 네트워크에 돌아다니고 있는 패킷의 정상 여부를 판단해서 구분하는 접근제어 기반 보안 솔루션인 것이다.
주요 기능은 가장 기본적이고 중요한 접근의 통과 허용 여부를 수행하는 접근제어
룰셋 변경/설정, 관리자 접근 등 출입자를 확인하고 추적하는 로깅 및 감사 추적
메시지 인증, 사용자 인증, 클라이언트 인증 등 인증 기능
VPN 기능을 사용해 데이터를 암호화해서 전송하는 기능을 가지고 있다.
하지만 웹사이트 해킹 등 7 Layer 응용 계층의 웹 공격의 방어를 위해서는 별도의 솔루션이 필요하다. 방화벽은 네트워크 계층이므로 암호화된 내용을 복호화 할 수 없어 웹 공격에 대한 한계점을 가진다.
여기서 나온 것이 WAF 웹 방화벽이다.
이는 어플리케이션 단에서 작동하며 웹 서버만 보호하기 위해 설계된 정보보호 시스템으로 웹사이트의 위변조를 탐지하며 차단하게 되며 사용자 URL의 정상 여부를 판단한다.
이는 웹 어플리케이션서비스 보호 전용 방화벽으로 HTTP 프로토콜만 감시하며 URL 단위의 탐지를 통해서 등록되지 않는 URL로의 접속 요청을 거부하며 악의적인 사용자의 비정상적 URL 접근을 원천적으로 봉쇄한다.
또한 사용자가 웹서버로 업로드하는 파일의 종류에 따라 업로드의 허용 여부를 지정하며 파일 내용을 검사하여 악의적인 공격 형태 파일은 필터를 통해 차단한다.
WAF 동작원리
가장 먼저 Web 애플리케이션의 동작원리를 살펴보자
웹 공격의 대부분은 어플리케이션을 구축할 때 생기는 취약점을 통해 웹 서버를 공격하거나 DB 내용을 악용해 정보를 탈취하거나 노출한다.
공격자는 HTTP Request에 특정 공격코드 또는 취약점을 우회하는 코드를 삽입 해 웹서버에 전송하게 되고 웹 어플리케이션은 의도하지 않은 동작을 하게되어 공격자에게 다양한 정보를 전송한다.
그래서 필요한 것이 웹 방화벽이다. 웹서버로 전송되는 HTTP 패킷을 검사하여 의도하지 않은 내용들을 어플리케이션 앞단에서 막는 것이다.
이는 Proxy Server의 원리를 가져온다.
Client는 Proxy Server로 접속하게 되고 실제 애플리케이션 서버에 접속하는 것은 Proxy Server이다. 즉 클라이언트와 서버의 통신을 중계한다.
그러므로 프록시 서버에서 URL을 살펴보며 이상한 형태의 URL이면 Drop 허용된 URL이면 프록시 서버가 애플리케이션 서버에 접속하게 된다.
출처
https://webstone.tistory.com/93
'[WAF]' 카테고리의 다른 글
2023년 최고의 웹 애플리케이션 방화벽(WAF) 공급업체 11개 (0) | 2023.01.18 |
---|---|
WAF vs 방화벽: 웹 애플리케이션 및 네트워크 방화벽 (0) | 2023.01.17 |