보안 인증서를 확인하라
상태바
보안 인증서를 확인하라
  • Network Computing
  • 승인 2003.09.20 00:00
  • 댓글 0
이 기사를 공유합니다

보안 업체들이 제품 데이터 시트에서 언급하는 기능들을 이해하려는 것은 마치 손으로 젤리 모양을 빚으려는 것과 마찬가지다. 한 가지를 확실히 잡고 나머지는 집어 던져라. 아무리 최선을 다한다고 하더라도 무형의 보안 제품이 어떤 일을 하는지, 그리고 얼마나 잘 수행하는지를 정확히 알 수는 없다. 그리고 구입하기 전에 이것을 전체적으로 테스트해볼 만한 시간이나 자원을 갖고 있지도 못할 것이다. 그렇다면 어떻게 해야 할까. 간단한 제품 데모나 시험용 제품을 써보는 대신 제품의 보안 인증서를 확인해 보는 방법이 있다.

보안 인증서는 직접 수고할 필요 없이 심도 깊은 테스트를 한 것과 마찬가지다. 써드파티 연구소나 기관에서는 특정 범주에 대해 제품을 테스트하고 여기에 따라 등급을 매기고 있다. 보안 인증서에 능통하다면 보안 장비나 소프트웨어에 대한 가치 있는 정보를 얼마든지 얻을 수 있을 것이다. 하지만 모든 제품의 인증서가 같은 것은 아니며, 이들의 유용성은 인증서의 용도에 따라 달라진다. 테스트가 기능적인 용도인지 아니면 이행용인지 여부와 테스트의 내용, 그리고 결과의 범위를 파악할 필요가 있다. 대다수 제품 인증서가 사양별로 비교해 상대적인 점수를 매기는 것이 아니라 기능성 테스트에 초점을 두고 있다. 기능성 테스트는 이 제품이 인증서 범주에 맞는지 여부를 결정해 준다.

보안 제품용의 주요 인증으로는 CC(Common Criteria), FIPS(Federal Information Processing Standard) 140-2 시큐리티 리콰이어먼츠 포 크립토그래픽 모듈(Security Requirements for Cryptographic Modules), 그리고 ICSA 랩 등이 있다. 보안 컨설턴트 업체인 네오햅시스(Neohapsis)에서는 OSEC(Open Security Evaluation Criteria)를 후원하고 있는데, 이 곳에서는 업체와 사용자들로부터 얻은 정보를 이용해 커뮤니티 피어 리뷰 방식을 택해 인증을 하고 있다.
이러한 인증서는 서로간에 보완이 되지만, 정부 기관에 있거나 그 쪽 일을 맡아서 하는 사람이라면 CC와 FIPS-14-2 인증을 이용해야 한다.

무엇이 필요한가

인증서에서 최대한을 얻어내려면 자기 조직의 보안 필요조건을 알고 있어야 한다. 보안 정책이나 제안서 요청을 보면 분명 이런 조건들이 명기돼 있을 것이다. 이런 문서를 확보하면 인증서의 기능성 테스터와 자신의 필요를 손쉽게 대조해볼 수 있다. 인증서 용어를 아는 것도 도움이 될 수 있다. CC에서는 필요조건을 언급하는 PP(Protection Profile)를 만드는 데 사용되는 표현법을 제공하고 있다.

인증서가 제품 분석에 도움이 될지 여부를 알고 싶다면 인증서가 스테이트풀 패킷 필터링 방화벽이 TCP 세션의 상태를 적절히 추적하고 있는지 여부 등과 같은 특정 보안 기능을 어떻게 규정하고 있는지를 살펴 보라. 예를 들어 TCP 상태가 인증 랩에서 TCP 세션의 설정 및 해제로만 정의 및 테스트되고 TCP 순차적 넘버링이나 에러 제어 메커니즘이 포함되지 않았다는 사실을 안다면 이 특정 인증서가 자신의 필요조건에 적절한지 여부를 좀더 쉽게 결정할 수 있을 것이다.

인증 테스트는 보통 한 제품의 세부적인 사양에 제한된다. 대다수 방화벽이 IPSec(IP Security)을 지원하고 있지만, 방화벽이 ICSA 랩 파이어월 서티피케이션을 통과했다고 해서 이것이 IPSec VPN 서티피케이션을 통과한다는 얘기는 아니다. 그리고 이런 기능성 인증서들은 단순히 보안 기능이 작동한다는 사실을 확인해주는 것에 불과하다. 즉 이들은 그러한 사양의 중요도에 대해서는 어떠한 안내도 제공해주지 못한다.

CC의 구성

CC는 일련의 보편적인 필요조건을 찾아내고 방법론을 테스트하고 전세계 보안 제품을 평가하는 틀(CC 글로서리)을 마련하기 위해 미국과 캐나다, 독일 및 영국 등 세계 각지에서 힘을 합한 결과물이다. CC 2.1과 ISO(International Organization for Standardization) 표준 15408은 같은 것이다. CC는 정부의 평가 및 구매를 염두에 두고 만들어지긴 했지만, 그 테스트 및 인증은 기업에도 마찬가지로 적용된다.

CC는 세 가지 부분으로 이뤄져 있다. 파트 1은 개요이며, 파트 2에서는 테스트되고 있는 보안 컴포넌트들을 정의하고 있다. 업체들은 파트 2를 이용해 방화벽이나 암호화 프로세서와 같은 서브시스템이나 자사 제품에 필요한 기능을 정할 수 있다. 테스트 장비는 CC 용어로는 ToE(Target of Evaluation)가 된다. 파트 3에서는 보안 확인 필요조건을 규정하며, 이것은 PP와 ST(Security Target) 문서를 만드는 데 사용된다. ST 문서에는 제품의 기능적인 역량이 규정돼 있다. 평가되는 제품마다 ST 문서가 있다.

PP는 보안 목표를 달성하는 데 요구되는 일련의 보안 필요조건들을 다룬다. CC는 테스트되는 모든 제품에 PP를 요구하진 않지만 이것이 있는 제품이라면 ST뿐만 아니라 그 프로파일도 반드시 충족시켜야 한다. CC는 또한 테스트의 개요를 담은 인증 보고서를 제공하며, 테스트 환경과 구성을 설명하고 사용된 모든 PP를 기재한다. 보고서에는 인증 테스트를 둘러싸고 특별한 예외 상황이나 문제가 있을 경우 이들도 함께 포함된다.

CC의 EAL(Evaluated Assurance Level)은 제품이 ST와 PP에 언급된 기능상의 필요조건들을 충족한다는 것을 알려주는 평가 기준이다.

EAL 레벨 범위는 이 제품이 기능적으로 테스트되고 기본적인 필요조건을 충족시킨다는 EAL1에서부터 보안이 특별히 중요시되는 환경에서의 필요조건을 충족시킨다는 것을 의미하는 EAL7까지 있다.

대부분의 제품은 EAL4나 그 아래의 CC 인증서를 받게 되는데, 그 이유는 EAL5, 6 및 7 인증은 매우 엄격하기 때문이다. 여기서 CC는 기능성 테스트와 함께 개발 프로세스와 제품 뒤의 이론적인 프레임워크까지도 평가한다.

그러나 내용이 없는 EAL 평가는 의미가 없다. 예를 들어 많은 방화벽들이 EAL4 등급을 갖고 있지만 그렇다고 ST, PP 및 인증 보고서를 읽지 않으면 알 수 있는 게 별로 없다. CC 파트 2와 파트 3를 이용해 ST와 PP에서의 주장들을 비교해서 참고로 한다면 무엇이 테스트됐는지를 보다 확실히 알게 될 것이다.

암호 인증

FIPS-140-2는 NIST(National Institute of Standards and Technology)에서 후원하는 암호 모듈용 인증이다. 이것이 나온 후로 비록 기존의 제품들에서 여전히 사용되고 있긴 하지만 버전 1(FIPS-140-1)은 폐물이 되었다.

NIST 승인 랩에서는 FIPS-140-2에 따라 신제품들을 테스트하며, 이는 암호 서브시스템이 적절히 이행되는지, 그리고 저장된 민감한 데이터에 대해 정확한 수준의 보호 기능을 제공하는지를 테스트한다.

FIPS-140-2에서는 최저에서 최고까지 네 가지 순차적인 단계로 보안 확인을 정의하고 있다. 레벨 1은 그 제품이 DES(Data Encryption Standard), 3DES(triple DES) 및 AES(Advanced Encryption Standard) 등과 같은 NIST 표준 암호 알고리즘을 적절히 이용하고 있다는 것을 의미한다.

레벨 2는 그 제품이 탬퍼 에비던트 코팅(tamper-evident coating)이 되어 있어 장비에 어떤 손질이 가든 이를 알 수 있다는 것을 의미한다. 레벨 3는 회선 컴포넌트와 같이 물리적으로 공격이 가해지는 것을 감지할 경우 저장된 키를 삭제하는 암호 모듈에 대한 것이다.

레벨 3를 받는 제품은 액세스 인증을 반드시 요구해야 한다. 그리고 레벨 4는 그 제품이 과냉(supercooling)과 같이 물리적 액세스 제어를 방해하려는 공격에 대한 보호 기능을 제공한다는 것을 의미한다.

대다수의 보안 제품들이 FIPS-140-2나 레벨 3 인증서를 받으며, 모듈이 기계실과 같이 통제되는 환경에 있는 한 이 정도면 충분하다.

ICSA 인증

불행히도 네트워크 보안 제품용으로는 언더라이터즈 래버러토리(Underwriters Laboratory)와 비슷한 기관이 없다. 몇몇 업계 인증만이 제품이 어떻게 기능하는지를 다루고 있을 뿐이다. 이들 중 아마도 가장 오래되고 가장 잘 알려진 곳은 ICSA 랩일 것이다. ICSA는 보안 서비스 회사인 트루시큐어(TruSecure)의 독립 기관으로 암호 시스템, 방화벽, 안티바이러스 소프트웨어, 그리고 IPSec VPN 소프트웨어와 어플라이언스를 공개된 문서와 타 제품에 대조해 테스트 및 인증하고 있다. CC나 FIPS-140-2와 마찬가지로 ICSA 랩의 인증 또한 통과와 실패 절차가 있는 기능성 테스트다.

인증 범주는 보안 업체와 전문가들에 의해 만들어지며 제품의 기능이 성숙하고 테스트 방법이 검증되는 것과 함께 진화하고 있다. CC와 달리 ICSA 랩의 업계 인증서에는 이행 가이드라인과 환경적인 제한요건이 포함돼 있지 않다. 이들 테스트는 제품 설계상의 차이나 그 내부 보호 인핸스먼트들을 고려하지 않는다. 예를 들어 ICSA 랩 방화벽 인증은 스테이트풀 패킷 필터링과 애플리케이션 프록시 방화벽을 구분하지 않는다.

인증서만으로 충분한가?

네트워크와 보안 패치가 노출된 실제 세계에서 인증서는 얼마나 중요할까? 인증된 보안 장비나 패키지가 공격에 면역성을 갖는 것은 아니다. 이것은 퍼즐에서 중요하긴 하지만 하나의 조각에 불과하다. 예를 들어 FIPS-140-1 레벨 4 인증 장비인 IBM 4578 크립토그래픽 프로세스는 한 때 커먼 크립토그래픽 아키텍처 지원 소프트웨어에 공격자가 보안 계층을 피해 키를 찾을 수 있게 해주는 취약점을 갖고 있었다. IBM은 지난 해 초 이 문제를 해결했지만 인증서가 강력한 보안 실행을 대체하지는 못한다는 사실을 다시 한번 일깨워주었다.

그리고 인증 받은 제품이 반드시 그렇지 않은 제품보다 더 보안성이 강한 것은 아니다. 업체에서 테스트를 위해 제품을 아직 제출하지 않았거나 혹은 테스트가 진행 중일 수도 있기 때문이다. 나머지 업체들은 인증에 들이는 비용은 보통 제품당 2만5천달러부터 시작해 CC 인증의 경우 수십만 달러에 이르기 때문에 인증서를 받을 수 있는 제품을 만들도록 동기부여가 된다고 자신 있게 말하고 있다.

하지만 어떤 인증서든 복음서로 생각해서는 안 된다. 인증서는 공통된 필요조건들을 확보하는 데는 좋은 것이지만 경우에 따라 자신에게만 필요한 것들도 여전히 있을 수 있기 때문이다.


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