[SW 중심시대의 보안①] ‘시큐어 SDLC’로 보안 내재화
상태바
[SW 중심시대의 보안①] ‘시큐어 SDLC’로 보안 내재화
  • 김선애 기자
  • 승인 2018.08.02 11:14
  • 댓글 0
이 기사를 공유합니다

SW 취약점 이용 공격 급증…개발·배포·운영 전 단계에서 보안 약점 점검·제거 필수

바야흐로 소프트웨어 중심 시대가 도래 했다. 디지털 트랜스포메이션은 소프트웨어를 통해 이뤄지고 있으며, 전통적인 하드웨어가 갖고 있던 IT 주도권은 소프트웨어로 넘어오고 있다. 작은 단위로 개발된 소프트웨어인 마이크로서비스가 클라우드·IoT 서비스를 주도하고 있다.

소프트웨어가 비즈니스의 중심에 서 있지만, 소프트웨어 보안은 투자의 중심에 서 있지 않아 심각한 문제를 야기하고 있다. CA테크놀로지스의 ‘소프트웨어 라이프사이클 DNA에 보안 통합하기’ 보고서에 따르면 국내 기업의 70%는 데브섹옵스(DevSecOps)를 구현하는 것이 중요하다고 인식하고 있으나, 성공적으로 도입한 기업은 15%에 불과했다.

국내 기업 대다수는 소프트웨어 개발이 성장과 확장(94%), 기업 경쟁력(91%), 디지털 트랜스포메이션(87%)을 지원한다고 답했으며, 65%는 소프트웨어와 코드 문제로 인한 보안 위협이 증가하고 있다고 동의했다. 92%는 보안을 소프트웨어 개발 과정에 내재화하는 것이 중요하다고 답했다.

공공 모바일앱 절반, 취약점 발견

그러나 많은 국내 기업이 소프트웨어 개발 과정에 보안 테스트 및 평가를 통합하는 데 시간 제약(67%), 기업 문화(65%), 예산 제약(62%) 등을 장애물로 지적했다. 특히 19%만이 기업 문화 및 프랙티스가 개발, 운영, 보안의 협업을 지원한다고 답했으며, 고위 경영진이 제품 출시 기간의 단축보다 보안이 중요함을 인지하고 있다고 답한 기업은 11%에 불과했다.

공공기관 서비스의 소프트웨어 취약점 역시 심각한 편이다. 특히 모바일앱 절반에서 보안약점이 발견됐다. 지난해 한국인터넷진흥원(KISA)이 실시한 소프트웨어 보안약점 진단 결과, 지자체 안드로이드 앱 50.7%, iOS 49.6%에서 보안약점이 발견됐다. 행정기관은 안드로이드 27.2%, iOS 25.2% 였으며, 공공기관은 아드로이드 22.1%, iOS 25.2%였다.

보안약점이 탐지된 항목을 살펴보면 오류메시지와 시스템 데이터 정보유출이 가장 많았으며, 지자체는 58.7%, 행정기관 92.2%, 공공기관 68.7%를 차지했다. 특히 지자체 모바일앱은 위변조 확인 여부 점검이 미비하다고 지적된 것이 51.4%였으며, 행정기관도 37.5%의 앱이 위변조 확인 여부 점검이 미흡했다. 소스코드 난독화 기술을 적용하지 않은 비중도 상당히 높은 편이었는데, 행정기관은 39.1%, 지자체 39.9%, 공공기관 41.8%에 달했다.

웹 애플리케이션에서 발견된 취약점은 크로스사이트스크립트(XSS)가 27.9%로 가장 많았으며, 널(Null) 포인터 역참조, 부적절한 예외처리 등이 그 뒤를 이었다. 소스코드 라인 1000개 당 보안 약점은 3개 이상 발견됐으며, 입력 데이터 검증 및 표현 42%, 에러처리 21.4% 등의 약점이 지적됐다.

SW 개발 라이프사이클에 ‘보안’ 내재화 해야

데브섹옵스는 소프트웨어 개발 단계에서부터 운영과 보안을 고려하는 개발 방법론으로, 새로운 서비스를 설계할 때 반드시 검토해야 할 사안으로 꼽힌다. 그러나 대부분의 소프트웨어 개발 과정에서 보안이나 운영상 필요한 부분을 간과하는 경우가 많다. 운영팀과 보안팀으로 분리된 조직 문화로 인한 괴리도 있지만, 타임투마켓에 맞춰 빠르게 개발해야 한다는 현실적 문제로 인해 운영상의 문제가 보안의 문제를 고려하지 않는다.

그러나 소프트웨어 개발 단계에서 보안 약점을 제거하지 않는다면 소프트웨어 운영 전반의 비용은 기하급수적으로 늘어나게 된다. NIST 연구에 따르면 설계단계에서 결함을 수정하는 것 보다, 제품을 출시한 후 결함을 수정하는 비용은 무려 30배에 이르는 것으로 나타났다.

소프트웨어 개발 단계에서부터 보안을 고려하는 소프트웨어 개발 보안은 소프트웨어 개발 라이프사이클(SDLC)에서 반드시 필요한 절차라는 뜻이다.

KISA, SW 개발 보안 지원 사업 강화

소프트웨어 보안 약점으로 인한 침해사고 사례는 수도 없이 많다. O2O 서비스 여기어때는 DB 명령어의 정상 여부를 구분하지 못해 대규모 고객정보 유출 사고를 일으켰으며, 빗썸은 사전 대입 공격에 대응하지 못해 해킹을 당했다.

조은래 KISA 전자정부보호팀 책임은 “정보보호 시스템에서 취약점을 제거하는 것이 가장 기본적인 위협 대응 활동이며, 특히 소프트웨어 개발 단계에서 보안 약점을 해결하는 것은 필수다”라며 “기업/기관은 이 점을 잘 알고 있으면서도 실천하지 못하는 현실적인 어려움이 있다. 그렇지만 더 많은 피해를 막기 위해서는 반드시 소프트웨어 개발 보안을 적용해야 한다”고 강조했다.

▲소프트웨어 개발 보안 체계(자료: KISA)

현재 공공 개발 사업에는 소프트웨어 개발 보안을 적용하는 것이 의무화 돼 있다. KISA는 소프트웨어 개발보안 적용 확산을 촉진시키기 위해 소프트웨어 보안약점 진단 서비스와 소프트웨어 개발보안 교육을 시행하고 있다.

소프트웨어 보안약점 진단원 교육과정도 실시, 관련 전문가 양성에도 힘쓰고 있다. 진단원 과정은 소프트웨어 개발과 보안 경력을 가진 사람으로, 설계/구현 보안약점 제거 여부 확인 방법 등을 5일간 40시간에 걸쳐 진행한다. 또한 소프트웨어 개발 보안 컨퍼런스와 대학생 대상 경진대회, 관련 가이드 발간 등의 사업도 전개하고 있다.

민간기업을 대상으로 소프트웨어 개발 보안 의무 적용 규제는 없지만, ISMS 인증에 취약점 점검 등의 항목이 있기 때문에 취약점을 원천 제거하기 위해 소프트웨어 개발 보안을 적용하는 것이 추천된다.

조은래 책임은 “소프트웨어에 취약점이 있으면 아무리 튼튼한 방화벽이 있어도 공격자가 뚫을 수 있다. 따라서 소프트웨어 개발 단계부터 보안을 적용하는 소프트웨어 개발 보안이 필수적으로 요구된다”며 “SDLC에 보안을 적용해야 소프트웨어 개발·운영에 필요한 제반 비용을 낮출 수 있다. KISA는 소프트웨어 개발 보안 지원과 인식제고를 위해 진단 서비스와 컨퍼런스 개최, 가이드 배포 등의 노력을 하고 있다”고 말했다.



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