끊임없이 진화하는 사이버 위협 환경에서 미묘하지만 강력한 형태의 큐싱(QR 피싱의 약자)이 등장했습니다. QR 코드가 발명된 지 30년이 지났지만, 특히 QR 코드가 상태 확인, 이벤트 등록, 심지어 음식 주문에서까지 표준이 되었던 코로나19 시대 이후에도 큐싱은 여전히 심각한 위험이 되고 있습니다.
2020년부터 Cloudflare의 클라우드 이메일 보안 솔루션(이전의 Area 1)은 큐싱 공격과의 최전선에서 싸우며 최전방에서 고객을 더 잘 보호하기 위해 사전에 선제적으로 공격을 분석하고 있습니다. QR 피싱의 메커니즘을 심층적으로 알아보고, QR 코드가 공격자들이 선호하는 도구인 이유 및 Cloudflare에서 진화하는 위협에 맞서 싸우는 데 기여하는 방법을 살펴보겠습니다.
큐싱의 작동 방식
피싱과 큐싱을 사용하면 사용자의 자격 증명이 손상되거나 장치가 손상되거나 재정적 손실까지도 초래될 수 있으므로 영향은 두 경우 모두 아주 유사합니다. 피싱과 큐싱은 악의적 행위자가 악의적 첨부 파일이나 웹 사이트를 활용하여 일반적으로 액세스할 수 없는 항목에 액세스할 수 있는 기능도 제공합니다. 이 둘 사이의 차이점은 큐싱은 일반적으로 표적이 매우 구체적이며 감지되지 않도록 QR 코드를 사용하여 자체를 더욱 난독화한다는 점입니다.
피싱 감지 엔진은 피싱을 감지하려면 URL이나 이메일 내부의 첨부 파일과 같은 입력이 필요하기 때문에, 큐싱은 이러한 입력을 감지하지 못하도록 방해하여 성공을 거둡니다. 아래 예시 A에서는 피싱의 URL이 크롤링되었고, 두 번의 리디렉션 끝에 로그인 이름과 비밀번호를 복사하는 키 로깅 맬웨어 실행을 자동으로 실행하는 악의적 웹 사이트에 도달했습니다. 예시 A의 경우, 이렇게 하면 감지 장치가 명확하게 작동하지만, 예시 B의 경우에는 크롤링과 연결되어 있지 않으므로 예시 A에서 작동했던 감지 장치가 비활성화됩니다.
궁금하실 겁니다. "이상하네요. 내 휴대폰에서 해당 QR 코드를 스캔할 수 있으면 감지 엔진에서도 QR 코드를 인식할 수 있지 않을까요?" 간단히 말해서, 인식하지 못합니다. 피싱 감지 엔진은 피싱을 포착하는 데는 최적화되어 있지만, QR 코드를 식별하고 스캔하는 데는 완전히 다른 엔진인 컴퓨터 비전 엔진이 필요하기 때문입니다. 이제 QR 코드가 공격자가 선호하는 도구인 이유를 알 수 있게 되었습니다.
QR 코드가 피싱에 쓰이는 이유는?
QR 코드가 피싱 공격에 널리 사용되는 이유는 세 가지입니다. 첫째, QR 코드는 강력한 오류 수정 기능을 갖추고 있어 크기 조정, 픽셀 이동, 조명 변화, 부분 크롭, 기타 왜곡을 견딜 수 있습니다. 실제로 컴퓨터 비전 모델은 QR 코드를 스캔할 수 있지만, 이메일, 이미지, 이메일에 링크된 웹 페이지의 어느 섹션에 QR 코드가 있는지 식별하는 것은 컴퓨터에서는 매우 어려우며, QR 코드가 난독 처리되어 일부 컴퓨터 비전 모델로부터 스스로를 숨기게 되어 있는 경우에는 훨씬 더 어렵습니다. 예를 들어, 컴퓨터 비전 모델은 QR 코드를 뒤집거나, 다른 색상이나 이미지와 혼합하거나, 아주 작게 만들면 QR 코드가 있는지 식별하는 데 어려움을 겪습니다. QR 코드를 스캔하는 것은 더 어렵지요. 모든 이미지에 필터와 추가 처리를 적용할 수 있지만, 무엇을 어디에 적용할지 모른다면 QR코드 난독 해독은 계산 비용이 매우 많이 드는 문제가 됩니다. 이렇게 되면 모든 큐싱을 포착하기가 어려울 뿐만 아니라 이미지나 텍스트가 QR코드와 비슷해 보여 이메일을 빨리 받지 못하므로 배송이 지연되는 최종 사용자의 불만을 초래할 수 있습니다.
컴퓨터 비전 모델이 QR 코드의 난독화를 해제하는 데 어려움을 겪을 수 있지만, 저희는 충분한 시간과 노력을 기울이면 사람이 이러한 난독화된 QR 코드를 만날 경우 일반적으로 QR 코드를 검사할 수 있다는 사실을 경험으로 확인했습니다. 화면 밝기, 이메일 인쇄, 코드 자체 크기 조정 등 모든 작업을 수행하면 컴퓨터에서 숨겨졌던 QR 코드를 성공적으로 스캔할 수 있습니다.
믿을 수 없다고요? 컴퓨터를 위해 난독화된 QR 코드로 직접 시험해 보세요. 모두 https://blog.cloudflare.com/ko-kr/로 링크됩니다,
(Freepik의 rawpixel.com에 제공된 벽돌 벽 이미지)
위의 예시 QR 코드 중 하나를 검사했다면, 악의적인 행위자가 큐싱을 선호하는 다음 이유를 방금 증명한 것입니다. QR 코드에 액세스하는 데 사용되는 장치는 일반적으로 보안 상태가 취약한 개인용 장치이므로 악용될 가능성이 높습니다. 보안이 유지되는 기업 장치에는 일반적으로 사용자가 악의적 링크에 액세스할 때 사용자에게 경고, 중지, 샌드박스 처리하는 조치가 있지만, 개인 장치에서는 이러한 보호 기능을 기본적으로 사용할 수 없습니다. 조직의 임원을 대상으로 하는 맞춤형 QR 코드 추세가 확인되었으므로 이는 특히 우려스러운 사항일 수 있습니다.
QR 코드는 암호화된 첨부 파일, 잘 알려진 웹 사이트를 모방한 미러, 악의적인 콘텐츠가 공개되기 전에 사용자임을 증명하는 검증 등과 같은 다른 난독화 기술과 원활하게 계층화될 수도 있습니다. QR 코드는 이러한 다재다능함 때문에 이전에는 성공했지만 현재는 보안 제품에 의해 차단된 피싱 벡터에 QR 코드를 추가하여 의심하지 않는 사용자를 속이는 혁신적인 방법을 모색하는 사이버 범죄자에게 매력적인 선택이 됩니다.
Cloudflare의 보호 전략
Cloudflare는 큐싱 공격 방어의 최전방에 서왔습니다. Cloudflare에서는 다각적인 접근 방식을 채택하여, 낡고 계층화된 이메일 구성 규칙에 집중하는 대신 거의 10년 분량의 감지 데이터를 이용해 머신 러닝(ML) 감지 모델을 학습시켰으며, 다양한 선제적 컴퓨터 비전 모델을 사용하여 모든 고객이 턴키 솔루션으로 시작하도록 보장합니다.
큐싱 감지의 경우 1) QR 코드의 식별 및 스캔 2) 디코딩된 QR 코드의 분석 등 두 부분으로 나뉩니다.
첫 번째 부분은 컴퓨터 비전 모델이 실행되는 방법, 시간, 장소를 알려 주는 저희 자체 QR 코드 감지 휴리스틱으로 해결되었습니다. 그런 다음 최신 라이브러리와 도구를 활용하여 QR 코드를 식별하고 처리하며, 가장 중요하게는 QR 코드를 디코딩합니다. 사람이 QR 코드를 식별하는 것은 상대적으로 쉽지만, 컴퓨터에 대하여 난독화할 수 있는 방법에는 거의 제한이 없습니다. 위에서 제공한 예시는 실제 사례 중 일부에 불과하며, 악의적인 행위자들이 QR 코드를 빠르게 찾고 식별하기 어렵게 만드는 새로운 방법을 끊임없이 찾아내므로, 유행하는 난독화 기술에 대한 도구를 정기적으로 업데이트해야 하는 끊임없이 쫓고 쫓기는 게임과도 같은 상황이 되었습니다.
두 번째 부분인 디코딩된 QR 코드의 분석에서는 피싱에 적용하는 처리와 동일한 처리를 수행한 다음 일부 과정을 진행합니다. Cloudflare에서는 복잡한 URL을 분석해 자동 여부와 상관없이 리디렉션에서 리디렉션까지 최종 URL까지 드릴 다운하는 엔진을 보유하고 있습니다. 그 과정에서 악의적 첨부 파일과 악의적 웹 사이트를 검사하고 향후 감지에서 상호 참조할 수 있도록 그 결과를 기록합니다. 암호화되거나 암호로 보호된 파일 또는 콘텐츠를 발견하는 경우 Cloudflare에서는 해독하고 보호를 해제하는 또 다른 엔진 그룹을 활용하여 난독화된 악의적 콘텐츠가 있는지 확인할 수 있습니다. 가장 중요한 것은 저희가 문서화한 방법을 활용하는 유사한 공격을 더 효과적으로 평가하기 위해 QR 코드를 난독화하는 등 이 모든 정보를 이용해 새로운 데이터로 데이터베이스를 지속해서 업데이트한다는 점입니다.
하지만 잘 훈련된 피싱 감지 도구 제품군을 이용하더라도, 악의적인 콘텐츠는 자동화된 웹 크롤러가 악의적 콘텐츠라면 어떤 것도 식별하지 못하도록 하는 긴 리디렉션의 끝에 존재하는 경우가 많습니다. 리디렉션 사이에는 캡차와 같이 사람의 검증이 필요한 하드 블록이 있을 수 있습니다. 이로 인해 자동화된 프로세스가 크롤링하는 것이 사실상 불가능해지며, 따라서 콘텐츠를 전혀 분류할 수 없습니다. 또는 캠페인 식별 요건이 있는 조건부 차단이 있을 수 있으므로 원래 타겟의 지역 밖에 있거나 캠페인 요건을 충족하지 않는 웹 브라우저 및 운영 체제 버전을 사용하는 경우, 정상 웹 사이트를 볼 수 있지만, 타겟은 악성 콘텐츠에 노출될 수 있습니다. 저희는 여러 해에 걸쳐 이러한 검증을 식별하고 통과하는 도구를 개발했으므로 악의적 콘텐츠가 있는지 확인할 수 있습니다.
하지만 여러 해 동안 쌓아온 모든 기술에도 불구하고 최종 콘텐츠에 쉽게 도달하지 못하는 경우가 있습니다. 이런 경우에는, 다년간 스캔한 링크와 해당 메타데이터를 통해 학습한 Cloudflare의 링크 평판 머신 러닝 모델이 상당히 유용하며 QR 코드가 디코딩된 후에도 쉽게 적용될 수 있음이 입증되었습니다. 저희는 도메인 메타데이터, URL 구조, URL 쿼리 문자열, 자체 과거 데이터 세트 등의 상관 관계를 분석하여 고객을 보호하기 위한 추론을 할 수 있습니다. 저희는 또한 선제적 접근 방식을 택하여 당사의 ML 모델을 활용하여 QR 코드가 곧바로 명확해지지 않는 경우에도 발신자 간의 도메인, 감정, 컨텍스트, IP 주소, 발신자 간의 사회적 패턴 등을 철저히 조사하여 QR 코드를 어디에서 찾아야 하는지 알아냅니다. Cloudflare에서는 잠재적인 위협으로 피해를 입기 전에 해당 위협을 식별하고 무력화합니다.
창의적인 예시 및 실제 사례
Cloudflare에서는 매일 처리하는 수천 개의 QR 코드에서 몇 가지 흥미로운 동향을 볼 수 있습니다. Microsoft와 DocuSign 등 유명한 회사가 큐싱 공격을 위한 가장의 대상이 된 경우가 많았습니다. 사용자가 혼란스러워하고 사기당할 가능성이 더 높은 이유는 이러한 기업에서 실제로 합법적인 업무 흐름에서 QR 코드를 사용한다는 점입니다. 따라서 조직에서 이처럼 진화하는 위협에 대한 방어를 강화하는 것이 시급함을 알 수 있습니다.
아래에 Cloudflare에서 발견한 가장 흥미로운 큐싱의 세 가지 예를 들어 각 회사의 실제 사용 사례와 비교했습니다. 이러한 이메일에 사용된 QR 코드는 마스킹되었습니다.
Microsoft Authenticator
Microsoft는 SIM 스왑 공격을 통해 SMS MFA를 가로챌 수 있으므로 지연될 수 있고 더 안전한 것으로 간주되는 6자리 SMS 코드를 사용자의 휴대폰에 보내는 대신 MFA를 완료하는 더 빠른 방법으로 QR 코드를 사용합니다. 사용자들은 독립적으로 장치를 등록했고 이전에 오른쪽의 등록 화면을 보았을 것이므로 다시 인증해야 한다는 내용의 이메일을 받는 것이 특별히 이상해 보이지는 않습니다.
DocuSign
DocuSign은 QR 코드를 사용해 모바일 앱을 다운로드하여 문서에 서명하고, 사진을 찍기 위해 모바일 기기를 통해 신원을 확인하며, 자체 QR 코드 스캔 기능이 있는 타사 앱에 DocuSign 기능 내장을 지원합니다. 기본 DocuSign 앱과 네이티브가 아닌 앱에 QR 코드를 사용하는 일은 DocuSign을 자주 사용하는 사용자에게는 혼란스럽고 DocuSign을 거의 사용하지 않는 사용자에게는 특이한 일이 아닙니다. DocuSign 앱을 다운로드하기 위한 QR 코드는 서명 요청에 사용되지 않지만, 자주 사용하는 사용자에게는 모바일 장치에 이미 다운로드해 놓은 앱에서 요청을 여는 빠른 방법처럼 보일 수 있습니다.
Microsoft Teams
Microsoft에서는 사용자가 모바일 장치를 통해 빠르게 팀에 참여할 수 있도록 Teams용 QR 코드를 사용하고, Teams는 음성 메일에 QR 코드를 사용하지 않지만, 음성 메일 기능을 갖추고는 있습니다. 왼쪽 이메일은 Teams에서 음성 메일을 확인하라는 알림인 것처럼 보이며 오른쪽에 두 가지 실제 사용 사례가 나와 있습니다.
큐싱을 방지하는 데 사용자가 도움이 되는 방법
지속적인 큐싱 위협에 직면함에 따라 개인과 조직에서 경계를 늦추지 않는 것이 중요합니다. 100% 보호되도록 보장할 수 있는 솔루션은 없지만, 모두가 주의를 기울이면 위험을 크게 줄일 수 있으며, Cloudflare에서는 큐싱과의 전쟁에서 협력할 것을 권장합니다.
이미 Cloud Email Security 고객인 경우에는 포털 내에서 큐싱 인스턴스를 제출하면 현재 위협을 차단하고 미래 머신 러닝 모델의 성능을 향상하여 보다 선제적인 방어 전략을 수립하는 데 도움이 됨을 알려드립니다. 고객이 아니더라도 원본 큐싱 샘플을EML 형식의 첨부 파일로[email protected]으로 제출할 수 있습니다. 이메일 보안 공급자의 제출 프로세스를 활용하여 이러한 큐싱 벡터도 해당 공급자에게 알리는 것을 잊지 마세요.
큐싱과의 전쟁은 현재 진행 중이며, 지속적인 혁신과 협업이 필요합니다. Cloudflare에서는 큐싱 제출을 지원하기 위해 고객이 Cloudflare 모델에 맞춤형 피드백을 제공할 수 있는 새로운 방법을 개발하고 있으며, 큐싱을 포함한 다양한 벡터를 쉽게 추적할 수 있도록 저희 메트릭에 투명성을 추가하고 있습니다.