IT 리스크, 해법은 실용주의 암호화

도서 인크립션

표지
기업 경영에 있어 가장 큰 리스크는 전통적으로 늘 ‘경제 불확실성’이었다. 하지만 최근 ‘IT 보안 위험’이 급속도로 부상해 1위 자리를 노리고 있다. 경영 일선에서도 두 항목의 순서를 바꿔 불안을 호소하는 경우가 많다.

불확실성 때문에 발생하는 문제는 대개 기업 자체로 감수하며 끝낼 수 있는 일이고 과거부터 늘 있던 거다 보니 마치 공기처럼 당연하게 느껴지는데 비해, 신종 리스크인 사이버 위협은 생소함 때문에라도 영 껄끄럽고 불편하다. 게다가 그 기세 점차 거세지고 문제가 터졌다 하면 온갖 언론 앞다투어 달려들어 회사를 아주 작살을 내려 드니 수습도 어려워 도저히 감당 못하겠다는 불평이다.

IT 보안 사고는 항상 지속되어야 하는 비즈니스의 연속성을 해치고 투자자의 투자심리에 악영향을 미칠 뿐 아니라 심각한 경우 엄청난 사회적 혼란을 야기해 재난 수준의 경제활동 마비와 기업활동 중단으로 이어지기도 한다. IT 위기 대응 능력은 기업의 가장 중요한 자산이자 성공적 기업의 핵심역량이라는 인식은 이제 선택이 아니라 불가피한 필수역량이다. 따라서 기존의 위기 관리 방법을 재검토하고 새로운 접근법을 찾아야만 한다.

IT 보안 이해의 핵심

경영자 입장에서 IT 보안의 가장 심각한 문제는 난해함일 것이다. 그게 뭔지 아무리 집중해서 들어 봐도 도대체 무슨 소리를 하는 건지 모르겠다. 도저히 이해할 수가 없다. 책을 찾아봐도 기술자들이나 겨우 읽는 완전한 기술서 아니면 아무짝에도 쓸데없는 말만 잔뜩 채워 놓은 사이비 경영서뿐이라서 배우고 싶어도 배울 수도 없다. 그러다 보니 경영과 기술 사이의 갭은 점차 벌어지고 그 틈을 노린 범죄자와 사기꾼들만 드글거리는 와중에 각종 사건사고는 끊이지 않는다.

IT 보안을 완전히 이해하기란 사실 아주 어려운 일이다. 수많은 중요 요소들을 다각도에서 꼼꼼하게 검토해야 하고, 기술뿐 아니라 기술 바깥 영역에 이르기까지 백과사전 급의 지식으로 무장해야 한다. 하지만 여타 제반 분야들과 마찬가지로 IT 보안에도 뼈대 역할을 하는 중심 줄기가 있다. 중요한 맥락 흐름에 따라 전체를 보는 관점을 가지게 되면 그 난해한 IT 보안이 명료한 하나의 이미지로 떠오르는 것을 체감할 수 있다.

IT 보안 기술 이해의 핵심은 바로 암호 기술이다. 암호화는 IT 보안의 시작이자 끝이라 할 만큼 가장 중요한 요소다. 암호 기술을 중심으로 IT 보안의 지식과 관점을 연결함으로써 총체적 시각을 갖게 된다면 쉽게 IT 보안의 전체 모습을 조망할 수 있을 것이다.
“아니, IT 보안 기술의 핵심은 안티바이러스나 방화벽 아닌가?”
아니다. 암호 기술이다. 보다 자세히 들여다보자.

IT 보안의 두 가지 방법론

IT 보안 분야는 난해하고 방대해 보이지만 그 방법은 간단하게 두 가지로 나눌 수 있다. ‘위협으로부터의 방어’와 ‘안전한 시스템 설계 및 구현’이다. 이는 사람이 건강을 지키는 두 가지 방법과 비교해 보면 간단히 이해할 수 있다.

‘위협으로부터의 방어’는 이미 만들어진 기존 시스템을 잘 지키기 위한 방법이다. 안티바이러스, 침입 탐지/방어, 취약성 점검 시스템 등이 여기에 해당한다. 몸이 아프면 병원에 가서 치료를 받고 주사를 맞고 약을 먹는 것과 마찬가지다. 당연히 취해야 할 조치다. 하지만 기업의 전산망 경계에 대한 보안은 제아무리 최선을 다해도 결국 뚫리고야 만다.

이를테면 요즘 언론에 자주 등장하는 ‘APT 공격’은 정말 지긋지긋할 정도로 집요한 공격이다. 조금씩 조금씩 시스템에 잠식해 들어와 결국 전체를 다 장악하고 만다. 시중에 수많은 APT 방어 시스템이 판매되고 있지만, 정직하게 말하자면 제대로 된 시스템은 단 하나도 없다. 과장 섞은 말이 아니라 정말 없다.

반면 ‘안전한 시스템 설계 및 구현’은 보다 근본적인 접근 방법이다. 문제가 발생하면 그에 대응하는 것이아니라 애초에 시스템을 안전하게 설계하고 구현하는 것이다. 건강한 삶을 위한 꾸준히 운동하고 균형 잡힌 영양을 섭취 하는 등 건강에 좋은 습관와 비슷하다고 볼 수 있다.

여기서 ‘안전하다’는 말은 적법한 사용자가 정상적인 방식으로 접근하고, 통제된 권한 체계 안에서 정보를 열람하고, 이에 대한 감사 정보가 기록되는 시스템의 존재를 뜻하는 말이다. 다시 말해 IT 시스템이 상식적 수준에서 합리적으로 운영되는 것을 의미한다. 그러한 ‘안전한 시스템 설계 및 구현’이라는 근본적으로 문제를 해결하기 위한 방법을 자유롭게 구사함에 있어 반드시 필요한 도구가 바로 ‘암호화’다. 적법한 사용자인지 인증하고, 비정상적인 접근일 때는 정보를 감추고, 권한이 있는 사람에게 정보가 열람되도록 하고, 감사 정보에 대한 무결성을 보장해 준다. 즉, 합리적인 시스템 동작을 보장하고 증명하는 핵심 기술이다.

시스템을 설계 단계에서부터 안전하게 구현했다는 것은 보안에 최선을 다했음을 증명하는 증거가 된다. 따라서 만약의 경우 보안 사고가 발생하더라도 처벌 받지 않는 근거가 된다. 근본적 문제 해결 노력이니 ‘위협으로부터의 방어’ 방법에 비해 책임 면제의 법적 근거도 보다 충실하다. 따라서 기술적으로 보나 경영적으로 보나 ‘안전한 시스템 설계 및 구현’는 ‘위협으로부터의 방어’에 비해 우월하다고 말할 수 있다. 궁극적 보안 개념에 따라 발전하고 진화하는 방향성으로 볼 수도 있다.

IT 보안 문제로부터 자유롭고 싶다면 안전한 시스템 구축, 즉 암호화 해야 한다.

실용주의 암호화의 필요

안전한 시스템 구현이 그리 중요한데도 왜 대부분의 사람들은 IT 보안 그러면 ‘위협으로부터의 방어’만 떠올리는 걸까? 질병이 있으니 치료제가 있다, 성이 있으니 성벽을 기어오른다 식으로 공격과 방어 상황이 마치 한 장의 그림처럼 그려져서 직관적인 이해가 간편하기 때문이다. 실제로 비교적 간단한 기술이기도 하다. 다시 말해, ‘안전한 시스템 설계 및 구현’이 어렵기 때문이다. 그중에서도 암호 기술은 특히 어렵고 복잡하다. 가장 중요한 기술이 어려우니까 접근이 어렵다. 그래서 안티바이러스나 방화벽처럼 당장 손쉽게 처방할 수 있는 방법만 바라보게 되는 것이다.

보안 기술, 특히 암호화와 관련된 지식을 배우는 것은 매우 어렵게 느껴진다. 활자화된 지식 체계도 제대로 갖춰져 있지 않아서 여러 권의 책을 동시에 읽어야만 핵심 원리를 겨우 이해할 수 있다. 게다가 대부분의 책이 매우 두껍고 현장에서는 쓸 일이 없는 쓸데없는 이야기도 너무 많이 들어 있다. 그러니 여기저기 흩어져 있는 지식을 유기적으로 연결하는 일을 독자가 직접 해야만 하는데 이는 아주 어려운 일이다. 하지만 기술을 제대로 이해하기 위해서는 그 높은 진입 장벽을 넘을 수밖에 없다. 그러다 보니 제대로 된 기술자의 수가 적다.

그러나, 달리 생각해 보자. 암호 기술 자체를 원론적으로 이해하는 것과 실제 기업 현장에서의 충분한 보안을 위해 암호 기술을 이해하는 것은 전혀 다른 차원의 문제다. 다시 말해, IT 보안에 대한 통찰을 얻기 위해서는 컴퓨팅(Computing)과 네트워킹(Networking) 지식 위에 보안 지식을 쌓아야 한다. 컴퓨팅과 네트워킹이라는 주제에 완전히 통달하는 것은 매우 어려운 일이지만, 충분한 보안성을 달성하기 위한 수준에서 컴퓨팅과 네트워킹의 원리를 이해하는 것은 상대적으로 쉬운 일일 것이다.

마찬가지로, 암호 기술 자체는 어렵지만 안전한 시스템을 만들기 위해 암호 기술을 어떻게 활용할 것인지를 배우는 일은 그리 어렵지 않다. 그리고 기업 현장에서는 그 정도 수준의 이해로도 충분하다. 결국 노리는 바 목적은 암호 제작이 아닌 ‘보안’이기 때문이다. 실용적으로 암호 기술을 이해하려는 목적은 안전한 시스템을 설계하고 구현하기 위함이지 완전히 새로운 암호 알고리즘을 만드는 일이 아니다.

이를 기존 학술적 암호화 이론과 비교하기 위해 ‘실용주의 암호화’라 칭하겠다. 실용주의 암호화가 절실하다. 안전한 시스템 설계 및 구현에 있어 가장 중요한 기술이기 때문이다.

안전한 시스템의 설계 및 구현

짧은 기간 동안 사회 전반에 IT 기술을 접목함으로써 이른바 ‘IT 강국’이 되었다. 과장이 아니라 일상의 모든 일이 IT 기술에 기반해 이루어진다. 매우 편리하긴 하지만 그 과정에서 주먹구구로 시스템을 마구 설계하고 운영해 제대로 된 정보 보안은 이루지 못했다.

이는 보안을 바라보는 근시안적 관점 때문이다. 그 결과, 시스템이 발전하는 과정에서 보안적 중요도에 따라 제대로 정보가 분류되지 못했다. 일반정보인지 중요정보인지, 식별정보인지 인증정보인지, 공개정보인지 비밀정보인지 엄격히 구분해 데이터베이스를 설계하고 체계적으로 관리하는 일이 보안의 시작이다. 하지만 우리나라 대부분 시스템에서는 데이터를 뒤섞어 관리하고 있었다. 문서 상으로는 정보 분류 및 보안 등급 관리 등의 지침이 있었지만, 현실의 환경에서는 이는 아주 요원한 일이었다. 기업뿐 아니라 국가 행정적으로도 정보 시스템 운영에 있어 체계적인 보안이 이루어지지 못했다. 그리고, 대형 사고가 연이어 발생했다. 전체 인구수보다도 훨씬 많은 개인정보가 한 번에 유출되는 웃지 못할 사고도 벌어진다. 그것도 매우 자주! 이미 일어난 과거나마 반면교사로 삼아 조심하며 피해야 할 일이다.

실용주의 암호화를 통해 안전한 시스템 설계 및 구현을 이루길 바란다.