!["코드 한줄만 더넣었다면"…'여기어때'·'빗썸'은 어떻게 뚫렸나](https://thumb.mt.co.kr/06/2018/07/2018072717262753743_1.jpg/dims/optimize/)
2017년 3월, 4000여명에 이르는 숙박 앱(애플리케이션) '여기어때' 이용자들은 불쾌한 내용을 담은 문자메시지를 받고 당혹감을 감출 수 없었다. 해킹으로 이용자 정보가 유출되면서 숙박 이용 내용을 담은 문자가 발송된 것. 당시 이용자명을 비롯해 휴대폰 번호 등 고객 정보 323만건이 유출된 것으로 알려졌다.
해킹 원인은 'SQL 인젝션'. SQL인젝션은 데이터베이스에 대한 질의 값을 조작해 해커가 원하는 자료를 빼내는 공격기법이다. 해커가 정보를 탈취할 때 사용하는 가장 흔한 공격 방식 중 하나다. 숙박 이용 내역이라는 민감정보를 다루면서 가장 기초적인 해킹 기법에 대한 방어책 조차 마련하지 않았던 것.
이처럼 기본적인 보안 시스템도 갖추지 않은 사례가 늘면서 '시큐어코딩'의 중요성이 강조되고 있다. 시큐어코딩은 SW 개발과정에서 개발자의 실수, 논리적 오류 등으로 인해 발생할 수 있는 보안취약점을 미리 찾아내 제거함으로써 사이버위협으로부터 대응할 수 있는 프로그래밍 방법론이다.
우리나라는 2012년 12월부터 행정자치부와 한국인터넷진흥원이 함께 'SW 보안 의무제도'를 마련했다. 이후 진행된 공공정보화사업을 시작으로 공공분야의 SW 개발에 있어서 시큐어코딩 적용이 의무화됐다. 그러나 민간분야는 아직 의무 사항이 아니다. 이로 인해 '여기어때'나 '빗썸' 사태처럼 허무하게 고객 정보를 탈취당하는 사건이 일어나고 있다.
시큐어코딩은 SW 개발과정에서부터 SDLC(SW 개발 생명주기) 단계별로 요구되는 보안 수준에 맞춰 SW 보안취약점 탐지 및 개선을 진행한다. 이를 통해 프로그래밍 과정에 포함된 취약점을 이용한 악의적 사이버공격을 사전에 차단할 수 있다.
이 시각 인기 뉴스
SDLC는 SW의 생성에서 소멸까지의 과정을 단계별로 나눈 것으로, 각 단계별 주요활동과 산출물을 통해 프로젝트의 진행방향을 파악하고 손쉬운 관리가 가능하다. SDLC는 크게 정의 단계와 개발 단계, 유지보수 단계 등으로 나뉜다. 이 과정마다 시큐어코딩을 통해 노출되는 취약점을 탐지해 제거한다.
오 팀장은 "미국표준기술연구소에 따르면 제품출시 후 결함을 수정할 경우 SW 설계 단계에 결함을 수정하는 것보다 비용이 30배 많이 든다"며 "수정 전에 해킹을 당한다면 한 기업이 존폐기로에 놓일 수도 있는 만큼 기업들이 경각심을 가져야한다"고 말했다.