IT를 이용한 서비스를 운영하면서 반드시 고려해야 할 부분이 있다면 다름아닌 보안이 아닐까 싶습니다. 서비스를 운영하게 해주는 각종 서버 시스템이나 데이터베이스 시스템, 또 웹 서비스로 서비스를 운영한다면 웹 서버 등 수많은 시스템이 서비스를 구동하게 해주는 역할을 하고 있습니다. 그리고 이런 시스템이 원활하게 잘 돌아가게 하기 위해서는 지속적인 안정성 체크가 중요하며 외부의 해커로부터의 침입으로부터 안전하게 시스템을 보호하는 것도 중요한 역할입니다. 공공기관이나 정부기관과 같은 공공계 뿐만이 아니라 일반 기업들도 서비스의 안정적인 운영을 위해 보안을 중요하게 여기고 있습니다.


보통 시스템에 대한 보안을 이야기하게 되면 네트워크 구성도를 그려보고 외부로부터의 위협이 올 수 있는 네트워크 구간에 다양한 보안 장비를 설치하고 시스템에 직접적으로 접근할 수 있는 외부 시스템, 혹은 내부 시스템(업무용 PC도 포함하여)에 보안 서비스 등을 설치하여 시스템을 보호하는 것을 얘기합니다. 이런 기간계 시스템을 보안하기 위해서 보통 많이 사용하고 있는 보안 장비, 솔루션들을 보게 되면 IDS(침입 감지 시스템), IPS(침입 방어 시스템), 방화벽 등을 얘기할 수 있을 것이며 업무용 PC 등에 설치하는 안티 바이러스(백신), 좀비 PC 방어 시스템, 개인 방화벽, NAC(접근 제어) 등을 이야기 할 것입니다. 그리고 기간계 시스템을 중심으로 주변 장비들의 상태를 확인하여 위협 및 침입에 대한 통제를 위해 SIEM(Security information and event management, 보안 정보 및 이벤트 관리 시스템으로 과거에 통합관제시스템(ESM)의 발전형이라 생각하면 됨)이나 TMS(위협 관리 시스템) 등을 도입하여 체크하곤 합니다. 이 모든 것이 기업의 내부 서비스를 구동하기 위한 보안, 혹은 외부로 제공하는 서비스를 제공하기 위한 보안을 위해 거의 필수적으로 갖춘다고 하는 보안 솔루션, 장비들 입니다. 하지만 이렇게 보안장비를 갖추고, 솔루션을 완비하여도 제대로 방어하지 못하는 것이 최근 보안의 현실입니다. 하기사 해커가 죽자고 달려드면 어떤 보안 솔루션이든 100%로 완벽히 막아내는 것은 거의 불가능하다는 것이 보안 전문가들의 의견입니다.


그래서 거의 최후의 보루로 생각하고 있는 보안 개념이 침임감내 시스템(Intrusion Tolerant Systems, 줄여서 ITS라고 함)입니다. 예전부터 관련 내용들이 많이 공개되었고 논문도 많이 나왔으며 최근 더 활발히 진행되고 있는 주제이기도 합니다. 하지만 ITS를 완벽히 구현한 제품은 일단 제가 알고있는 한 없습니다. 즉, ITS의 기능을 다 구현한 제품보다는 그 기능들 중 구현이 가능한 기능을 제품화 한 것들이 나오고 있는 것이 현실입니다. 대표적인 예가 ITS의 대표 기능 중에 하나인 장애 허용 시스템(Fault Tolerant System, 줄여서 FTS라고 함)입니다. FTS는 어떤 장애가 생겨도 해당 시스템에서 동작하는 서비스는 그대로 지속적으로 운영될 수 있도록 해주는 운영 시스템입니다. ITS의 핵심 기능이기도 합니다. FTS를 구현한 제품들은 찾아보면 꽤 나옵니다. 하지만 FTS를 ITS의 전부라고 볼 수는 없습니다.

ITS의 기능들을 얼추 열거해보면 다음과 같습니다. 외부로부터의 침입을 감지하고 문제가 있을 경우 문제가 없는 시스템으로 서비스들을 이주시키며 이미 발견된 문제에 대해서는 침입을 감지해서 방어하는 기능(면역 기능이라고도 불립니다)이 ITS의 기본 기능이라고 할 수 있습니다. 그리고 서비스를 이주시킬 때 현재 서비스가 돌아가고 있는 상태를 그대로 유지하면서 이주시키는 것이 정말로 중요한 기술입니다. 이런 기본 기능은 말로는 쉽게 쓰지만 실제로 구현할 때에는 무척이나 까다롭고 어렵습니다. 그래서 아직까지 완벽한 ITS 제품이 없는게 아닐까 싶습니다. 위에서 얘기했듯 ITS라고 소개하는 제품들은 대부분이 FTS 범위 안의 제품들입니다.


ITS를 구현하기 위해서 다양한 기술들이 적용되는데 침입탐지 부분에는 IDS 기술이 적용되고 이미 알려진 해킹 행위에 대한 방어, 면역 기능은 IPS 기술이 적용됩니다. 그리고 시스템과 서비스를 이주시키는 기술로는 현재는 가상화 기술을 많이 사용하는 편입니다. 참고로 예전에는 시스템 자체를 2중화, 3중화하여 고가용성(High Available) 기술을 이용했습니다만 최근에는 가상화 기술을 이용하여 시스템의 자원 활용성 및 효율성을 함께 높히는 방식을 많이 이용합니다. 이미 IDS, IPS 기술은 많이 알려진 기술이어서 문제가 없다고 하지만 역시나 현재 운영중인 시스템이나 서비스를 그대로 운영중인 상태로 타 시스템으로 이주시킬 때의 기술이 핵심이라고 할 수 있는데 가상화 기술을 사용하여 라이브 마이그레이션 방식으로 데이터나 시간의 손실 없이 그대로 옮겨주는 기술을 이용함으로 어느정도 해결책을 찾아가고 있는 상황입니다. 그런데 역시나 문제는 서비스는 동작하고 있어야 하지만 서비스 상태는 문제가 있는 상태가 아닌 문제가 해결된 상태여야 한다는 것입니다. 문제가 존재하는 상태에서 그대로 시스템과 서비스를 이주시켜봤자 계속 문제가 터질 것이기 때문입니다. 그렇기 때문에 IDS, IPS 기술과 함께 실시간으로 문제를 분석하여 해결책을 적용하는 라이브 패치 기술도 함께 제공해야 합니다. 이 부분이 많이 어렵다고들 합니다.


위에서 언급했듯 ITS를 구현하기 위해서는 IDS, IPS에 가상화 기술을 활용해야 하며 실시간 분석 및 라이브 패치 기술까지 사용해야 합니다. 정말로 종합 보안 기술 세트라고 해도 과언이 아닙니다. 이러니 여전히 시장에서 제대로 된 ITS 제품이 없을 수 밖에요. 가장 근접하게 만든 제품도 위에서 언급했듯 대부분 FTS 수준이니 말입니다. ITS는 각종 보안 시스템에서 잡을 수 없는, 알려지지 않은 위협으로부터 서비스나 시스템이 공격을 당했더라도 서비스를 지속적으로 유지시키게 해주는, 어떻게 보면 보안 시스템의 최후의 보루와 같은 보안 솔루션입니다. 그만큼 해킹이나 여러가지 위협에 버틸 수 있는 체력이 필요하며 기술을 필요로 합니다.


위에서 계속 얘기했듯 다양한 보안 기술의 집합체이며 보안 기술 외에도 다양한 기술들이 접목한 종합 기술 세트와 같은 것이 ITS입니다. FTS도 훌륭한 보안 솔루션이지만 역시나 이 역시 완벽하지 못합니다. 완벽한 ITS 제품은 언제쯤 나올 수 있을까요? 보안 제품을 기획하고 제작하는 제 입장에서도 무척이나 궁금한 사항입니다. 저 역시 이 부분에 대해서 꾸준히 공부하고 있지만 쉽지 않은 분야이기도 하고요. 하지만 제품이 나온다면 정말 쓰일 곳은 무궁무진할 듯 싶기도 합니다.


이 글은 LG CNS 블로그에 기고했던 글의 원본입니다. 기고한 글은 [여기]에서 보실 수 있습니다.

블로그 이미지

스마트 학주니

학주니의 시선으로 본 IT 이슈와 사회 전반적인 이슈에 대한 블로그

댓글을 달아 주세요