English

뉴스 & 이벤트

Fasoo의 새로운 소식 및 정보를 공유 드립니다.

뉴스 및 보도자료

여전히 위협받는 웹 애플리케이션, 해답은 없는가

지난 12월, 2020학년도 대학수학능력시험 성적 발표를 이틀 앞두고, 한국교육과정평가원 홈페이지의 허점을 이용해 수험생들이 성적을 미리 확인하는 일이 벌어졌습니다. 성적이 유출된 페이지는 이전에 수능을 치른 졸업생들을 대상으로 과거의 성적 증명서를 발급하는 페이지입니다. 수험생들은 이 페이지에 존재하는 파라미터 변조 취약점을 이용하여 아직 제공되지 않은 2020학년도 수능 성적을 미리 조회했습니다. 이번 일은 특히 많은 국민의 이목이 집중되어 있었던 대학수학능력시험 성적 발표와 관련된 사태였기 때문에, 이번 사고의 원인이 된 보안 취약점과 이를 이용한 공격으로부터 예방하는 방법에 대해 관심이 쏠리고 있습니다.

파라미터 변조 취약점이란?

파라미터란 클라이언트가 서버에게 작업을 요청할 때 어떤 작업이라는 것을 명확히 하기 위해 전달하는 변수 값으로, 사용자 입력 폼 등을 통해서 전달됩니다. 그러나 파라미터는 악의적인 사용자에 의해 변경될 수 있는데, 변경된 파라미터가 검증 과정 없이 처리되는 경우 이번 사태와 같이 허가되지 않은 중요 정보가 노출되는 보안 사고가 발생할 수 있습니다. 이러한 약점을 파라미터 변조 취약점이라 일컫습니다. 파라미터 변조 취약점은 기초적이고 단순한 취약점 중 하나로, 취약점으로 인한 사고 사례도 손쉽게 찾아볼 수 있습니다. 2014년 발간된 한국인터넷진흥원(KISA)의 파라미터 변조 취약점을 이용한 타인 개인정보 유출 사례 분석 및 대응방안을 보면, 이번 사태와 유사한 형태의 파라미터 변조 취약점을 이용한 회원 개인정보 유출 사례 등이 존재했음을 확인할 수 있습니다. 더욱이 파라미터 변조와 같이 외부에서 전달되는 값으로 인한 취약점의 경우, OWASP Top 10이나 전자금융감독규정 등 국내외 보안 규정과 주요 취약점 목록에서 중요하게 다루어지고 있음에도 불구하고 해당 취약점을 통한 정보 유출 사례가 또다시 발생한 것을 두고 허술한 보안 체계에 대한 아쉬움과 지적이 여러 곳에서 이어지고 있습니다.

어떻게 사전에 예방할 수 있을까?

웹 애플리케이션들이 이처럼 기초적인 취약점을 이용한 위협에 여전히 노출된 이유는 무엇일까요? 웹 애플리케이션을 개발하고 운영하는 과정에서 애플리케이션을 보호하기 위한 보안 활동들이 수행되지 않는 것은 아닙니다. 대표적인 예로, 다수의 웹 애플리케이션은 운영에 들어가기 전 웹 취약점 진단 단계를 통해 취약점을 사전에 검출하고 조치하는 과정을 거칩니다. 취약점을 진단하는 방법은 취약점 종류별로 상이합니다. 파라미터 변조 취약점의 경우, 수동으로 요청에 포함된 파라미터 값을 조작하여 허용되지 않은 권한이나 정보를 획득할 수 있는지 확인하는 방법이 사용됩니다. 이 과정에서 수많은 URL별로 포함되는 파라미터 값들을 다양한 형태로 조작하여 공격을 수행해야 하기 때문에, 제한된 시간 내에 점검을 수행하는 범위가 제한될 수 밖에 없으며 진단을 수행했음에도 불구하고 여전히 몇몇 취약점들이 잔존하여 위협에 노출되는 것입니다. 이러한 문제를 해결하기 위해 필요한 것이 자동으로 보안 취약점을 검출해주는, 일반적으로 ‘웹 스캐너’로 알려진 동적 애플리케이션 보안 테스팅(Dynamic Application Security Testing, 이하 DAST) 도구입니다. DAST 도구는 웹 취약점 분석을 위한 동적 분석 도구로서 웹 사이트에 포함된 수많은 URL들에 대해서 다양한 패턴의 공격 요청들을 자동으로 생성하며 이를 활용하여 취약점을 검출합니다. 특히 수동 진단과 비교하여 더 짧은 시간 안에 더 넓은 범위를 진단할 수 있어, 외부로부터 전달되는 모든 값들을 고려해야 하는 파라미터 변조 등의 취약점을 정확하게 진단하기 위해서는 DAST 도구의 사용이 더욱 권장됩니다.

웹 애플리케이션을 대상으로 하는 공격은 전제 해킹 공격 가운데 약 47% 이상을 차지하고 있을 정도로 비중이 가장 높습니다. 웹 애플리케이션을 개발하고 운영하고 있는 많은 곳에서는 이미 애플리케이션 보안의 중요성을 파악하고 웹 취약점 진단 등 많은 보안 활동들을 수행하고 있습니다. 그러나 사람에 의해 수행되는 보안 활동만으로는 애플리케이션의 모든 곳을 확인하기 어렵습니다. 이에 여전히 많은 애플리케이션들이 점검되지 않은 사각지대에 존재하는 취약점을 이용한 공격에 노출되어 있으며, 이러한 위협들로부터 애플리케이션을 빠짐없이 보호하기 위해서는 DAST 도구 등 자동화된 웹 취약점 분석 도구를 적극 활용하여 기존 취약점 진단 방법의 한계를 극복하고 보다 넓은 범위를 효과적으로 진단하여 보안의 사각지대를 최소화해야 할 것입니다.

>>기사 보러 가기