[칼럼]3.20 악성코드 직접 실행해 보니

보안, HW-SW 균형있는 시각 필요

백승주입력 :2013/04/29 09:36

백승주
백승주

지난 3월에 문제가 되었던 악성 코드 샘플을 개인적으로 구해서, 필자의 디바이스에 실행시켜본 적이 있다. 외부에 알려진 바와 같이 악성 코드는 디바이스 내 데이터, 시스템 부트 영역에 대한 삭제를 시도한 후 시스템을 다시 시작시켰다. 데이터에 대한 삭제는 폴더와 파일에 부여된 권한의 문제와 연관성이 있기에, 다른 형태의 설명이 필요하지만, 시스템 부팅에 대한 부분은 우려와는 달리 정상적으로 다시 시작됐다. 사실 이 부분을 확인해보고 싶어서 개인적으로 악성 코드를 실행시켜본 것이다.

필자의 시스템은 바이오스(BIOS) 형태가 UEFI(Unified Extensible Firmware Interface)로 구성돼 있고, 디스크 구성이 마스터 부트 레코드(MBR) 형태가 아닌 GUID 파티션 테이블(GPT) 형태로 만들어져 있다. 또한 부팅 영역에 대한 비정상적인 변경을 거부하는 보안 부팅(Secure Booting) 기술이 하드웨어 레벨과 소프트웨어 레벨에서 동작하고 있다. 최신의 하드웨어, 운영 체제 기술 및 보안 반영이 시스템이 다시 시작되지 않는 최악의 상황만은 막은 것이다. 시스템이 다시 시작되느냐, 되지 않느냐는 보안 사고 후 복구적인 측면에서 시간과 노력에 연관된다.

이번에는 UEFI, 보안 부팅과 같은 개별 기술 이야기를 논하려고 하는 것은 아니다. 다만 우리가 얼마나 보안과 관련된 기술을 생각하고 사용하고 있는지 같이 생각해보자는 의미가 더 크다.

보안 사고가 발생할 때마다 해당 사고에 대한 방어책을 솔루션으로 만들고, 또 하나의 방어 방식을 프로그램 형태로 운영체제에 추가된다. 보안 생태계 특징상, 공격과 방어가 반복적으로 일어나고, 이를 반복할수록 진화하기 때문에 한번의 방어가 영원한 난공불락을 의미하는 것은 아니다. 더불어 비즈니스 규모가 어느 정도 되는 조직의 경우엔 보안 전담 팀을 구성하고 대비하며 무언가를 준비할 수 있는 프로세스를 잘 마련하지만, 중소 기업의 경우 IT 기술보다는 비즈니스에 보다 많은 노력을 쏟아야 하므로 보안 측면에서는 약할 수 밖에 없는 실정이다. 이렇기에 규모가 작은 사업장일수록 보안 사고 감지도 늦고 사고의 범위도 크거나 파악이 불가능하다.

오래된 자동차의 경우 오토매틱 기어의 모드를 변경할 때 브레이크를 밟지 않고도 조작할 수 있었다. 물론 오토매틱 기어 변경시 브레이크를 밟고 움직여야 한다고 들었지만 기계적으로는 조작이 가능했다. 하지만 급발진 사고와 같은 문제점이 발생하자 브레이크를 밟아야 모드를 변경할 수 있게 하는 하드웨어적인 변화가 생겼다.

이와 유사한 형태로 기술의 진화는 자연스럽게 사용자들에게 보다 안전한 컴퓨팅 환경을 제공하는 방향을 항시 포함하고 있다. 초창기 브라우저는 이를 통해서 시스템을 공격한다는 패턴을 예상치 못한 채 설계됐지만, 이제는 브라우저도 시스템을 공격할 수 있는 창구가 될 수 있기 때문에, 보다 낮은 권한에서 동작돼야 한다. 이 권한을 높여야 할 경우 사용자의 허가를 받아야 하는 것을 당연한 브라우저 구동 방식으로 생각한다.

또한 일반적인 사용자들은 아직까지 시스템에 대한 주기적인 업데이트가 얼마나 많은 도움이 되는지를 잘 알지 못한다. 옛날에는 운영체제 및 응용 프로그램에 대한 자동 업데이트가 없었던 시절이 있다. 필요시 사용자가 판단 하에 진행하게 했지만 이제는 인터넷 환경의 변화로 주기적으로 자동 업데이트를 권장하거나 요구하게 됐다. 자동 업데이트를 통해서 본인의 시스템, 응용 프로그램, 그리고 안티멀웨어 프로그램을 최신의 상태로 업데이트하는 것만으로도 보안 및 자산을 지키는데 일조할 수 있다.

마이크로소프트의 경우 자사가 출시한 운영체제에 대해 보안 및 문제점이 발생하면 약속된 일정 기간 동안 지속적인 업데이트 및 서비스팩을 출시한다. 이러한 업데이트와 서비스팩은 출시한 운영체제의 기술 이용 범위를 최대한 활용하는 형태로 만들게 되지만, 기술의 발전 및 트렌드의 변화로 기존에 만들어 놓았던 보안 및 관련 기술이 소프트웨어, 하드웨어적으로 뒷받침하기 어려워질 경우, 이에 대한 기반을 가진 상위 버전의 운영 체제를 출시한다.

10년 전의 하드웨어 성능 및 기술과 지금을 비교해보면 이 당시 출시된 소프트웨어가 오늘날까지 의 모든 상황을 커버하기가 쉽지 않다. 보안 솔루션을 주기적으로 도입할 여건이 되지 않는 중소 사업장에서는 최신 업데이트나 서비스팩의 적용, 나아가 상위 버전의 운영 체제 업그레이드만으로 얻을 수 있는 보안적 혜택은 사고시 발생할 손실보다 크다. 이는 운영체제를 제공하는 IT 기술 벤더의 종류와 상관없이 동일하다. 마이크로소프트뿐만 아니라 요사이 어렵지 않게 찾을 수 있는 애플의 맥하드웨어내 운영체제 역시 보안 업데이트를 출시해 시스템에 대한 보안 문제를 방어해주고 있고 상위 버전에서 하위 버전보다 더 나은 보안을 보장하고 있다.

언젠가 한 지인이 사무실에 업무 미팅차 찾아오신 적이 있다. 인터넷 연결 장치를 집에 두고 왔다고 하시면서 인터넷을 요청했다. 회의실에 있는 네트워크 라인을 집어 전해주니 조금은 의아한 눈빛으로 쳐다봤다. 사내의 네트워크를 어떻게 이렇게 쉽게 사용할 수 있게 하는지…

맞는 이야기이다. 많은 사업장에서 네트워크 사용은 사전에 하드웨어 레벨에서 허가를 해주고 운영체제의 검사를 마친 후 접속을 할 수 있게 된다. 이렇게 프로세스를 만들어놓은 이유는 비허가 디바이스가 사내 서버나 인프라에 접속해 문제를 일으킬 수 있기 때문이다. 사내의 시스템으로 등록돼 있는 시스템과 외부 시스템을 소프트웨어적으로 구분해 사내 시스템인 경우엔 사내 네트워크내 여러 기간계 인프라에 접속이 가능하다.

외부 시스템인 경우엔 접속 자체를 불가능하게 처리할 수 있다면, 해당 시스템이 공격 혹은 정보 탈취를 위해 시스템으로 접속하는 자체를 막을 수 있다. 운영체제 내 특정 솔루션을 덧붙여서 구현해야 하는 것 같아 보이지만 운영체제에 내장된 표준 IP 보안(IP Security) 기술을 동작시키는 것이다. 네트워크 내 시스템의 구분을 IP 보안 기술 정책 반영 여부에 따라 처리되며 이러한 정책은 사용자가 임의로 반영 및 삭제할 수 없도록 시스템 내 처리되는 자동 프로세스로 만들어져 있다.

나아가 최초 로그온 할 때만 보안을 확인하는 형태가 아니라 실시간 감시 및 격리도 가능하다. 여전히 많은 조직은 시스템에 사용자의 계정과 암호를 입력한 후 보안을 확인하고 통과와 거부를 결정한다. 최초 통과를 위해 시스템의 설정을 규정에서 요구하는 바와 같이 설정하고 추후 변경할 경우 이를 확인할 수 없다. 만약 지속적으로 시스템의 보안 상태를 점검하고 문제가 발생할 때 네트워크에서 격리시킬 수 있다면, 보안 사고의 범위가 해당 디바이스 한대로 제한될 수도 있다. 마치 외부 손님을 보안 요원이 계속 쫓아다니는 것과 유사하다. 이를 소프트웨어적으로 구현한 것을 마이크로소프트에서는 네트워크 액세스 보호(NAP, Network Access Protection), 시스코에서는 하드웨어 솔루션과 결합해 네트워크 액세스 제어(NAC, Network Access Control)라고 부른다.

보안과 관련된 기술들은 너무나 많기에 전부 열거하기엔 무리가 따른다. 당연한 한가지는 보안에 대한 접근은 한 영역에서만 살펴봐야 할 것이 아니라 여러 영역에 대해서 통합적으로 접근해야 한다는 것이다. 아직까지 많은 조직에서는 보안의 적용 범위를 생각할 때 네트워크적인 요소가 우선 검토된 후 운영체제 레벨을 검토해 추가적인 솔루션을 도입하여 처리하는 것이 다반사다.

보안의 범위는 특정한 순서가 있는 것이 아니라 전체적인 영역들이 조화롭게 연결돼 보다 안전한 보안을 제공하는 것이다. 그렇기에 현재 사용하는 버전의 운영체제가 특정 보안 기술을 제공하지 않는 경우(앞서 언급한 UEFI, 보안 부팅과 같은)라면 솔루션이 더 적합할 수 있고, 이를 제공해 비즈니스를 하고 있는 보안 조직도 필요하다. 여타 이유로 솔루션을 도입하기 어렵거나 보다 가벼운 형태로 운영 체제에서 기본 활용하고자 하는 조직이라면 최신의 업데이트와 상위 버전의 운영체제를 생각해보는 것도 운영체제의 보안을 높이는데 좋다.

관련기사

응용 프로그램에 대한 주기적인 업데이트도 필수적이며 컴퓨터뿐만 아니라 태블릿, 스마트폰의 앱에도 동일한 시각을 적용해야 한다.공개적인 장소에서 본인의 디바이스 내 앱에 대해 스토어에서 제공하는 앱 업데이트가 하나도 없는 사람을 찾는 것이 요즘은 더 힘들 정도로 앱에 대한 업데이트도 신경써야 한다.

IT 기술은 하나의 정답만이 존재하진 않는다. 어떠한 형태는 하드웨어가 제격일수도 있고 어떠한 형태는 소프트웨어가 더 제격일수도 있다. 둘 다를 요구할 수도 있다. 보안도 마찬가지다. 다른 영역보다 문제가 발생할 때 더 나쁜 결과로 이어질 수 있는 영역이기에 하드웨어적인 형태, 소프트웨어적인 형태의 검토, 나아가 두 영역의 조화가 필요하다. 나아가 집 대문마다 설치되어 있는 자물쇠도 최근에 출시한 자물쇠가 더욱 안전하다. 그렇지만 자물쇠를 더 이상 달 수 없다면 경비원을 추가하거나 문 자체를 보다 안전한 문으로 바꾸는 것이 더 나을 수 있다. 자물쇠를 계속 추가할지 대문을 바꿔줄지에 대한 부분도 보안에 대한 적용 범위 및 규모, 그리고 비용에 대한 판단이 해답을 제시할 것이다.

*본 칼럼 내용은 본지 편집방향과 다를 수 있습니다.

백승주 IT컬럼니스트

IT 칼럼니스트, Microsoft 기술 전도사(Evangelist), IT 트렌드 및 주요 키워드를 다루는 꼬알라의 하얀집(http://www.koalra.com)을 운영하고 있습니다.