미국 보안기업 Palo Alto Networks의 조사에 따르면 사이버 보안 공격의 원인으로 두 번째로 많았던 것이 ‘취약성’이었습니다. 사이버 보안 위협은 항상 진화하고 있으며, 기업은 선수를 치는 것이 필수적입니다.
자사의 사이버 보안을 최신 상태로 유지하기 위한 효과적인 방법이 취약성 진단의 실시입니다. 취약성 진단이란 시스템이나 네트워크의 약점을 파악해 높은 수준의 보안을 유지하는 프로세스를 말합니다. 이번 포스팅에서는 취약성 진단의 특징이나 필요한 이유, 침투 테스트와의 차이, 진단 흐름 등에 대하여 알아보도록 하겠습니다.
취약성이란?
사이버 보안의 세계에서 취약성은 컴퓨터 시스템이나 네트워크의 약점을 가리킵니다. 시놉시스 사이버보안 리서치센터 조사에 따르면 4,400건의 테스트 중 95%에서 취약성이 발견됐습니다.
해커는 취약성을 이용하여 기업의 기밀정보를 빼내고 다크웹상에서 다른 범죄자에게 기밀정보를 판매할 위험이 있습니다. 덧붙여 취약성은 소프트웨어나 하드웨어, 혹은 인간의 행동에까지 존재할 가능성이 있어 악용되기 전에 특정하고 대처하는 것이 조직에 있어서 매우 중요합니다.
취약성 진단이 필요한 이유?
취약성 진단이란 시스템이나 애플리케이션 등 보안 취약점을 특정하고 평가하는 프로세스입니다. 취약성 평가가 필요한 이유 중 하나는 항상 사이버 공격이 고도화되고 있고 새로운 취약성이 속속 발견되기 때문입니다.
사이버 범죄자는 취약성을 이용하여 시스템에 대한 부정 액세스나 기밀 정보 절취, 악성 소프트웨어 및 기타 악의적인 소프트웨어 설치 등을 실시합니다. 도난당한 기밀정보는 다크웹 상에서 다른 사이버 범죄자에게 판매되어 개인정보 도난이나 금융사기 등 다양한 불법행위에 사용될 위험이 있는 것입니다.
취약성은 사이버 범죄자들이 기밀 데이터에 접근하여 훔쳐내기 위한 경로가 되며, 그 데이터는 다크웹에서 거래됩니다. 이러한 공격을 막고 기밀 데이터가 악용되지 않도록 하기 위해서는 기업이 시스템의 취약성을 적극적으로 특정하고 적절한 대처를 하는 것이 필수적입니다.
취약성 평가를 통해 기업은 잠재적 위협을 파악하고 취약성이 악용되기 전에 대처할 수 있게 되는 셈입니다.
침투(Penetration) 테스트와의 차이점
페니트레이션 테스트란 시스템 또는 네트워크에 대한 모의 공격을 하여 보안 대책의 유효성을 테스트하고 공격자에게 악용될 수 있는 취약성을 특정하는 방법입니다. 페니트레이션 테스트의 목적은 현실 세계 공격자가 사용하는 전술과 기술, 절차를 재현하여 조직 보안상의 약점이나 갭을 특정하는 것입니다.
취약성 평가와 페니트레이션 테스트는 모두 잠재적 보안 취약점을 특정한다는 점에서는 동일하지만 취약성 평가가 보다 수동적인 접근법인 반면 페니트레이션 테스트는 보다 능동적인 접근법이라는 차이가 있습니다.
취약성 진단의 주요 평가 대상
취약성 진단 대상으로 잘 알려진 것은 웹 애플리케이션, 플랫폼, 네이티브 앱, IoT 네 가지입니다. 여기서부터는 각 평가 대상의 특징과 취약성 진단이 중요한 이유에 대해 설명하겠습니다.
웹 애플리케이션
웹 애플리케이션은 널리 이용되고 있으며 네트워크로의 용이한 침입구가 되기 때문에 공격자에게 표적이 되는 경우가 많습니다. 웹 애플리케이션 취약점 평가를 하면 SQL 인젝션이나 크로스 사이트 스크립팅(XSS), 기타 코드 인젝션 공격 등의 취약성을 파악할 수 있습니다. 또한 웹 애플리케이션에 대한 공격 위험을 높이는 설정 오류 및 기타 문제 발견도 가능합니다.
플랫폼
플랫폼 취약성 평가는 웹 애플리케이션을 지원하는 기초 구성 요소의 취약성을 식별하는 데 도움이 됩니다. 예를 들어 웹 서버의 취약성 평가에서는 서버를 공격받기 쉬운 상태로 만들고 있는 오래된 소프트웨어나 설정을 특정할 수 있습니다.
네이티브 앱
네이티브 앱은 안드로이드나 iOS 등 특정 운영체제에서 작동하도록 설계된 애플리케이션입니다. 이러한 앱은 디바이스에 직접 설치되어 카메라나 마이크, 위치 정보 서비스 등의 디바이스 기능에 액세스할 수 있습니다.
네이티브 앱 취약점 평가는 안전성이 낮은 데이터 저장 및 불충분한 암호화, 인증 문제 등 취약성을 식별하는 데 도움이 됩니다.
IoT
IoT는 인터넷에 연결되어 서로 통신 가능한 물리적 장치나 자동차, 가전제품 등을 말합니다. IoT 기기 취약성 평가는 취약한 비밀번호나 암호화되지 않은 통신경로, 안전하지 않은 펌웨어 등의 취약성을 특정하는 데 도움이 됩니다. 또한 IoT 기기 관리 및 제어에 사용되는 모바일 앱과 웹 포털의 취약성도 발견할 수 있습니다.
주요 취약성의 종류 목록
주요 취약성의 종류와 그 특징은 아래와 같습니다.
취약성 | 특징 |
SQL 인젝션 | 공격자가 악의적인 SQL 코드를 내장하고 데이터 접근 및 애플리케이션 제어를 하는 사이버 공격. 웹 애플리케이션을 통해 실행된다. |
크로스 사이트 스크립팅(XSS) | 공격자가 다른 유저가 열람하는 웹 페이지나 애플리케이션에 악의적인 스크립트를 내장해 기밀 데이터의 도난이나 유저 세션의 탈취를 하는 사이버 공격. 사용자 입력 검증이나 출력 서니타이징이 적절하게 이루어지지 않은 웹 애플리케이션을 통해 실행된다. |
원격 코드 이그제큐션(RCE) | 공격자가 타겟 시스템 또는 애플리케이션 상에서 악의적인 코드를 실행함으로써 시스템이나 애플리케이션의 제어나 기밀 데이터를 도난하는 사이버 공격. 사용자 입력을 적절하게 검증하지 않거나 입출력 채널을 보호하지 않는 등 안전하지 않은 코딩 기법이 원인이 되는 경우가 많다. |
인적 취약성 | 물리적 기밀 정보의 도난이나 사외에서의 대화가 원인인 누설, 파손 등 인위적인 조작에 의해 야기되는 취약성. |
수동 진단과 툴을 사용한 진단의 차이
취약성 진단은 수동 혹은 툴로 실시됩니다. 두 방법 모두 장점과 단점이 있기 때문에 자사에 최적의 방법을 선택할 수 있도록 각 방법의 특징을 이해합시다.
수동 취약성 평가
수동에 의한 취약성 평가란 사이버 보안 전문가 공격자의 시점이 되어 수동으로 조사하는 방법입니다. 주로 도구와 수동 테스트 방법을 조합하여 도구가 간과할 수 있는 취약성을 식별하는 데 사용됩니다.
수동 조사는 도구 기반 평가보다 시간과 자원이 필요하지만 보다 상세하고 정확한 결과를 기대할 수 있습니다. 왜냐하면 수동 평가에서는 전문가의 지식과 경험, 직관이 사용되기 때문에 도구에서는 간과될 수 있는 취약성이나 잠재적 공격 벡터를 식별할 수 있기 때문입니다.
도구 기반 취약성 평가
도구 기반 취약점 평가는 시스템 또는 애플리케이션의 알려진 취약성과 약점을 식별하도록 설계된 자동 스캔 도구를 사용하여 실시됩니다.
도구 기반 평가는 수작업 평가보다 신속하고 적은 자원으로 실시할 수 있지만 정확성이 떨어지는 경우가 있습니다. 자동화된 도구는 데이터베이스에 등록된 알려진 취약성만 식별할 수 있기 때문에 새로운 취약성이나 미지의 취약성을 놓칠 수 있기 때문입니다.
툴베이스의 평가는 컴플라이언스 목적 등 보안 태세를 신속하고 정기적으로 평가할 필요가 있는 시스템에 권장됩니다.
취약성 진단의 흐름
취약성 진단의 흐름은 다음과 같습니다.
1. 목적의 명확화
2. 취약성 진단 서비스 선택
3) 스케줄 조정
4) 조사 실시
5. 보고 및 대책
목적의 명확화
취약성 진단의 첫 번째 단계는 진단 목적을 명확히 하는 것입니다.목적이 명확해지면 진단 대상이 되는 자산이나 진단 범위, 테스트하는 취약성의 종류 등을 특정할 수 있습니다.
취약성 진단 서비스 선택
목적이 명확해지면 취약성 진단 서비스를 선택합니다. 자사에 사이버 보안에 정통한 인재가 없으면 전문 벤더에 의뢰하는 것이 좋습니다. 서비스 선정 시 고려해야 할 요소로는 서비스의 전문성과 평판, 실적, 비용, 가용성 등을 들 수 있습니다.
스케줄 조정
전문 벤더와 취약성 진단 일정을 조정하고 자산 접근 및 네트워크 연결 등 필요 요건을 조정합니다.
조사의 실시
자동화 도구 혹은 수동 테스트 또는 둘 다 조합한 취약성 평가를 실시합니다. 평가 대상 자산에 미치는 영향을 최소화하기 위해 관리되고 구조적인 방법으로 실시해야 합니다.
보고 및 대책
조사가 완료되면 평가 결과를 문서화하여 이해관계자와 공유합니다. 보고서에는 특정된 취약성의 개요와 그 중대성 및 권장 대책이 포함되어야 합니다. 보고서를 확인하고 위험에 따라 취약성에 우선순위를 두고 신속하게 대책을 마련합시다.
정리
취약성 진단은 기업이 자사 시스템이나 네트워크에서의 보안 위험을 특정하고 사이버 공격을 사전에 막기 위해 필수적입니다. 정기적으로 취약성 진단을 실시함으로써 기밀정보 유출을 비롯한 사이버 공격 피해를 입기 전에 취약성을 완화하는 예방책을 강구할 수 있습니다.
당사는 취약성 진단과 페네트레이션 테스트를 제공합니다. 사이버 보안 전문가 귀사의 요구와 상황에 따른 취약성 진단을 제안하고 진단 결과와 대책 방안을 상세히 보고합니다.