지니언스 기술 블로그

NAC의 GPDB 기능 - Genians

Written by Genians | Mar 23, 2016 6:00:00 AM
 

안녕하세요 기술연구소 차욱재 선임입니다.

이번 포스팅에서는 NAC가 가지고 있는 기능 중 하나인 GPDB에 대해 이야기하고자 합니다.
GPDB는 Genian Platform Database의 약자이며, 지니네트웍스가 구축해놓은 플랫폼 데이터베이스를 의미합니다.

그렇다면 GPDB가 어디에 필요할까요? 그 필요성에 대해 이야기 형식으로 풀어보겠습니다.

보안회사에 근무하는 보안담당자 A 씨는 요즘 고민이 많아졌습니다.
스마트폰을 업무에 많이 활용하면서 점검해야 하는 것들이 많아진 것입니다.
그러다가 문득 궁금증이 생겼습니다.
업무에 활용되는 스마트폰이 아이폰이 많을까 갤럭시가 많을까 하는 궁금증입니다.

이럴 때 GPDB가 그 궁금증을 해결해 줄 수 있습니다.
하지만 GPDB는 반드시 NAC가 동작하는 환경이 반드시 필요합니다.
그래서 A씨는 지니네트웍스에 문의하여 NAC를 설치하고 GPDB 서비스를 받아서 그 궁금증을 해결하였습니다.
갤럭시인지 아이폰인지는 물론이고 갤럭시 중에서도 Galaxy S1, S2 인지까지도 알 수 있었습니다.


<사진출처 : www.123rf.com>

그렇다면 어떻게 자세한 정보를 알 수 있게 될까요?
NAC에서는 사람들이 사용하는 스마트폰은 물론이고 네트워크상에 접속되어 있는 모든 장비들에 대한 정보를 탐지하고 수집하는 기능을 수행합니다.

정보를 탐지하는 것은 센서가 수행합니다. 때로는 에이전트도 정보를 탐지합니다.
정보를 직접 탐지하는 경우도 있지만 탐지하지 않아도 환경설정에 따라 정보를 획득하는 경우도 있습니다.
이와 같은 방법으로 정보를 탐지할 수 있습니다.

정보를 탐지하는 행위는 매우 중요한 기능입니다.
GPDB와 같은 데이터베이스는 성능이 좋은 센서를 통해서 단말의 플랫폼을 관리자에게 알려주는 것이 굉장히 중요한 부분입니다.

GPDB를 통해 어떤 정보를 얻을 수 있을까요? 내가 사용하는 단말기가 Galaxy S4라는 정보를 탐지할 수 있을까요? 답은 “탐지할 수 있습니다.”입니다.

그렇다면 탐지할 수 있는 이유는 무엇일까요?

web browser의 정보, DHCP의 정보, UPNP의 정보, HTTP의 정보, HTTPS의 정보 등 네트워크에서 다양한 서비스들이 구동되면서 필요한 정보들이 사용되면 스마트폰인지 노트북인지 android 폰인지 아이폰인지 Galaxy 인지 샤오미 인지를 추측할 수 있는 정보가 발생되기 때문입니다.

이러한 정보는 “나는 S4다” 라고 알려주는 정보와 “너는 S4구나” 하는 2가지의 형태를 가지고 있습니다.
감이 오시지요?

첫 번째는 장비가 주는 정보입니다. 두 번째는 알아낸 정보입니다.
모든 장비의 정보는 이와 같은 2가지의 형태로 탐지할 수 있습니다.

단순한 형태이지만 탐지하는 것이 그렇게 쉬운 일은 아닙니다.
앞서 설명설명드린 대로 우선 성능 좋은 센서가 필요합니다.
탐지가 되었다면 그다음은 본격적으로 GPDB가 역할을 수행합니다.

여기서부터가 어쩌면 실제 GPDB 작업이라고 할 수 있습니다.
탐지된 raw 정보를 통해서 장비로 분류할 수 있는 핵심 단어, 식별할 수 있는 단서들을 찾습니다.
그 단서들을 찾아내고 GPDB 패턴에 맞게 작성 한 후 패턴을 등록하면 비로소 GPDB로서의 의미가 생기는 것입니다.

의미가 생긴 것으로 끝나는 것은 아닙니다.
실제로 사용되는 네트워크 망에서 GPDB가 동작하는 것을 확인하고 플랫폼을 제대로 보여주는 것을 확인해야 맞습니다.
하지만 끝나지 않습니다.
GPDB는 NAC에서 가장 살아있는 기능이라고 할 수 있습니다.

현재는 탐지되지만 이후에 탐지가 되지 않을 수도 있고 잘못된 탐지를 할 수도 있습니다.
이게 무슨 말인지 지금부터 말씀드리겠습니다.
GPDB의 가장 강점은 추측을 할 수 있다는 점입니다. 반대로 추측 값이기 때문에 언제든 틀릴 수도 있다는 것입니다.

그렇기 때문에 끝없는 모니터링과 개선 작업을 통해서 단말에 대한 정확도를 높여가는 것이 필요합니다.

다음 포스팅에서는 좀 더 유익한 내용으로 찾아뵙겠습니다.