[HIP②] 호스트 침입 방지 S/W 제품별 평가
상태바
[HIP②] 호스트 침입 방지 S/W 제품별 평가
  • Network Computing
  • 승인 2002.12.23 00:00
  • 댓글 0
이 기사를 공유합니다

“취약한 곳에 보호벽을 두어서 구멍을 막아라”
‘애플리케이션 지원 폭·보호되는 자원의 수’ 등 평가 … ‘오키나’ 근소한 차로 승리
제방에 난 금에 손가락을 끼워 넣어서 네덜란드가 물에 잠기는 걸 막았던 작은 네덜란드 소년을 기억하는가? 실제로는 수압으로 인해 그의 손가락 주변 틈이 벌어져서 결국엔 제방을 무너뜨리고 어떻게든 땅을 잠기게 했을 것이다. 그리고 네덜란드 소년은 멍청하긴 했지만 영웅적인 죽음을 맞이했을 것이다. 하지만 인터넷에 만연해 있으면서 당신의 네트워크로 머리를 들이밀고 있는 신종 버그에 대해 들을 때는 아마도 이 이야기에 공감할 것이다. 문제는 대다수의 보안 제품들이 늘어나는 공격들에 대항해 보호벽을 세우려고 애쓰고 있다는 사실이다. 그 대신 취약한 부분에 보호벽을 세운다면 어떨까? 이런 용도로 HIP 애플리케이션의 보호 능력은 과연 얼마나 되는지 알아보자.

방화벽, VPN, 안티바이러스 소프트웨어, 그리고 프록시들은 분명 서버 및 애플리케이션 패칭이나 구성처럼 필요한 것이긴 하지만, 시멘트에 난 금 하나로 재앙이 몰아닥칠 수도 있다. 한 마디 충고를 하자면, 취약성이 있는 곳에 보호벽을 두어서 물결을 막으라는 것이다. HIP(Host Intrusion Prevention) 제품은 읽기, 쓰기, 실행 및 네트워크 액세스 등과 같이 사용 가능한 기능들을 제한함으로써 운영시스템을 애플리케이션으로부터 보호하며, 파일, 레지스트리 키, 네트워크 포트 및 COM 객체 등과 같은 시스템 자원들을 지켜준다. 우리는 지금 호스트나 데스크탑 방화벽을 이야기하는 것이 아니다. HIP 애플리케이션은 OS 차원에서 액세스 정책을 이행함으로써, 애플리케이션이 지정된 액세스 정책 이상으로 확장될 수 없기 때문에 지금의 취약성으로 인해 잘못되는 일이 없게 해준다.

모든 제품 커널 레벨 모듈로서 설치

본지에서는 아거스 시스템즈 그룹(Argus Systems Grup), 아머드 서버(Armored Server), 엔터셉트 시큐리티 테크놀로지스(Entercept Security Technologies), 해리스(Harris Corp.), 네트워크-1(Network-1), 오키나(Okena), 타이니 소프트웨어(Tiny Software), 티볼리(Tivoli) 및 워치가드(WatchGuard) 등을 HIP 제품 테스트에 초청했다. 타이니 소프트웨어는 제품을 시간 내에 보내지 못했으며, 네트워크-1은 우리 범주에 맞는 제품이 없다고 말했다. 그리고 티볼리는 그냥 간단히 참가를 거절했다.

따라서 본지의 시러큐스 대학 리얼월드 랩에서 테스트를 받게 된 제품은 아거스의 핏불 LX(PitBull LX)와 프로텍터(Protector), CA의 이트러스트 액세스 컨트롤(eTrust Access Control), 엔터셉트의 웹 서버 에디션(Web Server Edition), 해리스의 STAT 뉴트럴라이저(Neutralizer), 오키나의 스톰와치(Storm Watch)와 스톰프론트(StormFront), 그리고 워치가드의 서버록(ServerLock)과 애프록/웹(AppLock/Web)이 되었다.

이 제품들은 CA의 액세스 컨트롤이나 해리스의 STAT 뉴트럴라이저, 그리고 오키나의 스톰와치처럼 다양한 애플리케이션들을 보호해주는 포괄적인 시스템에서부터 아거스 핏불 프로텍터아 워치가드 애프록/웹처럼 웹 서버 보호에 초점을 둔 제품에 이르기까지 전반적으로 분포돼 있었다.

모든 제품들은 커널 레벨 모듈로서 설치되거나, 혹은 솔라리스 상의 아거스 핏불 LX의 경우처럼 하나의 커널 및 공유 라이브러리 교체물로서 설치되어 시스템 호출을 트래핑, 혹은 변경했다. 이 제품들은 정책 엔진을 통해 액세스 요청을 처리한 다음 이들을 시스템에 전달해서 실행되도록 한다. 거부된 액세스 요청은 결코 기반 운영시스템에 도달할 수 없으며, 서버는 영향을 받지 않고 잘 돌아가고 공격은 다리 아래 물로 흘러가 버린다.

지원되는 OS의 종류에 따라 구성 옵션의 종류가 다를 것으로 예상은 했지만 CA 액세스 컨트롤에 있는 것과 같은 차이는 놀라울 정도였다. 이 제품의 경우 서버의 허용이 유닉스에서는 가능하지만 마이크로소프트 윈도 2000에서는 불가능하도록 작동을 제한할 수 있다. 아거스 핏불 프로텍터의 경우는 유닉스에서 고도로 구성 가능하지만 윈도 2000에서는 아니었다. 엔터펩트, 아거스 핏불 LX 및 CA 액세스 컨트롤 등 몇몇 제품들은 사용자 기반 액세스 제어 규정을 허용하여 다른 모든 쓰기는 차폐되면서 사용자의 파일의 쓰기나 업데이트가 가능하도록 규정하는 정책을 만들 수 있게 해주었다.

가장 필요한 기능들

이상적인 제품이라면 애플리케이션을 돌리는 데 필요한 시스템 자원들로만 액세스를 제한하는 호스트 보안 정책을 강행하고 중앙 관리를 할 수 있게 해주어야 할 것이다. 예를 들어, 웹 서버는 구성 파일이나 레지스트리 키를 읽고, 웹루트에서부터 문서를 읽고, cgi-bin 디렉토리에서 스크립트를 실행하며, 포트 80과 443으로 바인딩시킬 필요가 있다. 정상적인 시스템 작동용으로 필요한 곳을 제외하고는 기간 OS 파일들을 덮어쓰기나 변경할 수 있는 능력을 차폐시킬 수 있어야 하며, 테스트한 모든 제품들이 이를 지원했다.

또한, 어떠한 서버 기반 애플리케이션용으로든 정책을 만들 수 있기를 원했다. 프리패키지 보호(Prepackaged Protection)는 협업, 웹 애플리케이션, ERP(Enterprise Resource Planning) 및 그룹웨어 서버 등 수많은 엔터프라이즈 애플리케이션들을 배치하는 데 유용하긴 하지만 기반 OS에게 해로울 수 있으며 공격의 통로를 제공할 수도 있다. 물론, 필요한 자원과 자원당 액세스 유형을 프로파일링하기 위해서는 애플리케이션을 철저하게 시행해 보고, 모든 자원 요청을 로깅하고 정책을 개발해야 한다. 오키나 스톰프론트만이 애플리케이션 작동을 추적하고 기록된 사건을 기반으로 자기 생각에 합리적인 정책을 만들어 냈다. 여전히 몇 번씩 생성된 정책을 변경 및 테스트해야 하긴 했지만, 스톰프론트의 초기 자원 검색은 우리의 정책 개발 사이클을 상당히 줄여주었다.

버퍼 범람 방지 기능 제공

액세스를 제어할 수 있는 객체들의 유형과, 객체당 액세스 유형은 중요하다. 공격은 로컬과 원격, 모두에서 행해진다. 서버의 능력을 파일 읽기/쓰기/실행으로 제한할 경우, 셸이나 셸 명령어를 실행하지 못하도록 이들을 막을 수 있다. 그러나 그렇다 하더라도 이것이 콘솔로 걸어가서 플로피 디스크로 트로이전이나 백도어를 불러올 수 있는 공격자를 막아주지는 못할 것이다. 아마도 파일 시스템, 네트워크 포트, I/O 포트 및 기타 외부 자원과의 소통 수단들로의 접근을 통제하고 싶을 것이다. 게다가 스택 및 힙 버퍼 범람(stack and heap buffer overflow) 차폐는 또 다른 보호 단계를 추가해 준다.

오키나 스톰와치, 아거스 핏불 LX 및 유닉스 상의 CA 액세스 컨트롤만이 파일과 네트워크 액세스를 규제할 수 있게 해주며, 해리스를 제외한 다른 모든 제품들이 버퍼 범람 방지 기능을 제공한다.

애플리케이션의 액세스 필요조건을 상세하게 지정할 수 있을수록 OS에 대한 공격 성공을 막을 가능성이 커진다. 여기에는 사용자 이름이나 가입 그룹을 기반으로 액세스를 규정할 수 있는 능력 등이 포함된다. 유닉스 상의 아거스 핏불 LX와 CA의 액세스 컨트롤은 사용자 기반 액세스 제어를 설정할 수 있게 해주었기 때문에, 웹루트에서만(다른 어디에서도 가능하지 않다) 파일을 변경 및 생성할 수 있는 사용자 그룹을 만들 수 있었다. 웹 서버의 관리는 XTML이나 ASL, 혹은 PHP 파일과 CGI 실행파일로의 쓰기 액세스를 필요로 하지 않을 그룹에게 허용될 것이다.

한달 반 동안의 테스트와 몇 시간의 조사 작업 끝에 우리는 오키나 스톰와치를 에디터즈 초이스로 결정했다. 이것은 다양한 정책 옵션을 통과하느라 시간이 많이 걸린 복잡한 제품이긴 했지만, 우리가 바라는 거의 모든 것을 할 수 있게 해주었다. 이것은 사용자 ID를 기반으로 정책 결정을 만들 수 없으며, 비록 거의 문제되는 일은 아니지만 오키나에서는 이런 세부적인 부분들까지 충족되도록 스톰와치를 손보고 있다.

스톰와치나 CA 액세스 컨트롤, 혹은 유닉스 상의 아거스 핏불 LX와 같은 올 인 원 툴보다는 타깃화된 HIP 제품이 더 필요한 사람에게는, 엔터셉트, 아거스 핏불 프로텍트, 혹은 해리스 STAT 뉴트럴라이저가 좋은 선택이 될 수 있다. 하지만 워치가드 서버록에는 액세스의 읽기 및 실행, 다중 애플리케이션 지원 및 네트워크 제어 등과 같이 경쟁 제품들에게는 있는 많은 기능들이 빠져 있었다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.