■ 스패로우의 독보적인 웹 취약점 분석 기술, 트루스캔(TrueScan)
웹 애플리케이션의 보안 취약점을 진단하는 방법 중 하나인 동적 분석은 실제 공격 시나리오를 자동으로 시뮬레이션하여 취약점을 발견하는 방식입니다. 그러나 동적 분석은 애플리케이션 외부에서의 공격 시도와 표면적으로 드러나는 결과만을 확인할 수 있어, 실제 공격의 성공 여부를 정확하게 판단하는 데 한계가 있었습니다. 스패로우의 웹 애플리케이션 취약점 동적 분석 도구인 Sparrow DAST에서 제공하는 트루스캔(TrueScan)은 이러한 동적 분석의 한계를 극복하기 위해 개발된 혁신적인 보안 진단 기술입니다.
트루스캔의 핵심은 런타임 분석 기술에 있습니다. 런타임 분석 기술은 애플리케이션이 실행되는 동안 내부에서 발생하는 모든 동작 정보를 수집하고 분석하는 기술입니다. 스패로우의 런타임 분석 기술은 애플리케이션의 실행 옵션, 설정과 동작하고 있는 시스템 정보뿐만 아니라 애플리케이션 내부의 함수 호출 정보(함수명, 인수, 반환값, 호출 스택) 까지도 실시간으로 수집합니다.
이러한 정보 수집은 동적 계측 기법을 통해 이루어집니다. 동적 계측 기법은 실행 중인 애플리케이션을 중단하거나 코드를 수정하지 않고도 내부 동작을 관찰하는 데에 사용하는 기술로, 애플리케이션 내부에 모니터링 코드를 삽입하여 함수 호출과 데이터 흐름을 추적하고, 필요한 경우 특정 기능의 동작을 제어할 수도 있습니다.
■ 트루스캔 동작 방식을 소개합니다!
1️⃣ 스패로우의 런타임 에이전트는 분석 대상 프로그램과 함께 실행되어 내부 동작 정보를 수집합니다. 애플리케이션이 시작될 때 애플리케이션과 함께 구동되어 동적 계측을 수행하며, Java나 Node.js 등 각 프로그래밍 환경에 맞는 전용 에이전트가 제공됩니다.
2️⃣ 런타임 에이전트가 계측한 정보는 실시간으로 취약점을 분석하는 서비스로 전달됩니다. 이 때 분석 서비스는 에이전트들이 수집한 정보를 처리하고 저장합니다.
3️⃣ 이후 분석 서비스에서는 에이전트로부터 전달받은 런타임 정보를 분석하여 실제 취약점을 탐지하고 함수 호출 구조를 추적합니다. 이 과정에서 기존의 동적 분석에서는 확인이 불가능했던 애플리케이션 내부에서 관측 가능한 공격의 성공 여부도 판단할 수 있습니다.
트루스캔의 실제 활용 사례를 살펴보면 그 효과가 더욱 명확해집니다. 예를 들어 SQL 인젝션과 같은 주입 공격이 발생했을 때, 기존 동적 분석은 웹페이지에 표시되는 응답만으로 공격 성공 여부를 판단해야 했습니다. 그러나 트루스캔은 서버 내부에서 실행된 SQL 쿼리를 실행하는 정확한 함수 호출 정보를 확인할 수 있어, 공격이 실제로 데이터베이스 계층까지 도달했는지 여부를 정확하게 판단할 수 있습니다.
■ 트루스캔을 왜 사용해야 할까요?
트루스캔은 다음과 같은 중요한 장점을 제공합니다.
1️⃣ 정확한 진단
취약점 탐지의 정확도가 향상됩니다. 실제 서버 내부의 동작을 기반으로 판단하므로 더욱 정확한 진단이 가능합니다.
2️⃣ 오탐 감소
오탐이 감소합니다. 트루스캔은 내부 함수 호출 정보를 통해 공격의 성공 여부를 확인하므로 실제 취약점 여부를 정확하게 확인할 수 있습니다.
3️⃣ 상세한 정보 제공
분석된 취약점과 관련된 상세한 정보를 제공합니다. 취약점이 발생하는 과정에서 호출된 함수의 호출 구조 정보를 함께 제공하여 보안 담당자가 취약점의 실제 영향과 발생 경로를 명확하게 파악할 수 있습니다.
웹 애플리케이션의 복잡도가 증가하고 보안 위협이 고도화되는 현대 환경에서, 트루스캔과 같은 정밀한 보안 진단 기술의 중요성은 더욱 커지고 있습니다. 스패로우는 트루스캔을 통해 기존 동적 분석의 한계를 극복하고 더욱 신뢰성 높은 웹 애플리케이션 동적 보안 진단을 가능하게 만들었습니다. Sparrow DAST를 활용해 웹 취약점을 보다 정밀하게 진단해 보세요.
