Press Release

안전한 전자정부 서비스의 시작은 ‘시큐어코딩’ 2016.02.21
시큐어코딩, 모바일 분야 등 전자정부 시스템 전체로 확대
eGISEC 2016, 시큐어코딩 등 전자정부·민간 부문 보안 솔루션 한 자리에


[보안뉴스 김태형] 최근 정상적인 애플리케이션에 난독화된 스크립트를 삽입하거나 정상적인 웹 서비스에 악성코드나 악성링크를 숨겨 이용자들을 감염시키는 지능형 공격이 증가하고 있다. 이렇듯 고도화된 사이버공격을 방어하기 위해서는 SW 개발단계부터 보안을 고려하는 시큐어코딩(Secure Coding)이 필수라는 지적이다.


즉, 시큐어코딩은 해킹 등 사이버공격의 원인인 보안약점을 소프트웨어 개발단계에서 사전에 제거해 안전한 소프트웨어를 개발하는 소프트웨어 개발기법을 의미한다. 최근엔 스마트사회의 가장 큰 위협 중 하나로 소프트웨어(SW) 취약성으로 인한 보안사고가 손꼽히면서 시큐어코딩이 더욱 중요시되는 분위기다. SW의 설계 및 코딩 과정에서의 취약성으로 인해 보안사고가 발생하거나 SW 품질과 안전성이 저하된다면 공공이나 기업에서 막대한 손실을 입을 수 있기 때문이다.

이에 행정자치부와 한국인터넷진흥원은 지난해 초 ‘전자정부 SW IoT 보안센터’를 개소하고 그간 전자정부의 소프트웨어를 보호해온 ‘시큐어코딩’ 방식을 IoT와 모바일 분야까지 폭넓게 적용할 수 있는 방안을 마련해 관련기관에 보안기술 개발을 지원키로 했다.

실제로 시큐어코딩 방식을 적용하고 있는 전자정부 소프트웨어의 보안 효과성을 분석한 결과, 해킹 가능성이 94% 이상 제거되고 소스코드의 체계적인 관리로 ‘스파게티 코드 (Spaghetti Code: 스파게티처럼 복잡하게 얽혀있는 프로그램)’를 예방하는 효과를 거뒀다는 조사결과도 있다.

이에 정부는 지난해 12월 행정자치부 고시 제2015-45호(2015.12.22) ‘행정기관 및 공공기관 정보시스템 구축·운영 지침’ 개정을 통해 전자정부 시스템 보안을 강화했다. 해당 지침에는 전자정부 시스템 보안 강화를 위해 기존에 코딩 단계에서만 적용했던 소프트웨어 개발 보안을 전자정부 시스템 전체 라이프사이클로 확대하고 모바일 전자정부 앱 보안성 강화에도 초점을 맞췄다.

특히, 기존 코딩 단계에서만 적용했던 시큐어코딩을 설계와 유지보수 부문에도 적용하도록 제도를 개선했다. 또한, 운영시스템 SW 개발보안 방안을 마련하고 웹 보안 취약점 점검 시 모의해킹과 소스코드 점검을 병행하도록 했다. 아울러 유지보수 점검 항목에는 ‘SW개발 보안’을 추가했다. 이 외에 행자부는 각 기관이 운영하는 전자정부 시스템을 중요도에 따라 등급을 부여하고 시스템별 중요도를 고려한 5단계의 보안등급 분류기준을 마련했다.

행정기관 및 공공기관 정보시스템 구축·운영 지침의 제6장 소프트웨어 개발보안 제50조(소프트웨어 개발보안 원칙)에 따르면, 행정기관 등이 정보화사업을 추진할 때에는 소프트웨어 보안약점이 없도록 소프트웨어를 개발 또는 변경(이하 ‘소프트웨어 개발보안’이라 한다)하여야 한다. 또 행정기관 등의 장이 정보화사업 추진시 적용해야 할 소프트웨어 개발보안의 범위는 △신규개발의 경우 소스코드 전체 △유지보수의 경우 유지보수로 인해 변경된 소스코드 전체 △소프트웨어 개발보안 적용 시 상용 소프트웨어는 제외 등으로 했다.

이와 함께 제51조(소프트웨어 개발보안 활동)에서는 행정기관 등의 장은 제안서 평가시 소프트웨어 개발보안을 위한 소프트웨어 보안약점 진단도구 사용 여부, 개발절차와 방법의 적절성, 제3항에 의한 교육계획의 적정성 등을 확인하고 평가에 반영할 수 있도록 했다. 또한, 사업자는 제50조에 따라 소프트웨어 개발보안을 적용하는 경우 행정자치부장관이 국가정보원장과 협의하여 공지하는 ‘소프트웨어 개발 보안가이드’를 참고할 수 있으며, 정보화사업 착수단계에서 ‘소프트웨어 개발 보안가이드’ 등 소프트웨어 개발보안 관련 교육을 실시하고 이후 투입되는 인력은 개발에 투입하기 전 소프트웨어 개발보안 관련 교육을 실시하여야 한다는 등의 조항을 신설했다.

이를 위해 최근 정부는 전자정부 SW 개발자와 진단원을 위해 SW 개발단계에서 보안진단이 가능한 ‘공개 SW를 활용한 소프트웨어 개발보안 진단가이드’를 무료 배포했다. 이번에 배포된 가이드는 무료 공개 소프트웨어를 이용해 개발자 스스로 보안약점을 손쉽게 진단할 수 있는 방법을 소개하고 있다.

이를 통해 행자부가 선정한 47개 보안약점을 개발자가 직접 진단할 수 있고 통합관리도구를 연계해 진단 결과 분석과 보고서 작성도 가능하다. 이는 별도로 진단비용을 확보하기 어려운 소규모 사업이나 제도 도입 전에 구축된 정보 시스템도 유지보수 등을 통해 개선이 가능할 것으로 기대되고 있다.

행자부는 안전한 전자정부 소프트웨어 개발을 위해 ‘소프트웨어 개발보안’ 제도를 2012년부터 도입·운영하고 있다. 이를 통해 방화벽 등 보안장비로 대응이 어려운 보안취약점을 초기에 확인해 개선하는 효과를 거두고 있으나 제도를 적용하기 위한 상용 도구와 진단 전문가가 필요해 금액 기준 5억 원 이상 사업에만 의무적으로 적용하는 등의 한계가 있어 이번 가이드를 배포하게 됐다는 설명이다.

앞으로 행자부는 한국인터넷진흥원과 함께 가이드에 소개된 여러 공개 소프트웨어를 활용한 진단방법을 소개하는 실습형 교육과정을 운영할 계획이다. 아울러 매년 열리는 ‘대학생 대상 소프트웨어 개발보안 경진대회’에서 활용하도록 심사기준에 반영하는 등 개발자 스스로 소프트웨어 개발보안을 적용하는 문화를 만들어 나갈 방침이다.

한편, 전자정부 시스템을 비롯해 민간기업의 보안강화를 위한 시큐어코딩 진단도구에서부터 컨설팅까지 관련 솔루션과 가이드를 한 자리에서 모두 해결할 수 있는 기회도 마련될 예정이라 주목받고 있다.

전자정부 시스템의 개선과 보안강화에 필요한 시큐어코딩을 비롯해 웹보안, 모바일 앱 보안, 네트워크 보안, IoT 보안, 개인정보보호, 문서보안 등의 정보보호 솔루션과 클라우드, 빅데이터, 모바일, 웹접근성 향상, 통신망, 문서관리 등의 정보화 솔루션들을 한꺼번에 비교·체험할 수 있는 ‘제5회 전자정부 솔루션 페어(eGISEC 2016)’가 개최되는 것. 행정자치부 주최로 오는 3월 16일부터 3월 18일까지 일산 킨텍스 전시장 4~5홀에서 열리는 이번 행사는 ‘eGISEC 2016’ 홈페이지(http://www.egisec.org/2016/)에서 사전 참관등록을 신청하면 무료로 참여가 가능하다.
[김태형 기자(boan@boannews.com)]

<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>