[보안뉴스 김경애] 애플리케이션 보안의 중요성이 높아지면서 관련 예산은 증가하고 있는 반면, 기업에서의 애플리케이션 보안에 대한 경영진의 인식은 아직까지 부족한 것으로 조사됐다. 보안업무의 책임범위가 넓은 데다 조각조각 분산되어 있고, 애플리케이션 계층(level)별 보안위험이 높음에도 기업 보안업무 가운데 우선순위는 낮은 것으로 드러났기 때문이다. 또한, 보안관리 프로그램은 대부분 성숙도가 낮으며, 테스트 역시 제대로 시행되지 않고 있는 실정이다. 개발자들의 부족한 지식과 역량도 애플리케이션 보안에 있어 내부장벽으로 작용했다.

▲애플리케이션 보안 위험관리에 관한 인식(출처: Ponemon Institute 연구 보고서)
하나, 기업의 애플리케이션 보안에 대한 경영진 인식 부족
Ponemon Institute 연구보고서에 따르면 미국 내 기업의 애플리케이션 보안담당자 630명을 설문조사한 결과 69%의 응답자는 현재 사용 중인 모든 애플리케이션과 데이터베이스에 대해 파악하지 못했다고 응답했다.
이는 응답자 대부분이 다른 보안 영역보다 애플리케이션 보안을 달성하기 더 어렵다고 생각하는 주요 이유 중 하나다.

▲애플리케이션 보안 위험 관리 프로세스 적용 조사
둘, 애플리케이션 보안 책임 분산
이어 37%의 응답자는 기업에 위험관리 프로세스가 없거나(28%) 임시적인 위험관리 프로세스만 있다(9%)고 응답했다.

▲애플리케이션 보안 담당 조사
24%의 응답자는 애플리케이션 보안을 각 현업 부서가 담당한다고 응답했지만, 또 다른 24%의 응답자는 CIO 또는 CTO가 담당한다고 응답했다. 20%의 응답자는 여러 사람이 애플리케이션 보안을 담당한다고 응답했다. 소프트웨어 개발 책임자가 애플리케이션 보안을 담당한다고 응답한 인원은 15%에 불과했다. 이는 애플리케이션의 보안책임이 기업 전체에 넓게 분산되어 있다는 의미다.

▲애플리케이션 보안 효과가 발휘되지 못하는 이유
이처럼 기업의 리더들은 애플리케이션 보안위험을 과소평가하고 있으며, 60%의 응답자들은 애플리케이션과 연관된 위험의 수준을 경영진이 이해하도록 해야 하는 어려운 과제에 직면해 있는 것으로 조사됐다.
셋, 기업 보안의 우선순위에서 밀려

▲애플리케이션 보안 위협 환경
더욱이 애플리케이션 보안 위협 환경은 날이 갈수록 발전하고 있는 반면, 공격 방지의 우선순위는 낮은 것으로 조사됐다. 최상위 애플리케이션 보안위험 관리 목표 3개 중에 애플리케이션 공격 방지가 포함되어 있다는 응답자는 23%에 불과했다.

▲애플리케이션 보안위협 조사
응답자들은 애플리케이션 계층이 가장 취약하다고 생각했으며 47%의 응답자는 SQL 인젝션을, 45%의 응답자는 교차 사이트 스크립팅(XSS)이 중대한 위협이라고 응답했다. 또한, 47%의 응답자는 애플리케이션 보안위험이 증가하고 있거나 매우 증가하고 있다고 응답했으며, 또 다른 40%의 응답자는 위험이 동일한 수준을 유지하고 있다고 응답했다.
넷, 보안관리 프로그램, 대부분 성숙도 낮아
애플리케이션 보안에 가장 필수적인 중요한 통제는 △전사적인 애플리케이션 보안 상태에 대한 가시성 제공 △발생 가능성이 가장 크며 위해성이 가장 높은 데이터 보안 침해를 방지하기 위한 자원 할당 △비즈니스 위험 및 전략에 맞춰 테스트 및 문제 해결에 대한 우선순위 설정이다. 또한, 중요하지만 고려되지 않는 통제 활동은 △애플리케이션 보안목표 달성에 대한 진척도를 측정하는 활동 △기업의 전반적인 위험상태를 모니터링하는 활동이다.

▲애플리케이션 보안 위험 관리
애플리케이션 보안 위험관리 프로그램은 대부분 미성숙한 상태다. 20%는 자신의 기업이 보안 위험관리 프로그램을 시행하지 않는다고 응답했으며 25%는 대부분의 프로그램 활동이 계획 또는 배치되지 않았다고 응답했다. 자사 프로그램이 성숙한 상태로 임무를 모두 완수하고 있다는 응답자는 11%에 불과했다.

▲애플리케이션 테스트
애플리케이션 테스트 역시 중요하지만 시행되지 않고 있는 것으로 드러났다. 35%는 어느 것도 시행하지 않는다고 답변했다. 테스트를 시행하는 경우, 39%의 응답자는 정적 애플리케이션 보안 테스트를 이용했으며, 36%는 동적 애플리케이션 보안 테스트를 적용했다.
그럼에도 취약성이 있는 애플리케이션과 연관된 위험을 해소하는 기업은 소수에 불과한 것으로 드러났다. 거의 절반에 달하는 48%는 취약성이 있는 애플리케이션과 연관된 위험을 해소하기 위한 단계를 실행하지 않고 있다고 답했다. 가장 일반적으로 실행되는 단계는 코딩 프로세스를 보호하는 방법에 대한 교육을 개발자가 반드시 받도록 하는 것이나 주요 문제를 처리하는 코드 라이브러리나 템플릿을 제공하는 것 등이다.
다섯, 애플리케이션 개발자의 지식 및 역량 부족이 내부장벽
마지막으로 애플리케이션의 보안 달성을 위해서는 개발자의 스킬이 중요한데, 73%의 응답자는 애플리케이션 개발 라이프사이클 내에서 중요 취약성을 처리하는 데 필요한 지식이나 스킬이 자사 개발자에게 부족하다고 응답했다. 또한, 50%는 개발자가 보안을 새로운 애플리케이션의 릴리스에 대한 방해물로 여긴다고 생각했다.

▲애플리케이션 보안달성에 있어 내부장벽 조사
애플리케이션 보안에 영향을 미치는 또 다른 문제로 70%의 응답자는 자원의 부족을 꼽았다. 또한, 애플리케이션 개발 라이프사이클의 초기 단계에서 중요 취약성을 처리하는 것이 가장 효과적이라는 점을 자신의 기업이 인지하고 있다고 응답한 보안담당자는 35%에 불과했다.
비즈니스 애플리케이션은 보호해야 할 가장 중요한 항목이지만, 충분한 자원이 할당되지 않고 있는 것이다. 응답자들은 평가해야 할 가장 중요한 항목이 비즈니스 애플리케이션 보안 위험이라고 응답했으며, 기능적 복잡성에 따른 위험이 그 뒤를 이었다.
데이터 보안 침해 및 지적재산 손실에 대한 우려로 인해 특정 속성 평가에 대한 중요성이 증가하고 있다. 따라서 기업에서 애플리케이션 보안을 위해서는 다음과 같은 사항을 준수하는 것이 바람직하다.
1. 애플리케이션 자산의 자원 명세를 작성한 후, 애플리케이션 자산이 비즈니스에 미치는 영향을 평가해 전사적인 애플리케이션 보안 상태의 가시성을 확보해야 한다.
2. 비즈니스 위험 및 전략에 맞춘 테스트와 문제 해결의 우선순위를 설정해야 한다. 애플리케이션, 개발 팀 및 유지보수 담당 현업 부서 등을 포함한 사내 모든 애플리케이션의 중요 속성을 파악하는 데 이용될 수 있는 애플리케이션 프로파일 템플릿을 작성해야 한다.
3. 발생 가능성이 가장 크며 위해성이 가장 높은 데이터 보안 침해를 방지하기 위한 자원을 할당해야 한다. 특히, 개인식별 정보(PII) 및 가치가 높은 지적 재산을 이용하거나 처리하는 애플리케이션은 위험 평가, 테스트 및 문제 해결에 대해 높은 우선순위가 설정되어야 한다.
4. 애플리케이션 보안 목표에 대한 진척도를 측정해야 한다. 이러한 진척은 기업의 전체적인 위험 상태를 향상시키는 활동 및 비즈니스 위험을 줄이는 데 가장 큰 영향을 미치는 곳에 자원을 할당함으로써 이루어진다. CEO 및 임원진이 기업에 대한 잠재적인 위험을 이해하도록 노력하면, 애플리케이션 보안 위험을 과소평가하는 임원에 의해 발생하는 문제를 극복할 수 있다는 것이다.
5. 기업의 전체적인 위험 상태를 지속적으로 모니터하고, 보안에 대한 추가적인 투자를 통해 위험을 추가로 줄일 수 있는 영역을 파악해야 한다.
6. 보안 이니셔티브가 단순히 IT 프로젝트가 되지 않도록 하려면, 애플리케이션 개발팀과 위험관리팀이 기업의 애플리케이션 보안 이니셔티브에 효과적으로 참여하도록 해야 한다. 이러한 협업은 개발 프로세스 상에서 최대한 초기에 진행되어야 하며, 업데이트된 정보를 경영진에 정기적으로 제공해야 한다.
7. OWASP 등에서 공개하는 위협 데이터의 검토를 통해 개발자, 사용자 및 임원진을 대상으로 가장 중대한 위협에 관한 교육을 시행해야 한다. 개발자, 사용자 및 임원진의 지식이 증가할수록 애플리케이션에 대한 위험을 줄일 수 있다.
[김경애 기자(boan3@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>