| 웹 방화벽, 웹 사이트 보안성 향상을 목적으로 도입 | 2010.05.25 |
웹 방화벽 관리와 운영
웹 방화벽을 이용하여 웹 사이트의 보안성을 향상시키는 가장 중요한 요소는 무엇일까? 대부분 웹 방화벽의 기능과 성능을 중요하게 생각하겠지만 무엇보다도 중요한 것은 설치 전 계획과 설치 후 관리와 운영이다. 이러한 부분들 때문에 웹 방화벽 도입 시 장시간 많은 인적 자원 투입하고 지속적인 관리 또한 필요하게 된다.
상용 웹 방화벽 제품들의 경우, 제품 개발 과정에서 보안성과 편의성을 동시에 만족시키기 위한 노력을 끊임없이 하고 있지만 웹 애플리케이션이 복잡하고 다양한 형태로 발전되어 왔기 때문에 아직은 설치와 운영에 많은 노력을 요구하고 있다. 본고에서는 웹 보안과 서비스의 가용성을 동시에 만족시키기 위해서 설치 전과 후에 필요한 작업들에 대하여 간략하게 소개할 예정이다. 웹 방화벽 설치 전 웹 방화벽 설치 전에는 웹 방화벽을 도입하고자 하는 사이트의 특징과 취약점을 정확하게 파악하는 작업을 해야 한다. 웹 서버 담당자나 혹은 보안 담당자가 내부 웹 서버 사이트의 자산을 모두 파악하고 있을 것이라고 생각하지만 실제로 웹 사이트가 몇 개가 있는지 조차 모르는 관리자들이 생각 이상으로 많다. 내부에 어떤 웹 사이트가 존재하는지도 모르는데 웹 방화벽을 설치 한다는 것은 어찌 보면 모순이다. 나아가 웹 사이트에 어떤 취약점이 존재하는지 파악하는 것 또한 보안 정책을 수립하는데 귀중한 정보가 될 것이다. 보안의 첫 발걸음은 ‘내 자신을 아는 것’이다.
● 도메인 분석 내부에 운영 중인 웹 서버 도메인 리스트를 파악하여 보안 정책을 적용할 도메인을 선택하고 만약 필요 없는 도메인이 있다면 서비스를 중지시킨다. 도메인 분석이 철저하게 되지 않아서 웹 방화벽의 보호를 받지 않은 도메인이 있을 경우 해당 도메인의 취약점을 이용하여 서버 전체가 공격당하는 일이 발생하기 때문에 초기 도메인 분석은 매우 중요하다고 할 수 있다.
● 모의 해킹 웹 방화벽 설치 전 웹 애플리케이션의 취약점을 분석한다. 모의 해킹을 이용한 취약점 분석은 보안 정책을 수립하는데 중요한 기초 자료가 된다.
● 애플리케이션 분석 웹 애플리케이션의 전반적인 특징을 분석하고 웹 방화벽 도입 시 문제가 될 부분을 점검해야 한다. 예를 들어 웹 서비스에 별도의 프로토콜을 설계하여 통신 할 경우, 웹 표준과 위배 되는 경우가 발생할 수도 있다.
이런 경우 종종 웹 방화벽에서 정상적인 통신을 차단하여 서비스 장애가 발생하기도 하는데 웹 방화벽 설치 전에 웹 애플리케이션과 웹 방화벽의 호환성에 문제가 없는지 충분히 검증을 해야 한다. 그리고 이전에 해커의 공격에 의하여 웹쉘이 업로드되어 있거나 일구화목마 같은 백도어가 웹 소스에 삽입되어 있다면 웹 방화벽과 같은 보안 장비들을 우회하여 계속적으로 공격할 수가 있다. 이를 방지하기 위하여 웹 애플리케이션 소스를 정밀하게 분석하여 웹 쉘이나 백도어를 제거한 이후에 웹 방화벽 및 보안정책을 적용해야 이후 공격에 완벽하게 대비할 수가 있다.
● 보안정책 수립/소스코드 수정 모의 해킹을 통하여 파악한 취약점을 웹 방화벽으로 차단 할 수 있는 것과 소스코드를 수정해야 하는 것으로 분류한다. 이에 따라 세부적인 웹 방화벽 보안 정책을 수립하고 소스코드 수정에 대한 정책을 수립한다. 웹 방화벽 설치 후 웹 방화벽 설치 후에는 오탐에 대한 대응과 그에 따른 보안 정책의 변경 작업이 진행되어야 한다. 오탐에 대응하는 방법에는 소스코드 수정과 웹 방화벽 정책 변경 2가지 방법이 있는데 되도록이면 보안 정책을 변경하지 않는 것이 웹 사이트의 보안성을 높이는데 도움이 된다. 따라서 웹 애플리케이션 개발자를 설득하여 오탐을 대응하는 과정이 매우 중요하다고 할 수 있다.
● 탐지 로그 분석 웹 방화벽 설치 후에 바로 차단 정책을 하면 서비스에 장애가 발생할 수 있다. 따라서 최소 2주 동안은 탐지 형태로 설정하는 것이 좋다. 그리고 오탐을 분석하여 보안정책 변경, 혹은 웹 소스코드 수정을 결정해야 한다.
● 보안정책 변경/차단 정책 수립 오탐 분석의 결과를 바탕으로 최종 보안 정책을 결정하고 차단 정책을 시행하여 웹 방화벽 구축을 마무리 한다. 사후 관리와 운영 위와 같은 과정을 웹 방화벽 구축이 완료되더라도 지속적인 관리가 필요하다. 일례로 웹 방화벽을 설치한 이후에 웹 서버 IP가 변경된 것을 웹 방화벽 관리자가 파악하지 못하고 설정을 변경하지 않아서 공격을 당하는 어이없는 일이 발생하기도 했는데 이런 사건이 웹 방화벽의 관리가 얼마나 중요한지 단적으로 보여주는 사례라고 할 수 있다. 이뿐 아니라 사이트 개편과 같은 작업 이후에 새로운 취약점이나 오탐이 발생할 수가 있기 때문에 웹 사이트의 작은 변화에도 신경을 쓰고 지속적으로 관리를 해야 한다.
그리고 정기적인 모의 해킹으로 취약점을 점검하고 이에 따른 애플리케이션 수정 및 웹 방화벽 정책의 보완은 웹 사이트의 보안성을 높이는데 중요한 작업 이라고 할 수가 있다.
지금까지 웹 방화벽 설치 전과 후에 해야 할 일들에 대하여 간략하게 설명하였는데 솔직히 말하면 웹 방화벽을 도입하면서 이런 많은 일을 해야 한다는 것은 웹 보안 담당자 입장에서는 커다란 재앙이 아닐 수가 없을 것이다. 물론 위에서 언급한 모든 일과 과정들은 가장 이상적인 것이기 때문에 반드시 모든 것을 지켜야 한다는 것은 아니다. 최소한 도메인 분석과 설치 후 탐지로그 분석과 정책 수정 작업만 하고 나머지 것들은 상황에 따라서 생략을 할 수도 있을 것이다.
하지만 총체적인 웹 보안의 관점에서 웹 방화벽 도입은 하나의 절차에 불과하다. 웹 방화벽 도입을 웹 사이트의 보안이라는 커다란 개념의 틀에서 보았을 때 위에서 언급한 설치 전 후의 일련의 과정들은 중요한 의미가 있다고 할 수 있다. 웹 방화벽의 도입은 그 자체가 목적이 되어서는 안되며 웹 사이트 보안성 향상이라는 목적을 이루기 위한 수단이 되어야 한다. 그리고 웹 사이트 보안성 향상이라는 목적을 이루기 위해서는 무엇을 해야 하는 것인가에 대하여 종합적인 절차로써 이해를 했으면 한다. <글 : 김태한 파이오링크 보안컨설팅팀 팀장(teran@piolink.com)> [월간 정보보호21c 통권 제117호(info@boannews.com)] <저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>
|
|
|
|