Digital News/IT Trend

SVG 파일 사용시 보안 위협에 주의해야 하는 이유

김현욱 a.k.a. 마루 2023. 5. 26. 10:40

SVG 파일 사용시 보안 위협에 주의해야 하는 이유

기존의 JPG, PNG 등의 픽셀 기반 이미지 형식과 다르게 벡터 기반의 SVG 형식은 이미지를 확대하거나 축소해도 깨져 보이지 않는다는 강력한 장점을 가지고 있습니다. 하지만 SVG 형식의 이미지를 사용할 때는 보안상 주의해야 할 점이 있습니다.

필자는 해커가 SVG 이미지 파일을 어떻게 악용하여 악성코드를 퍼뜨리는지 설명하고 또한 SVG 파일을 안전하게 다운로드할 수 있는 VPN 사용법에 대해서도 소개하려고 합니다.

 

1. 해커가 멀웨어를 퍼뜨리는 방법: HTML 스머글링 

스머글링(Smuggling) 은 영어로 ‘밀수하다’라는 뜻을 가지고 있습니다. 밀수란 다른 사람들이 눈치채지 못하게 숨겨서 어떤 물건을 들여오는 행위를 일컫습니다. 고로 HTML 스머글링이란 평범해 보이는 HTML 코드 안에 악성 스크립트를 숨겨서 전달하는 것을 일컫습니다. 네트워크 보안 도구들은 정상적으로 보이는 코드 안에 악성코드가 숨어 있는지 미처 의심하지 않고 지나쳐 보내곤 합니다. 더군다나 멀웨어가 해커의 목표점인 사용자의 컴퓨터에 도달해서야 최종적으로 컴파일되는 형식이기 때문에 더 탐지하기 어렵습니다. 

SVG 이미지를 이용한 보안 공격 사례도 HTML 스머글링의 일종입니다. SVG 이미지 파일이 소스코드로 이루어져 있는 점을 악용하는 것입니다. 큐봇(QBot)이라는 멀웨어가 대표적인 사례입니다. 큐봇 설치를 위한 자바스크립트 코드를 SVG 이미지 안에 삽입합니다. 그리고 HTML 파일 안에 그 위장한 SVG 이미지를 넣어서 피해자에게 전송합니다. 그렇게 HTML 페이지를 열어본 피해자는 큐봇을 시스템으로 불러들이게 됩니다. 큐봇은 미리 심어놓은 자바스크립트를 통해 설치되며, 피해자 시스템에 기생하며 각종 피해를 입히게 됩니다.

 

2. 웹 에이전시에게 치명적인 이유

혹자는 소규모 웹 에이전시의 경우 보안에 신경 쓸 여력이 없다 항변하기도 합니다. 하지만 여력이 없다는 이유로 보안 위협을 대수롭지 않게 생각했다가는 큰 손실을 입을 수 있습니다. HTML 스머글링을 통해 들어온 멀웨어가 웹 프로젝트에 피해를 입히는 구체적인 시나리오를 설명해 보겠습니다. 

우리는 웹사이트 제작 프로젝트를 수행할 때, 여러 사이트를 돌아다니면서 참고할 자료를 찾곤 합니다. 그런 과정에서 해커가 SVG 파일에 숨겨둔 멀웨어를 다운로드하게 될 수 있습니다. 그러면 회사 내부에 그 파일을 공유하면서 한 순간에 전체 회사 시스템이 마비될 수 있습니다. 그런데 거기서 그치지 않고 해당 SVG 파일을 프로젝트 웹사이트에 이미 반영하기까지 했다면 수많은 사이트 방문자들이 악성코드에 감염될 수도 있습니다. 수 백만의 컴퓨터가 감염되어 개인정보가 유출되고, 재산상의 피해를 입게 된다면 어떤 회사라도 그 손해를 보전하기가 어려울 것입니다. 고객에게 신뢰를 잃는 것은 당연하고, 최악의 경우 폐업을 고려해야 합니다. 

 

3. 어떻게 해킹 피해를 예방할 수 있을까?

누구든 회사가 해킹 피해를 보상하느라 폐업해서 일자리를 잃는 것을 원치 않습니다. 그렇다면 웹사이트를 제작하는 디자이너와 개발자들이 충분히 경각심을 가지고, 피해를 예방해야 합니다. 아주 보수적인 보안 전문가들은 SVG 파일이 악용될 가능성이 많으므로 사용하지 말라고 하기도 합니다. 하지만 이미 실무에 SVG 파일을 많이 사용하고 있기에, 아예 사용하지 않는 것은 현실적인 대책이 될 수 없습니다. 그러면 어떻게 HTML 스머글링 피해를 입지 않으면서 SVG 파일을 업무에 활용할 수 있을까요? 

이럴 때는 보안 VPN이 대책이 될 수 있습니다. 보안 VPN은 단순히 IP 주소를 우회하고 트래픽을 암호화할 뿐만 아니라 멀웨어의 위협에서 컴퓨터를 보호할 수 있기 때문입니다. 파일이나 앱을 다운로드하기 위해 웹 서칭을 할 때 보안 VPN을 연결하는 것이 좋습니다. 프리미엄 VPN에 있는 추가 기능이 SVG 파일 다운로드 되는 중에 악성코드가 있는지 검사하여 악성 파일에 대해 경고하며, 디바이스가 감염되지 않도록 미리 차단할 것입니다. 

또한 이미지 파일을 다운받을 때 신뢰할 수 있는 출처에서만 받도록 해야 합니다. 낯선 이가 보낸 이메일 또한 경계해야 합니다. 최종 웹 프로젝트에 파일을 업로드하기 전에는 혹시나 내 시스템이 멀웨어에 감염이 되지 않았는지 두 번 세 번 확인하도록 합니다. 이렇게 하면 HTML 스머글링에 대한 걱정을 덜고 SVG 파일을 안전하게 활용할 수 있을 것입니다.

 

[외부 기고]
Kathleen Hall
프리랜서 SEO 전문가로 활동 중이며, 서로 다른 플랫폼의 여러 클라이언트에게 SEO 서비스를 제공하고 있습니다.