여러분은 웹 페이지, 모바일 앱 어플리케이션의 해킹 공격에 어떻게 대비 하시나요?
보안 강화된 안전한 어플리케이션 개발 및 운영
여러분의 어플리케이션이 보안에 취약하다고 생각해 보신적 있으신가요?
대개의 경우 어플리케이션을 개발하는 사람과 운영하는 사람 그리고 보안을 담당하는 사람이 따로 개별적으로 있거나 한 사람이 여러가지 일을 담당하기는 하지만 개발이라는 측면에서 어플리케이션은 여러가지 이유 즉 시간, 비용, 기술의 한계 등으로 인해 보안이 취약한 것이 사실입니다.
그렇다면 우리가 개발하고 운영하는 어플리케이션에 보안에 문제가 있을 경우 어떤 일이 있을 수 있을까요?
어플리케이션 또는 시스템 보안 취약점을 사전에 인지하지 못하고 적절히 대응하지 못해서 일어난 사고는 지금까지 알려진 사례보다도 훨씬 많습니다. 아래 사례는 대표적인 유출 사고입니다.
* 21세기 데이터 누출 사고 사례
1. 2017 Equifax – 사회보장번호, 생년월일, 주소 등
2. 2016 Adult Friend Finder – 이름, 이메일, 패스워드
3. 2015 Anthem – 고개 정보
4. 2014 eBay – 이름, 주소, 생년월일, 패스워드
JP Morgan Chase – 연락처, 이름, 주소, 전화번호 등
Home Depot – 고객 신용카드 정보
5. 2013 Yahoo – 3십억 계정
Target Stores – 신용카드 번호
Adobe – 사용자 정보
6. 2012 US Office of Personnel Management(OPM) – 직원 정보
7. 2011 Sony’s PlayStation Network – 플레이스테이션 계정, 사이트 다운
RSA Security – 직원 정보
8. 2008 Heartland Payment Systems – 신용카드번호 – SQL인젝션 사용
9. 2006 TJX Companies, Inc. 94 신용카드 정보
출처: www.csoonline.com
어플리케이션 보안이 중요한 이유
해커는 시스템의 취약한 부분을 파악하고 해당 취약점을 이용하여 보안 공격을 시도합니다. 시스템의 취약한 부분은 네트웍, 시스템, 데이터베이스, 응용프로그램 등 다양한 요소가 있습니다. 모두가 중요하게 다루어져야 할 부분이지만 어플리케이션은 그 특성 상 좀 더 주의를 기울여야 할 부분입니다. 아래 그림에서 보듯이 우리는 보안 대책을 겹겹이 쌓아 놓습니다. PC에 설치된 백신 프로그램, 네트웍 방화벽, 네트웍 공격을 대비한 IPS/IDS등의 다양한 대책을 세워 놓습니다. 그런데, 그림을 자세히 보시면 어플리케이션 서버는 이러한 모든 보안 대책을 통과한 맨 마지막 단에 놓여 있는 것을 보실 수 있습니다. 다시 말해서 어플리케이션에 접근한다는 것은 겹겹이 둘러쳐진 울타리를 지나서 기업의 업무 영역 깊숙이 들어왔다는 의미가 됩니다. 이러한 이유로 어플리케이션 보안이 중요하게 다루어져야 하는 것입니다.
어플리케이션 보안 대책은 어떻게 준비할까?
우리는 프로그램 개발 완료 후 프로그램이 잘 동작하는지 테스트라는 과정을 거칩니다. 보안 역시 개발된 프로그램의 보안 기능을 테스트하는 방법이 효과적으로 보안 대책을 수립하는 방안 중에 하나입니다. 문제는 그러기 위하여 우리는 보안 점검을 위한 기반 시스템 그리고 보안 전문 인력이 확보하는 노력이 필요합니다.