[칼럼] 비즈니스 위협하는 인프라 보안 취약점
상태바
[칼럼] 비즈니스 위협하는 인프라 보안 취약점
  • 데이터넷
  • 승인 2018.04.16 10:11
  • 댓글 0
이 기사를 공유합니다

“기업, 2020년 사이버 보안 보험에 8조원 지출”…SW 취약점 가시성 확보 위한 기술 필수
▲ 강태진 인사이너리 대표

지난해 사상 최대 규모의 랜섬웨어와 개인정보 유출 사고가 발생하면서 사이버 보안의 중요성을 일깨웠다. 올해도 대규모 사이버 보안 사고는 계속 이어지고 있다. 삭스피프스에비뉴, 로드엔테일러, 베스트바이 등 몇몇 기업이 당한 보안 사고들은 언론에 보도됐다. 이 같은 보안 사고로 기업 이미지 면에서 어느 정도의 피해를 입게 될지는 쉽게 계량하기 어렵지만 혹자는 수조 원 규모일 것이라고 추산한다.

많은 기업들은 자사의 소프트웨어 인프라를 안전하게 관리하기가 날이 갈수록 더 어려워지고 있다고 하소연한다. 일부 기업들은 사이버 보안 보험에 가입해 만약의 보안 사고로 인한 재정적 피해를 덜어보려 시도한다. 컨설팅업체인 프라이스워터하우스쿠퍼스(PwC)에 따르면 일선 기업들은 2020년까지 사이버보안 보험 가입에 75억 달러(약 8조원)를 지출할 것으로 전망된다.

수시로 변경되는 SW, 체계적인 관리 방법 필요

일반 이용자들을 대상으로 한 소프트웨어 인프라 시스템을 안전하게 관리하는 것은 복잡하고 어려운 일이 되고 있다. 특히 ▲오픈소스의 확산 ▲기업 내에서 사용되는 소프트웨어에 대한 정보와 이해 부족 ▲소프트웨어 구성 요소들에 포함된 제 3 개발자의 바이너리에 대한 정보 부족 ▲보안 취약점과 오류를 적시 수정해야 할 의무 방기 등은 보안의 어려움을 더욱 가중시킨다.

기업 내부에서 개발된 IT 시스템은 버그를 수정하고 기능을 추가하면서 비표준 언어와 개발 방식을 사용하게 되고, 수시로 통합돼 가시성이 떨어지게 된다. 상용 소프트웨어를 선택한다 해도 문제는 달라지지 않는다. 소프트웨어 기업이 문을 닫거나 해당 소프트웨어가 단종되기도 하고, 개발팀이 바뀌면서 정책 변경과 형상변경이 일어난다. 수년간에 걸쳐 일어난 모든 변화를 기록하고 관리하는데 어려움을 겪게 되고, 소프트웨어에 사용된 모든 소스코드를 파악하지 못하게 된다.

소프트웨어 개발 시, 자체 개발하지 않고 오픈소스를 사용하는 비중이 높아지고 있으며, 해당 개발팀의 저작권을 보호하기 위해 바이너리 포맷으로 적용된다. 그러나 바이너리 파일에 포함된 오픈소스 요소를 정확하게 파악할 수 없으며, 시간이 지날수록 가시성을 더욱 떨어지게 된다.

패치되지 않은 취약점, 공격에 사용

모든 조직은 생산성을 높이는 데 주안점을 둔다. 그 때문에 소프트웨어 개발 팀은 기능성을 높이는 데 최우선 순위를 두며, 안정성과 확장성은 각각 두 번째, 세 번째 순위로 밀린다. 엔지니어링 팀들은 새로운 버전의 소프트웨어를 개발하는 과정에서, 패치의 필요성이 있는 보안 취약점을 경고 받는다.

소프트웨어 개발 현실에서 이런 패치 업무는 매우 하찮게 취급되기 십상이다. 시급성이 없다고 판단해 패치는 다음 버전으로 연기되고, 실시간 패치 업무는 매우 드문 일이 되어 버린다. 그 결과, 잘 알려진 보안 취약점조차 상당히 오랫동안 패치되지 않은 채 방치되며, 엔지니어링 수준은 정체되고(Engineering Debt), 기업의 보안 취약성도 더욱 심각해진다.

기업과 기관들은 지금 보유한 컴퓨팅 인프라의 무결성(Integrity)을 유지하는 일이 새로운 기능이나 성능을 더하는 일만큼이나 긴요한 사안이라는 점을 먼저 인식해야 한다. 코드와 문서 기록의 정확성과 관련해 제기된 온갖 문제들을 고려하면, 자사의 코드 기반을 정확히 이해하기 위해서는 바이너리 스캐닝이 필요하다.

소프트웨어 속 코드 들여다 봐야

바이너리 코드 스캐너는 모든 원시 바이너리 코드를 평가해 어떤 오픈소스 요소들이, 그리고 어떤 버전이 해당 코드에 포함되어 있는지 판별해낼 수 있다. 이어 그런 사실들을 정리해 비교하고, 알려진 보안 취약점들의 데이터베이스를 빈번하게 업데이트한다. 바이너리 스캐너들은 라이브러리 기능이나, 해체(Disassembly) 없이 바이너리 포맷으로만 전달된 다른 소프트웨어를 검사할 수 있다.

바이너리 코드 스캐너는 이 모든 일을 수행하는 데 따로 리버스엔지니어 기법을 쓰지 않고도 코드의 지문을 검토함으로써 어떤 코드가 실제로 채용됐는지 정확하게 파악한다. 보안 취약점을 찾아낼 뿐 아니라 해당 기업의 코드 기반에 대한 정확한 평가와 분석도 제공한다. 스캐너들은 새로운 코드를 검사하는 데도 이용될 수 있다.

사이버 보험에 가입하는 것이 보안 관련 사고의 피해를 줄이는 한 방법이기는 하지만, 기업과 기관들은 자사의 레거시 코드 기반이 어떻게 관리되고 있는지 적극적으로 검토해 봐야 한다. 엔지니어링 부문의 우선 순위를 조정해 보안 취약점이 발견될 경우 가능한 한 적시에 업데이트할 수 있도록 조치하는 한편, 기존 코드와 새롭게 취득한 코드를 더 정확히 이해하는 데 초점을 맞출 필요가 있다.

그렇게 함으로써 에퀴팩스 같은 기업들에서 벌어진 것과 같은 정보유출 사고의 위험성을 줄이고, 사이버 보험의 할증료도 낮출 수 있을 것이다. 소프트웨어 보안 팀과 관리 서비스 제공사들 (MSPs)은 이같은 필수적인 변화의 필요성을 잘 인식해서 비즈니스의 위험성을 줄여야 할 것이다.


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